#App::Alice an Altogether Lovely Internet Chatting Experience ##SYNPOSIS Alice require perl 5.10. First time: $ perl Makefile.PL $ sudo make (this will install dependencies from CPAN) $ sudo make install $ alice *or* if you wish to avoid installing all of the dependencies, you can extract your platform's extlib archive, and run alice from the bin directory. $ tar -xvzf extlib-osx-snow-leopard.tar.gz $ ./bin/alice You can view your IRC session at: http://localhost:8080/view ##DESCRIPTION Alice is a browser-based IRC client that can be run locally or remotely. The alice server maintains a 100 message buffer for each channel, so any time a browser connects it is sent a recent backlog. This allows the user to close their browser while alice continues to collect messages. The effect is similar to irssi+screen, but viewed in the browser. Alice's built in web server maintains long streaming HTTP responses to each connected browser. It uses these connections to push messages to the browsers in realtime. Sending messages or commands is done through a HTTP request back to alice's web server. ##USAGE Installation will make available a new `alice' command. Run this command to start the server. Open a browser and connect to the URL that was printed to your terminal (likely http://localhost:8080/view). A small gear icon in the bottom right corner of the page will bring up the connection configuration window. Configure any number of connections, and you will be automatically connected after clicking save. ##COMMANDS ###/join $string Takes a channel name as an argument. It will attempt to join this channel on the server of the channel that you typed the command into. ###/part This will close the currently focused tab and part the channel. Only works on channels. ###/close Closes the current tab, even private message tabs. If used in a channel it will also part the channel. ###/clear This will clear the current tab's messages from your browser. It will also clear the tab's message buffer so when you refresh your browser the messages won't re-appear (as they normally would.) ###/query $string Takes a nick as an argument. This will open a new tab for private messaging with a user. Only works in a channel. ###/whois $string Takes a nick as an argument. This will print some information about the supplied user. ###/quote $string Sends $string as a raw message to the server. ###/topic [$string] Takes an optional topic string. This will display the topic for the current tab. If a string is supplied, it will attempt to update the channel's topic. Only works in a channel. ###/n[ames] This will print all of the nick's in the current tab in a tabular format. ###/me $string Sends $string as an ACTION to the channel ##NOTIFICATIONS If you get a message containing your nick, and no browsers are connected, a notification will be sent using either Growl (on OS X) or libnotify (on Linux.) Alice does not send any notifications if a browser is connected (the exception being if you are using the Fluid SSB which can access Growl). ##RUNNING REMOTELY Currently, there has been very little testing done for running alice remotely. So please let us know how your experience with it is. ##MOBILE INTERFACE Surprisingly, alice works very well in Mobile Safari (the browser used by the iPhone.) It still needs a little work to be fully functional, though. Any help in this area would be much appreciated. ##AUTHORS Lee Aylward Sam Stephenson Ryan Baumann Paul Robins ##COPYRIGHT Copyright 2009 by Lee Aylward This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.