rbFriends beta 4 README ======================= This is a little app will tell you whos logged into redbrick and send alerts when your friends log in or out. Its fully customisible: you can create filters, customise alerts, edit your .friends file, set update period etc. By the use of the SysTray library for Java, you can run the rbFriends in your system tray. Please report any potential bugs or problems, suggestions or comments to me. Thanks. Mark email: cammy at redbrick dot dcu dot ie web: http://sw.thedeadone.net/rbFriends http://www.redbrick.dcu.ie/~cammy/sw/rbFriends How To Run ---------- To use rbFriends you'll need to have the latest version of the Java runtime installed (at least version 1.4). You can download it and install it at [http://java.sun.com/getjava/download.html] for your os. Extract the contents of rbFriendsBeta3.zip locally: in windows use something like winzip, in linux use the command unzip etc.) In windows at least, you can then simply click on the rbFriends.jar file to run. Otherwise you run it from a shell by typing "java -jar rbFriends.jar". It should be fairly intuitive but some notes about usage are below. Licenses -------- This is released under the GNU GPL as free software. The full source is avaliable to download from [http://www.redbrick.dcu.ie/~cammy/sw/rbFriends]. Icons are original artwork and are copyright of myself, Mark Cunningham 2004. Mindterm is used as the underlying mechanism for communication with redbrick's SSH server. The source for mindterm is avaliable from [http://www.appgate.com/mindterm/]. SysTray for Java is used to allow rbFriends to sit in the System Task Tray. This is under the GNU LGPL license. The source is avaliable from [http://systray.sourceforge.net/]. Features ======== - Connects and disconnects from redbrick. - Downloads user information. - Downloads .friends file and can upload any changes. - Auto-updates every few minutes which is customisable. - Alert popup that tell you when friends log in or log off which is also customisable. - Can sit in the system tray. - Use installed java look and feels. - Transparent dialogs. This app was designed to work with Redbrick [http://www.redbrick.dcu.ie]. This means it only works on SSH (not on telnet). It should work on other servers but this has not be tested. It has also only be tested on Windows 98, 2000 and XP but it should work on any Java supported platform. If you do try running it on other servers or other platforms, give me a shout so I know it works. Notes ===== UI (User Interfaces) should be intuitive or they are useless so I'm not going to state the obvious about how to use rbFriends except for some notes about hidden behaviour. rbFriends works by logging on, doing some stuff and logging off every X seconds. Thats the way it works. You can set rbFriends not to automatically do an update so you can update when you need to update. The table in the main window that lists all the users once you've successfully connected has a popup menu that allows you to customise the columns shown, the sort order and the column order. Alerts (which are totally customisible via File > Settings... menu) can be setup with a timeout. The timeout can be disabled by simply clicking anywhere on an alert dialog when its visible. The core of rbFriends uses User Filters that filter the list of users. These same filters can be used to control user alerts (i.e. control what users they show info about ex. only your friends). The UI for User Filters isn't brillent but it is functional. Transparency Mode is a bit of an experiment and isn't perfect. There is some help in the settings dialog. You must have the correct offsets to make it run semi-perfectly (in WinXP this is something like X offset of 4 and Y offset of 30). Contained within this release ============================= README - This file your reading COPYING - GPL License rbFriends.jar - The actual java application systray4j.jar - Jar file for SysTray systray4j.dll - Windows DLL need by SysTray to work in Windows Generated files =============== rbFriends.log - Debug log produced during application execution ssh2.log - SSH2 Libraries debug log produced during ssh2 comms .friends - Produced when uploading a new .friends file to your a/c rbFriends.properties - Custom settings saved Known Bugs and Issues ===================== - Alerts can not be made "always on top" This is not possible in the current version of java but is a promised feature in java 1.5. It seems though that if you have rbFriends in your system tray, the alert dialogs always popup on top (?). - In windows, if alert dialog is set to position "bottom", it will appear under the taskbar. This means you can't see the "close" button. It can probaly be fixed with some windows code but I'm not particularly interested in doing that. - Only works on SSH. Does not support Telnet. Sorry. Just too damn lazy to support this. Telnet should be even simplier than SSH. Anyway you should be using SSH! - Inverse User Filter and Multiple User Filter can only use filters that were previousily created. i.e. Filters created after a Inverse User Filter cannot be used in that Inverse User Filter. This is an implementation side-effect rather than a bug. I may fix it some day in the future. - Sometimes changing Look and Feel causes the UI to go funny. Easily fixed by exiting the app and restarting. No plans to fix this. - Sorting on the Idle column in the table doesn't sort correctly. This is because the Idle values are strings rather then numbers. No plans to fix this. - Order of columns is forgetten when removing or adding columns Just too lazy to bother fixing this. - The "transparent" image sometimes gets a "shadow" of itself. This can be fixed by having the correct offsets and moving the dialog around a few times. The transparent stuff is a bit of an experiment. - When in transparent mode, the dialog sometimes keeps "flashing". This is because it hides the dialog to get a "screenshot" of underneath. This can be improved by either disabling "Show Windows Contents When Moving" (in Windows only) or by enabling "Drag Check" in rbFriends settings. History ======= Ver. Beta 1 ----------- (30th September 2003) + Connects and disconnect. + Get users online. + Get/Set .friends info. + Update friends info. + Update every X minutes. + Display User information with filters. + Customisable Position Alerts Dialog. Ver. Beta 2 ----------- (14th November 2003) + Settings saved and restore but no UI. + Customisible servers. + Customisible User Filters. Ver. Beta 3 ----------- (1st August 2004) + Settings UI. + Menu restructored. + .friends Editor. + Source code now uses ANT (see README_SRC). + Use System Tray in Windows (and possible in KDE -- untested). + Edit User Filters UI. + Better GUI including UI to change L&F. + Customisible text of logon and logoff alerts. + Customisable table columns. + Added GPL license Ver. Beta 4 ----------- (29 August 2004) + Test mode (commandline testmode). + Changed default server (login.redbrick.dcu.ie instead of carbon). + Transparent alerts. + Some new targets for ANT. + Tidy up of some of the code (namely cammy.utils, cammy.std and cammy.dev). Ver. Beta X ----------- (Never?) Ideas and possibilities for improvements. [ ] Tidy up the code (i.e. javadoc) [ ] Storing settings in your redbrick a/c. [ ] Support Telnet connection [ ] Custom Alerts (such as new mail, system alert etc.) [ ] Run remote or local command utility [ ] "Hey" sending and recieving [ ] New Hardcoded Filters [ ] Committee [ ] Admin [ ] Soc [ ] Associate [ ] Redo Filter UI [ ] Regex/* [ ] More like "mail filters" such as Thunderbird (model is there, ui is not!) [ ] Using javassl.org instead of mindterm. Javassl is GPL while mindterm isn't (but I can't get it to work!). [ ] Multiple and Inverse User Filters can use filters created later [ ] Make optional to show countdown on Alert dialog ------------------------------ This file is part of rbFriends rbFriends is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. rbFriends is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with rbFriends; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Copyright 2004 Mark Cunningham, http://sw.thedeadone.net/rbFriends