ezbounce v2.0 Chat Logging System -------------------------------------------------------- Last Updated: $Date: 2008-04-09 23:06:07 -0500 (Wed, 09 Apr 2008) $ 1. Introduction ezbounce can log private and channel messages while you are logged onto IRC. You can have chats logged during your entire time on IRC, or just while detached. You can control which channels get logged, and which don't, and whether to store logs in their own files, or in a combined one. When you want to see your log files, ezbounce can DCC Send them to you or display them directly via a DCC Chat. 2. Differences from Earlier Versions The chat logging system has changed quite a bit since ezbounce 1.0. The biggest difference is the addition of the Virtual File System (VFS), which provides a common location to store chat logs and other files for users of the proxy. Configuring logging preferences is also simpler now. For example, instead of the cryptic codes that were used to set options, more friendly names such as "log-timestamps" are used. Details are described below. 3. User Account Configuration A user's account must be configured to permit chat logging. There are a few options which control this in the configuration file. set enable-vfs-access <0|1> First and foremost, the user must have access to the VFS, since that is where logs get stored. For information on how to setup the VFS, please read the "VirtualFileSystem.txt" file in this directory. set enable-chat-logging <0|1> Setting this to 1 allows the user to use all chat logging features. set enable-per-channel-logging <0|1> Setting this to 1 allows storing of channel logs in their own files. set enable-compression <0|1> If enabled, the user is permitted to automatically compress his logfiles (in gzip format). The logs also get DCC sent to the user in gzip format. Note that the proxy must be compiled with support for the Boost IOStreams library for compression to work. 4. Sample User Configuration Below is a user "bob" who is permitted to use all chat logging features. user "bob" { set enable-vfs-access 1 set enable-chat-logging 1 set eanble-per-channel-logging 1 set enable-compression 1 # # ... other options ... } 5. Logging Related User Preferences Once a user is permitted to use the logging features, he must set some preferences to enable logging. These preferences are set via commands issued from the user's IRC client. For more details about how the User Preferences system works, please see the "UserPreferences.txt" file in this directory. * IRC Network / Server -level Options /ezb set [target] enable-private-logging Enables logging of private chats for the target IRC server or network. If no target is specified, the option sets the default behavior on any IRC server. /ezb set [target] compress-private-log Enables on-disk compression of the private log. * Channel-level Options NOTE: /ezb set [target] enable-logging If on, the target channel is logged. /ezb set [target] log-detached-only If on, the target channel is ONLY logged while DETACHED. /ezb set [target] log-own-file If on, the target channel's log gets stored in its own separate file. /ezb set [target] compress-log Enables on-disk compression of the target channel's log. 6. Examples Here are some examples of user preferences that can be set. Recall that these are configured by the users themselves, through commands sent from their IRC clients. These will likely need to be prefixed with `/quote ezb'. This turns channel logging on by default: set enable-logging on (the following command is identical) set channel default enable-logging on This turns channel logging on only for #sports: set channel #sports enable-logging on This set of commands turns logging on for all channels, but logs EFNet's #sports to its own file (everything else gets put into a combined log file) set enable-logging on set log-own-file off set network efnet channel #sports log-own-file on This set of commands enables, by default, chat logging for all channels while detached only, and in one combined log file. However, EFNet #sports gets its own file and is logged full time: set enable-logging on set log-detached-only on set network efnet channel #sports log-detached-only off set network efnet channel #sports log-own-file on 7. Where are my Logs? Your chat logs will be stored in the Virtual File System in the 'logs' subdirectory of your home directory. They will be organized by IRC network and type (channel or private). For example, user "bob" would have his log files stored in a directory setup like this: /home/bob/logs/efnet/channel/#sports.log /home/bob/logs/efnet/channel/channel.log /home/bog/logs/efnet/private/private.log /home/bog/logs/undernet/channel/channel.log /home/bog/logs/undernet/private/private.log 8. Downloading Log Files Log files can be downloaded using the VFS 'file get' command. Here's an example for user "bob": /ezb file get /home/bob/logs/efnet/channel/channel.log ezbounce will then send him the log file via DCC Chat. Try 'file help' for more details. TODO: expand this section. 9. Viewing Log Files ezbounce also lets you view log files via DCC Chat. Use the 'file view' command to do this. TODO: expand this section. 10. Deleting Log Files Files may be removed from the proxy by using the 'file rm' command. 11. Other Notes * Control Codes Log files are stripped of control codes, such as Bold, Underline and Reverse. Some attempt is made to strip mIRC color codes; however, the "standard" for mIRC color coding is ambiguous and certain complicated color codings may not get removed. There is also no support for stripping ANSI color codes at the moment. * Private Logging Currently private logging can only be enabled full time; it cannot be set "detached only" like channel logging can. Private logs will also always contain timestamps and full addresses in the messages. There is currently no way to disable this.