Well, here it is : NetCb, the Novell network Chat box. ( NetCb = Network Chat Box ) Using NetCb you can chat with other users on a Novell network. -- Disclaimer and stuff Although thoroughly tested (see also the credits) I give no warranty whatsoever on the usability of, the results of using or the good working of NetCb. It's up to you. Novell and Netware are trademarks of Novell Inc. Usage of NetCb is allowed for anybody, althought commercial sites are asked to pay a fee when using it. (Donations in the form of hardware are also welcome) Usage of NetCb means you agree with this. -- Using NetCb NetCb uses IPX so if you manage to get Novell up and running without IPX (I still can't figure out how you do that), you can't chat. NetCb uses IPX because NetCb works 'connection-less'. No virtual circuit is build between the chatters, anybody can come into the chat and leave it as he/she likes without extra communication between the chatters. To join a running chat on a network, simply fire up NetCb, think of a funny name for yourself and on you go. To get the other users an idea of who's chatting along, messages are send in the chat when you join the chat, leave it or change your nickname or change channels. When you join in the chat, the message is : / \ [n] is joining in with the chat. So if your logged in as GUEST on a server named FILEBASE on logical connection 3 and you want to chat using the nickname Mr. Bean, a line is send in the chat looking like : Mr. Bean / FILEBASE\GUEST [3] is joining in with the chat. Because NetCb only uses IPX, it's not needed to be logged in. So you might also get something like : Mr. Bean / FILEBASE\ [3] is joining in with the chat. You may even be detached (not using a logical connection on a server). Then it looks like : Mr. Bean / \-- [0] is joining in with the chat. When chatting, the bottom of the screen looks like : | | +-----------------------------------------------------------------------------+ | Mr Bean : _ | +-----------------------------------------------------------------------------+ At this line you get a flashing cursor. Type the line you want to sent. When you press [Enter], the line is sent to everyone on the network (broadcast). Everyone running NetCb sees it appear on his/her screen, if he/she is 'tuned' into the same channel. Channels are implemented just like C.B. channels. You can select a channel using the up/down cursor keys or Alt-C to select channel 0. At the top of the screen the channel is indicated, along with the current time. The top right half of the screen looks like : --- 12:11 --- Channel [11] v --+ | Just right to the channel indicator is an 'activity' indicator. Every time a packet is recieved for NetCb (all packets are checked for a 'signature' which consists of 'KH' and a 0x01) the activity indicator will turn right one step. Using F1 you get a window which shows the available keys. They are : Arrow keys to select channels (0..19) Alt-C to select channel 0 Alt-W to get the userlist (private chat not implemented yet...:-( Alt-N to select a new nickname (the other users of the chat will get a warning message..) Alt-T to get a scaled graph on the packets recieved in the last minute in every channel. So if you get the strange idea 'where is everybody ?', you can look in this window. Alt-I information on NetCb. It shows the short info, the credits for this program and some info on you and the total number of packets recieved since starting. When you press Alt-W, you get a window and a 'Building list...' line. To make sure every answer to the "who's there ?" packet is recieved, NetCb waits half a second. After that you get a complete list of the users. The order in which they are shown is kinda random and will change every time you access this window. This is due to the fact that NetCb waits a short random time after it recieves a "who's there ?" packet to avoid a great number of network collisions. You can browse through the list and press [Enter] to get more info on the selected user. In this info is also the network address, so anyone can be traced on the network. -- Notes for system managers NetCb does not cause much network overhead. For each line a packet of 168 bytes data is sent. When someone asks a userlist, every station waits a short random time before sending it's answer. NetCb packets don't not cross bridges. In this version at least. -- The 'single network' problem. NetCb can send packets only on the same network. At this moment I haven't figured out a good way to get all available network numbers from a bridge or so. I know there must be some way to read out the routing table using diagnostics calls. (Anyone with a good C-source to accomplish this can get in the 'greetings go to' list...) I'm also looking into the possibility of using SAP (Server Advertising Protocol) to accomplish this since Diagnostics is not implemented in Netware 386 :-( -- Credits Thanks go to numerous people. Of course thanks goes to the system managers at my school who couldn't figure out what was going on on the network for about four weeks. Now they want to stop me from using it at school. Wait and see. Thanks also goes to the ones who tested it at my school. Famous names like 'Sammy Suitcase', 'Slim', 'Me again', 'Elmer Fudd', 'Scatterbrain' and others helped me to test NetCb throroughly. Thanks goes to Charles G. Rose for writing an excellent book about programming Netware : 'Programmers Guide to Netware'. -- Contacting the author I'm open to suggestions, remarks and so. I also would like to get an idea of the usage of NetCb, so you can contact me in the following ways : Internet : koos@kzdoos.hacktic.nl. (preferred) Fidonet : Koos van.den.hout at 2:500/101.11012. It's as simple as that. BBS : +31-3402-36647. It's my own BBS. Full Dutch and English menus available. Look at the local time here before yelling me.. Snailmail : Koos van den Hout, Goudvink 12, 3435 RJ Nieuwegein Netherlands.