tkbroadcast version 2.1 ----------------------- Ethan Gold (etgold@cs.vassar.edu), March 1997 http://www.cs.vassar.edu/~etgold/ (version 1.0 Jan-May 1996, unreleased - be glad) (disclaimer follows) Tkbroadcast is an Xwindows based messaging utility designed to provide the funtionality of broadcast on the Apple Macintosh. While appletalk broadcast is available for Unix, it isn't as slick as theMac version, and it requires appletalk. If you are mainly interested in messaging between unix workstations, then tkbroadcast is for you! Written entirely in standard tcl/tk, tkbroadcast should be highly portable - EVEN to the Mac and Windows, and since it uses IP instead of a proprietary LAN protocal, it should also work across the internet. NOTE: a major overhaul was done for 2.0. Please read the changes section towards the end of this document if you are upgrading from an earlier version. REQUIREMENTS: * tcl/tk versions 7.5 and 4.1 or greater RECOMMENDATIONS: * GNU date since I rewrote version 2.0 under Linux INSTRUCTIONS: Edit the top of the script to point to the copy of wish on your system. Copy the tkbroadcast scripts into a directory in your PATH. I recommend the following link command: ln -s tkbroadcastc.tcl tkbc Create a .tkbcrc file in your HOME directory and follow the sample .tkbcrc file format. The only requirements are the port number and your name. Actually you might now be able to create this initial file entirely from within tkbc. Receipient addresses will be added from within the tkbc interface. Start tkbc. You will only receive messages when tkbc is running! This is a change from earlier versions which used a seperate daemon process to handle incoming messages. The text entry box in tkbc lets you spcify a machine and port directly instead of having to read it out of your .tkbcrc file. Make an entry for yourself and try sending yourself a message by selecting your name and clicking "send" or by double-clicking your name in the listbox. All the information stored in the resource file ~/.tkbcrc SHOULD be manageable from the GUI. I recommend running tkbc from your .xinitrc file or whatever file you use to set up your X clients. Use the -iconic command line option to start tkbc iconified to avoid clutter. The include pixmap tkbroadcast.xpm is the original icon for Macintosh Broadcast by Joachim Lindenberg. I use add and entry for tkbc in my window manager resource file that uses this icon. BUGS: * Send-to-all doesn't work quite right and is not really documented * As yet undiscovered new "features" that may have appeared in the overhaul * Changing Own Info does not release the old port - instead tkbc will listen on BOTH ports. FEATURES: * Files can be inserted into outgoing messages * Keypad Enter in the message box will send an outgoing message just like in the Mac version. * Excepting firewalls and other obstacles, tkbroadcast should work across the internet. * On the fly address and personal info management * Incoming messages can be saved * Multiple compose windows FUTURE: * magic cookie based "receiver off" function like appletalk broadcast - keeps out all messages not from conversations initiated by you * File browser for "insert file" on outgoing messages and file browser and save funtion for incoming messages * Personalized Icons? * implement multiple receipient sending fully (in the works) CHANGES: since 2.0: * added -iconic command line option to start iconified * added -version command line option * squashed changing Own Info bug, but there's another * squashed geometryless incoming and outgoing windows bug since 1.8: * A major overhaul was done for 2.0. From the user's perspective things are mostly the same, but internally everything's been mushed around. The 4 different scripts from version 1.X have been merged into one big script which maintains everything. The advantages to this approach are MUCH smaller memory footprint, greater likelyhood of cross- platform compatibility (ever try to "exec" on a mac?) faster operation, easier to manager source (I think) and the removal of the problem of interprocess communication, a possibility of a "send to all" function (as requested, but not yet working) and a sure fire way to make sure tkbc quits when X exits. This last item opens up the possibility for a tkbc metaserver which you can register yourself with which can then be queried by other users. This is something for 3.0. * The main tkbc interface now MUST BE RUNNING for you to receive messages since the "server" code is now merged into everything else. This is not to pretty from a user perspective, but it makes my end much simpler. Sorry, folks, you'll have to start tkbc from your .xinitrc files. * Multiple database files - this was initially done to make it easy to test the "send to all" code, but was left in 'caue it's cool. * Beginnings of "send to all" * Incoming messages now display the time and date * Later incoming messages should start appearing back on screen earlier (around 600y pixels instead of 7600.. oops) since 1.7: *Fixed absolute name resolution by parsing /etc/resolv.conf for the domain name. *Added an undocumented (ha!) feature that will play a sound for incoming messages that can be toggled with the line: sound on in the .tkbcrc file. there is currently no widget to supply this information, hence its "undocumented" status. *Fixed initial focus for outgoing messages *Turned on word wrap in the text widgets since 1.6: *Added save options to incoming messages *better key bindings in filename entry widgets *a little more immune to quitting on an error (little) since 1.5: *fixed "dummy" entry *fixed required extra blank line in .rc file *added tilde expansion in the "insert file" entry box. *improved some keyboard bindings *reread now properly rereads the resource file *Added "add new" so new addresses can be added without having to edit the file *address deletion and personal info management from within tkbc. you shouldn't even have to touch the rc file. CONTACT INFO: Please direct any problems, questions, suggestions to etgold@cs.vassar.edu (that's me) and I'll get back to you. I'd love to find out who's using my software, so if you decide to keep it, drop me a line. ACKNOWLEDGEMENTS: Thanks to Joachim Lindenberg for Appletalk Broadcast and John Ousterhout for tcl/tk and David Chappell for his suggestions DISCLAIMER: ----------- THIS SOFTWARE IS PROVIDED ENTIRELY WITHOUT WARRANTY, EXPLICIT OR IMPLIED! I'M AM NOT RESPONSIBLE FOR LOST DATA, MISUSED/ABUSED NETWORK RESOURCES, WASTES OF TIME/MONEY/PRODUCTIVITY. DISTRIBUTE THIS SOFTWARE UNDER THE TERMS OF THE GNU PUBLIC LICENSE. THE SUITABILITY OF THIS PRODUCT FOR ANY PURPOSE IS NOT GUARANTEED.