App::Alice(3pm)

πŸ“¦
version 0.19 Β· 3 versions
, in debian bookworm, ubuntu jammy

✨ NAME ✨

Heyyy bestie πŸ¦‹ okay so this is App::Alice(3pm), which is part of the User Contributed Perl Documentation πŸ“š and honestly? It's giving everything. Its name is App::Alice, short for an Altogether Lovely Internet Chatting Experience πŸŒΈπŸ’…

✨ SYNPOSIS ✨

Literally just type this and you're in 🧚

arthur:~ leedo$ alice
Location: http://localhost:8080/

✨ DESCRIPTION ✨

Alice is an IRC client that you use in your web browser 🌈 Lowkey genius: she runs in the background keeping your connections alive and collecting messages 🫢 When a browser connects, it shows the 100 most recent messages for each channel, then updates with new ones as they roll in ✨

Alice also logs messages to an SQLite database πŸ“š and you can search those logs through the web interface πŸ”

✨ USAGE ✨

Installing adds a new alice command that starts the alice server πŸŽ€ Run it and it'll start the daemon and print the URL to load in your browser πŸ“

✨ COMMANDLINE OPTIONS ✨

  • -d, --debug β€” Prints extra debug info. Super useful for development, or for figuring out what's gone wrong πŸ™ˆ
  • -p, --port β€” Changes the port the HTTP server listens on. The default is 8080 πŸ”Œ
  • -a, --address β€” Changes the IP address the HTTP server listens on. The default is 127.0.0.1, which means alice only accepts local connections unless you say otherwise πŸ”’ If you want to connect remotely, switch it to the IP you want to listen on, or use 0.0.0.0 to listen on all addresses 🌍

✨ CONFIGURATION ✨

Most of alice can be configured through the web interface πŸ› οΈ There are two windows for this: Connections and Preferences. To pull either one up, click the gear icon in the bottom right hand corner of the page βš™οΈ

This should bring up the new window πŸͺŸ Heads up, though: some browsers (specifically Chrome) block this popup by default πŸ™… If it doesn't show up, make sure you allow popups!

✨ CONNECTION WINDOW ✨

The Connection window is where you add or remove servers πŸ”— It'll feel super familiar if you've ever used an IRC client (and I'm assuming you have, bestie πŸ’œ)

The only real difference is the "Avatar" field πŸ‘€ In reality, this field just sets the realname. Alice abuses this field to get avatars for users 😀 If a user has an image URL or an email address as their realname, alice will show the image next to their messages πŸ–ΌοΈ You can turn this off in the Preferences window.

✨ PREFERENCES WINDOW ✨

The Preferences window is for settings that aren't tied to a specific connection πŸ’… You can toggle avatars, timestamps, and notifications on or off, and you can edit a list of highlightable terms ✨

✨ HTTP AUTHENTICATION ✨

Some config options don't have a UI yet πŸ₯Ί The biggest one is HTTP authentication. If you want to use it, you'll have to edit your config file by hand. You'll find it at ~/.alice/config πŸ“

The config is just a perl hash 🧁 So if you know perl, it won't be too intimidating. If you don't know perl, sorry! :)

You'll need to add user and pass values to the auth hash. Your section of config might look something like this:

'auth' => {
  'user' => 'lee',
  'pass' => 'mypassword',
},

✨ COMMANDS ✨

  • /j[oin] [-network] $channel β€” Takes a channel name plus an optional network flag. If you don't give a network flag, it uses the network of the current tab πŸ¦‹
  • /close β€” Closes the current tab. If you use it in a channel, it'll also part the channel πŸ‘‹
    • /wc and /part are aliases for /close πŸ’–
  • /clear β€” Clears the current tab's messages from your browser. It also clears the tab's message buffer, so refreshing won't bring them back 🧹
  • /msg [-network] <nick> [<msg>] β€” Takes a nick and an optional network flag. No network flag? It uses the network of the current tab. A third argument can hold the message text. If you skip the message text, you'll get a blank tab opened for you πŸ’Œ
    • /query is an alias for /msg 🫢
  • /whois [-force] <nick> β€” Takes a nick and an optional force flag, then prints some info about that user πŸ‘€ If you add the force flag, the info gets refreshed from the server πŸ”„
  • /quote <command> β€” Sends a string as a raw message to the server 🧾
    • /raw is an alias for /quote ✨
  • /t[opic] [<topic>] β€” Takes an optional topic string and displays the topic for the current tab πŸ“£ If you supply a string, it'll try to update the channel's topic. This only works in a channel πŸ’…
  • /n[ames] [-avatars] β€” Prints a table of all the nicks in the current tab πŸ“‹ Add the optional avatars flag to include avatars πŸ–ΌοΈ
  • /me <action> β€” Sends a string as an action to the channel 🎭 For example, e.g.:
* lee hits clint with a large trout
  • /w[indow] <number> β€” Focuses the tab number you give it. It also accepts next or prev πŸƒβ€β™€οΈ The space after the w can be left out, so /w4 focuses window 4 πŸŽ€
  • /connect <network> β€” Connects to a network. The network has to be the name of a server from the Connections window πŸ”Œ If you're already connected, it does nothing πŸ™ƒ
  • /disconnect <network> β€” Disconnects from a network. Same rule: the name has to be a server from the Connections window πŸšͺ This also stops any reconnect timers for that network ⏰
  • /ignore <nick> β€” Ignores any nick that matches the one you give it, across all networks πŸ™ˆ
  • /ignores β€” Lists all active ignored nicks πŸ“œ
  • /unignore <nick> β€” Unignores a nick 🫠

✨ NOTIFICATIONS ✨

If someone says your nick while no browsers are connected, you'll get a notification πŸ”” It uses Growl (if you're running OS X) or libnotify (on Linux) 🐧

You can add extra patterns to highlight in the Preferences window πŸ’œ

If you're using Fluid.app (a SSB for OS X) or Chrome, you can also get notifications when the window is unfocused πŸͺ„

✨ MOBILE INTERFACE ✨

Alice has an iPhone style sheet πŸ“± It may work in other mobile browsers too. Any help or bug reports would be sooo appreciated πŸ₯Ή

Copyright 2010 by Lee Aylward <leedo@cpan.org>

This program is free software πŸ’– You can redistribute it and/or modify it under the same terms as Perl itself 🧚


And that's the tea, bestie 🍡✨ This page came from perl v5.26.2, dated 2018-05-07, under the name App::Alice(3pm). Periodt! πŸ’…πŸ¦‹

πŸ“¦ where this page comes from