Repository navigation
Chat and Paging
Callers on different nodes can talk to each other in three ways: in chat rooms, by private messages, and by paging the sysop. Each user also keeps a friends list.
C on the text main menu (Chat on a 3270's) goes into the main room.
Anyone can start another room with /join NAME. A room closes when its
last caller leaves, unless the sysop has made it
permanent. Anyone who joins a room sees its last
20 lines.
| Command | What it does |
|---|---|
| (a line) | say it to the room |
/me ACTION |
* alice waves |
/who |
who is in this room |
/rooms |
the rooms in use, and who is in them |
/join ROOM |
go to another room (letters, digits and -, up to 20) |
/msg WHO TEXT |
a private message to a user (or to a node, by its number), kept if they are away |
/history [WHO] |
those you have talked with, or your last lines with one |
/friends |
your friends list, and who on it is on |
/friend WHO, /unfriend WHO
|
put a user on your friends list, or take them off |
/block WHO, /unblock WHO
|
refuse a user's private messages, or take them again (blocking) |
/topic [TEXT] |
the room's topic; a registered room's ops set it, the sysop a permanent room's |
/cs COMMAND |
ChanServ: register a room, its access list (/cs HELP) |
/kick WHO [WHY] |
put one out of the room (a registered room's ops; Carol_Ann for Carol Ann) |
/mode [CHANGES] |
a registered room's channel modes: /mode +m, /mode +b alice, /mode +b lists the bans |
/invite WHO |
ask one into the room (past +i, +k, +l) |
/join ROOM KEY |
come into a room with a key |
/knock ROOM [WHY] |
ask the ops of a room you are kept out of to let you in |
/quit |
leave the chat |
/help |
these |
On the text BBS, a line someone else says appears the moment it arrives, above what you are typing, which is then redrawn. A 3270 shows only what it is sent, and is best not sent anything while its caller types, so the chat screen shows new lines each time you press Enter (to say something, or with nothing typed) or PF5.
A caller can say up to 8 lines in 10 seconds; more than that is refused ("slow down").
Rooms whose names begin with mrc- belong to MRC and are shared
with other BBSes. With IRC server linking, rooms beginning
irc- are an IRC network's channels, and /msg NICK TEXT reaches
someone on that network. The rooms are also channels on the BBS's IRC
server (#main and the rest), with IRC clients in them alongside the
callers.
On the text BBS, Who's online ends by offering to send a line to a
node, and /msg WHO TEXT sends one from chat (on a 3270 too), to a user
by name or to a node by its number. The line reaches the caller
wherever they are: on the text BBS, at whatever prompt they are at; on a
3270, on the message line of their next screen (with (+N) when more
are waiting); on IRC as a PRIVMSG; on AIM or ICQ
or MSN or Yahoo as an IM.
Private messages are kept, however they were sent: the BBS's chat, IRC,
AIM, ICQ, MSN or Yahoo. A message to a user who isn't on is kept for them, and they
get it when they next log in, with the time it was sent (an ICQ client
gets them as its offline messages). /history WHO (on IRC, /msg BBSServ HISTORY nick) shows your last lines with someone. Only the two
users in a conversation can read it back.
Every user has one friends list, of BBS users. It is the same list
everywhere: /friends in chat, FRIENDS to BBSServ on IRC, and the
buddy list on AIM and ICQ, the contact list on
MSN and Yahoo. A friend added on one shows on the others;
an AIM, MSN or Yahoo client that is on gets them at once, in their group
(Friends on AIM if they have none).
Every user also has one blocked list. /block WHO puts a user on it
(and /unblock WHO takes them off), as do MSN's "Block" and Yahoo's
ignore list. A blocked
user's private messages are refused, however they send them (chat, IRC,
AIM, MSN, Yahoo) and whether or not you are on, and MSN and Yahoo show
you offline to them.
S on the text main menu (Page the sysop on a 3270) asks what the page is about, and tells every sysop who is logged in and not busy:
** alice (node 2) is paging you: my upload failed (Chat, then /answer) **
The caller waits in a private room of their own (sysop-2), which only
they and sysops can join. A sysop answers with /answer in chat (which
picks the caller who has waited longest) or /answer NODE. /pages
lists who is waiting, and /busy turns pages to that sysop off and on.
The sysop's main menu shows Chat (1 paging) while someone waits. If the
caller gives up (/quit, PF3), the page is cancelled.
If no sysop is on, the caller is offered the chance to leave the sysop a
message, and page_command (in [general]) runs to tell the sysop some
other way:
[general]
page_command = /usr/local/bin/notify-sysop {user} {node} {reason}
{user}, {node} and {reason} are filled in as whole arguments, and
are also given as BBS_PAGE_USER, BBS_PAGE_NODE and BBS_PAGE_REASON.
There is no shell, so nothing a caller typed is ever run. The command can
take up to 30 seconds. For example, with ntfy:
page_command = curl -s -d "{user} on node {node}: {reason}" https://ntfy.sh/my-bbs-pages
A caller can page at most once a minute.
See also: Administration, Security
These pages live in the repository's docs/wiki: change them there, not here.
Getting going
- Building
- Running
- Administration
- Sysop tools
- Configuration
- Configuration reference
- Databases
- Backups
- Customization
- Scripting
- Access levels
Callers
Features
- Message areas
- Writing messages
- Offline mail (QWK)
- Files and FTP
- File transfers
- Doors
- Newsgroups and NNTP
- FidoNet
- Chat and paging
- IRC
- IRC server linking
- AIM and ICQ
- AOL clients
- MSN Messenger
- MSN Classic (1995)
- Yahoo! Messenger
- MRC
- News, weather and quotes
- Finger, gopher and Gemini
- Time: NTP, NTS and PTP
- Web forum
- Image boards
- HTTP API
More