Table of Contents
Instant Message
The Synchronet Instant Message module is used to provide a real-time inter-BBS instant message feature for participating systems.
This module is normally invoked from the "Chat" menu or from the PrivateMsg module with the 'I' key.
Install
Chat Menu
If you're using the default chat_sec
menu module, you should already have it installed on that menu (the I
command key).
Global Hotkey
To get access to instant-message module from virtually anywhere within the BBS (e.g. using Ctrl-P), install the (new) PrivateMsg module in SCFG->System->Loadable Modules->Private Msg (the default, privatemsg
, should be all you need):
Private: (T)elegram, (M)essage, (C)hat, (I)nterBBS, or (Q)uit:
Logon Event
To display a list of currently active users (on other inter-BBS instant message capable systems) during user-logon, add an external program to SCFG->External Programs->Online Programs->Main (or your section of choice)->Available Online Programs... and configure as follows:
Name Synchronet IMSG List Internal Code SBBSIMSG Command Line ?sbbsimsg -l Multiple Concurrent Users Yes Execute on Event Logon, Only Pause After Execution Yes BBS Drop File Type None
All other settings can be left with their default values (No/None/blank).
History
History of this module/feature:
Original (2001)
- Queried systems using Finger (TCP port 79)
- Sent message using SMTP-SOML (TCP port 25)
Rev 1.11 (2002)
- Queried system using both TCP and UDP-Finger (port 79)
- Still sent messages using SMTP-SOML
Rev 1.22 (2007)
- Queried using SYSTAT/ActiveUser protocol (TCP & UDP port 11) in addition to Finger (TCP and UDP port 79)
- If send via SMTP failed, used MSP protocol (TCP port 18)
Rev 1.25 (2009)
Removed Finger (both TCP and UDP support), SYSTAT-TCP and SMTP support, so it now *only*:
- Queries using SYSTAT/ActiveUser protocol over UDP port 11
- Sends messages using MSP (TCP port 18)
So, while originally the requirements for systems to participate in the instant-message network were:
- Synchronet SMTP Server listening on TCP port 25
- fingerservice.js listing on TCP port 79
Now, the requirements are:
- activeuserservice.js (or fingerservice.js) listening on UDP port 11
- mspservice.js listening on TCP port 18
List File
The heart of the instant message module is the ctrl/sbbsimsg.lst
file.
This file is generated daily on Vertrauen and distributed via FTP as ftp://vert.synchro.net/sbbsimsg.lst.
The event module exec/getimsglst
is normally run as a timed event (configured in SCFG->External Programs->Timed Events) and used to pull the list file from Vertrauen via FTP, usually daily.
The List File is generated daily on Vertrauen through the use of the sbbslist.js
module's imsglist
command-line option. This sbbslist option parses the Synchronet BBS List and finds listed-systems that meet the minimum requirements to be included in the instant-message list and re-generates the sbbsimsg.lst
file.
Requirements
Since Vertrauen uses its Synchronet BBS List as the source of BBSes which may be instant-message capable, the first requirement is that a system is listed in this database.
To have your system listed, either:
- login to Vertrauen and create your BBS entry or,
- preferably, run the sbbslist module on your own BBS and have it synchronized with Vertrauen and the rest of DOVE-Net or FidoNet via the
SYNCDATA
networked message area
The following services must also be reachable via the public-Internet for a system to be listed in the Instant Message module List File (sbbsimsg.lst
):
- SYSTAT/ActiveUser service (using the Finger service) on UDP port 11
- MSP service (using the MSP service) on TCP port 18
This is normally accomplished by adding the following services to a BBS's ctrl/services.ini
file:
[ActiveUser-UDP] Port=11 MaxClients=10 Options=UDP | NO_HOST_LOOKUP Command=fingerservice.js -u
[MSP] Port=18 MaxClients=10 Command=mspservice.js
You can use this page to help determine if the required services are publicly-reachable on your system.
Once a system is listed in the Synchronet BBS List on Vertrauen and the required services are confirmed publicly-reachable on the Internet, that system should appear in the shared sbbsimsg.lst
file within 24 hours.