Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
custom:atcodes [2022/11/11 18:47] – [System Information] Add OS_CPU @-code digital mancustom:atcodes [2024/09/25 12:02] (current) – [Terminal Information / Control] Add PETGRFX @-code digital man
Line 3: Line 3:
 Synchronet sysop-posted messages, text and menu files, and some lines in the ''[[dir:ctrl]]/[[text.dat]]'' file may contain special //Message Variables//, also called //@-codes// ("at codes", some BBS authors and sysops refer to these types of codes as "@ Macros" or "@ Variables" or "MCI codes"((and not because of the defunct phone company))). @-codes may also be displayed using the ''bbs.atcode()'' [[JavaScript]] method. Synchronet sysop-posted messages, text and menu files, and some lines in the ''[[dir:ctrl]]/[[text.dat]]'' file may contain special //Message Variables//, also called //@-codes// ("at codes", some BBS authors and sysops refer to these types of codes as "@ Macros" or "@ Variables" or "MCI codes"((and not because of the defunct phone company))). @-codes may also be displayed using the ''bbs.atcode()'' [[JavaScript]] method.
  
-@-codes are called such because they begin and end with the ''@'' (ASCII 64) ("at") character. The code names themselves (sandwiched between the @'s) must be entered using only ''UPPERCASE'' letters. Some additional symbols and numbers may also be included in the @-code, but never a space.+@-codes are called such because they begin and end with the ''@'' (ASCII 64) ("at") character. The code names themselves (sandwiched between the @'s) must be entered using only ''UPPERCASE'' letters((Exception: text string IDs used as @-codes are typically mixed-case)). Some additional symbols and numbers may also be included in the @-code, but never a space.
  
 Some of the @-codes supported in Synchronet have unusual names or aliases specifically for //PCBoard// and/or //Wildcat!// BBS Software compatibility. Although this compatibility with these other BBS packages is less of a concern these days, the unusual code names remain. Some of the @-codes supported in Synchronet have unusual names or aliases specifically for //PCBoard// and/or //Wildcat!// BBS Software compatibility. Although this compatibility with these other BBS packages is less of a concern these days, the unusual code names remain.
Line 155: Line 155:
 |MSG_TO                        |Current message to-user name/number/address| |MSG_TO                        |Current message to-user name/number/address|
 |MSG_TO_NAME    |                |Current message to-user name| |MSG_TO_NAME    |                |Current message to-user name|
 +|MSG_TO_FIRST                  |Current message to-user "first" name|
 |MSG_TO_EXT                    |Current message to-user extension (number)| |MSG_TO_EXT                    |Current message to-user extension (number)|
 |MSG_TO_NET                    |Current message to-user network address| |MSG_TO_NET                    |Current message to-user network address|
Line 161: Line 162:
 |MSG_FROM                      |Current message from-user name/number/address| |MSG_FROM                      |Current message from-user name/number/address|
 |MSG_FROM_NAME  |                |Current message from-user name| |MSG_FROM_NAME  |                |Current message from-user name|
 +|MSG_FROM_FIRST |                |Current message from-user "first" name|
 |MSG_FROM_EXT                  |Current message from-user extension (number)| |MSG_FROM_EXT                  |Current message from-user extension (number)|
 |MSG_FROM_NET                  |Current message from-user network address| |MSG_FROM_NET                  |Current message from-user network address|
Line 245: Line 247:
 |ALERTS                      |Node activity alerts enabled status (e.g. "On" or "Off") | |ALERTS                      |Node activity alerts enabled status (e.g. "On" or "Off") |
 |ALIAS        |NAME, USER      |User's alias | |ALIAS        |NAME, USER      |User's alias |
 +|ANFSCAN      |                |Automatically scan for new files after new messages (e.g. "On" or "Off") |
 +|ASKNSCAN                    |Prompt for new message scan during logon (e.g. "On" or "Off") |
 +|ASKSSCAN                    |Prompt for your personal message scan during logon (e.g. "On" or "Off") |
 +|AUTOHANG                    |Automatically hang-up after file transfers (e.g. "On" or "Off") |
 +|AUTOLOGON    |                |Automatically login via IP address (e.g. "On" or "Off") |
 |BDATE        |                |User's birth date (in "MM/DD/YY" or "DD/MM/YY" format) | |BDATE        |                |User's birth date (in "MM/DD/YY" or "DD/MM/YY" format) |
 |BDATE://fmt//|BIRTH://fmt//   |User's birth date in the specified [[strftime]] format | |BDATE://fmt//|BIRTH://fmt//   |User's birth date in the specified [[strftime]] format |
Line 259: Line 266:
 |DLKLIMIT                    |User's total credits (in kibibytes) | |DLKLIMIT                    |User's total credits (in kibibytes) |
 |DOWNK        |                |Total kibibytes downloaded by user | |DOWNK        |                |Total kibibytes downloaded by user |
 +|EDITOR                      |User's selected external editor name or "None" |
 |EMAILADDR    |                |User's Internet e-mail address on your system | |EMAILADDR    |                |User's Internet e-mail address on your system |
 |EMAILS                      |Total number of emails sent by user | |EMAILS                      |Total number of emails sent by user |
Line 265: Line 273:
 |EXPDATE://fmt// |             |User's expiration date in specified [[strftime]] format | |EXPDATE://fmt// |             |User's expiration date in specified [[strftime]] format |
 |EXPDAYS      |                |Days left before user expires | |EXPDAYS      |                |Days left before user expires |
 +|EXPERT               |Expert menu mode enabled ('On' or 'Off')|
 |FBACKS                      |Number of feedback messages sent by user | |FBACKS                      |Number of feedback messages sent by user |
 +|FILEDESC             |Display extended file descriptions in file listings ('On' or 'Off')|
 +|FILEFLAG             |Display file flagging prompt in file listings ('On' or 'Off')|
 |FIRST        |                |First word of user's alias                     | |FIRST        |                |First word of user's alias                     |
 |FIRSTON      |                |Date and time of user's first logon              | |FIRSTON      |                |Date and time of user's first logon              |
Line 276: Line 287:
 |FWD            |                |User's netmail forward status (e.g. "On" or "Off") (new in v3.18c)| |FWD            |                |User's netmail forward status (e.g. "On" or "Off") (new in v3.18c)|
 |HANDLE                        |User's chat handle                              | |HANDLE                        |User's chat handle                              |
 +|HOTKEYS      |         |Hot-key user input mode enabled ('On' or 'Off')|
 |HOST           |CPU             |Client's hostname | |HOST           |CPU             |Client's hostname |
 |IP             |CID             |Client's IP address or Caller-ID information     | |IP             |CID             |Client's IP address or Caller-ID information     |
Line 306: Line 318:
 |MPERC        |TIMELIMIT       |Minutes allowed per call/logon | |MPERC        |TIMELIMIT       |Minutes allowed per call/logon |
 |MPERD        |                |Minutes allowed per day | |MPERD        |                |Minutes allowed per day |
 +|MSGCLS               |Clear screen before each message ('On' or 'Off')|
 |MSGLEFT      |MSGSLEFT        |Total number of messages posted by user | |MSGLEFT      |MSGSLEFT        |Total number of messages posted by user |
 |MSGREAD      |                |Number of messages read by user this call | |MSGREAD      |                |Number of messages read by user this call |
Line 312: Line 325:
 |NEWFILETIME  |                |Date and time of user's last new file scan (see LASTNEW) | |NEWFILETIME  |                |Date and time of user's last new file scan (see LASTNEW) |
 |NETMAIL      |                |User's personal email or netmail address (new in v3.18c) | |NETMAIL      |                |User's personal email or netmail address (new in v3.18c) |
 +|NODE_USER    |                |User's alias or "UNKNOWN USER" if the current node is in anonymous mode (new in v3.20)|
 |NOTE         |MEMO1           |User's note (new in v3.18c) | |NOTE         |MEMO1           |User's note (new in v3.18c) |
 |PAGER        |                |Chat pager enabled status (e.g. "On" or "Off")| |PAGER        |                |Chat pager enabled status (e.g. "On" or "Off")|
 +|PAUSESPIN    |         |Spinning cursor at pause prompts ('On' or 'Off')|
 |PCR          |                |User's post/call ratio, as a percentage (not capped at 100) | |PCR          |                |User's post/call ratio, as a percentage (not capped at 100) |
 |PHONE        |HOMEPHONE, DATA, DATAPHONE |User's phone number | |PHONE        |HOMEPHONE, DATA, DATAPHONE |User's phone number |
 +|PROT                        |Default file transfer protocol (key/character) |
 +|PROTNAME                    |Full name of default file transfer protocol |
 |PTODAY                      |Number of messages posted by user today | |PTODAY                      |Number of messages posted by user today |
 |PWAGE        |                |Age (in days) of the current user's password | |PWAGE        |                |Age (in days) of the current user's password |
 |PWDATE       |MEMO            |Date of user's last password modification (in "MM/DD/YY" or "DD/MM/YY" format) | |PWDATE       |MEMO            |Date of user's last password modification (in "MM/DD/YY" or "DD/MM/YY" format) |
 |PWDATE://fmt//              |Date/time of user's last password modified in specified [[strftime]] format | |PWDATE://fmt//              |Date/time of user's last password modified in specified [[strftime]] format |
 +|QUIET        |         |Quiet logon mode enabled (e.g. "On" or "Off") |
 |REALNAME     |COMPANY, MEMO2  |User's real name | |REALNAME     |COMPANY, MEMO2  |User's real name |
 +|REMSUBS      |         |Remember current sub-board and file director between logins ('On' or 'Off')|
 |SEC          |SECURITY        |User's security level (0-99) |                           |SEC          |SECURITY        |User's security level (0-99) |                          
 +|SHELL        |         |User's selected command shell name |
 |SPAMW        |         |Number of SPAM messages waiting | |SPAMW        |         |Number of SPAM messages waiting |
 |SPAMW://x//  |SPAMW#//x//  |Number of SPAM messages waiting for user number //x// | |SPAMW://x//  |SPAMW#//x//  |Number of SPAM messages waiting for user number //x// |
 +|SPIN                 |Spinning cursor enabled ('On' or 'Off')|
 |SPLITP               |Split-screen private chat enabled status (e.g. "On" or "Off")| |SPLITP               |Split-screen private chat enabled status (e.g. "On" or "Off")|
 |STATE        |         |User's state (from location)| |STATE        |         |User's state (from location)|
Line 340: Line 361:
 |UDR          |         |User's upload/download byte ratio, as a percentage (not capped at 100) | |UDR          |         |User's upload/download byte ratio, as a percentage (not capped at 100) |
 |UDFR                 |User's upload/download file ratio, as a percentage (not capped at 100) | |UDFR                 |User's upload/download file ratio, as a percentage (not capped at 100) |
 +|UPAUSE               |Automatic screen-pausing ('Hit a key' prompting) ('On' or 'Off')|
 |UPBYTES      |         |Total bytes uploaded by user | |UPBYTES      |         |Total bytes uploaded by user |
 |UPFILES      |UPS      |Total files uploaded by user |  |UPFILES      |UPS      |Total files uploaded by user |
Line 357: Line 379:
 |CLEAR                  |Clear the screen, all existing mouse hot-spots and eat the next newline sequence | |CLEAR                  |Clear the screen, all existing mouse hot-spots and eat the next newline sequence |
 |CLEAR_HOT              |Clear all existing mouse hot-spots | |CLEAR_HOT              |Clear all existing mouse hot-spots |
 +|CPS                    |Current/latest file download rate, in characters/bytes per second (new in v3.20)|
 |HOT                    |Define a new mouse hot-spot color (the color of the @-code defines the hot-spot attributes) | |HOT                    |Define a new mouse hot-spot color (the color of the @-code defines the hot-spot attributes) |
 |HOT:HUNGRY      |        |Define a new mouse hot-spot color for defining hungry hot-spots (hungry hot-spots are the default type) | |HOT:HUNGRY      |        |Define a new mouse hot-spot color for defining hungry hot-spots (hungry hot-spots are the default type) |
Line 379: Line 402:
 |EOF                    |End-of-file (stop parsing/displaying) | |EOF                    |End-of-file (stop parsing/displaying) |
 |PAUSE           |MORE    |Force a screen pause and a ''[Hit a key]'' prompt, if 'N' or 'Q' are typed, the displayed message/file is aborted | |PAUSE           |MORE    |Force a screen pause and a ''[Hit a key]'' prompt, if 'N' or 'Q' are typed, the displayed message/file is aborted |
-|PON             |AUTOMORE|Toggle automatic screen pause on | 
 |POFF            |NOPAUSE |Toggle automatic screen pause off | |POFF            |NOPAUSE |Toggle automatic screen pause off |
 +|PON             |AUTOMORE|Toggle automatic screen pause on |
 +|QOFF            |        |Toggle display abort-ability off |
 +|QON                    |Toggle display abort-ability on |
 |RESETPAUSE      |        |Reset the automatic screen pause line counter | |RESETPAUSE      |        |Reset the automatic screen pause line counter |
 +|GETDIM          |        |Request current (ANSI) terminal dimensions (rows and columns), only when set to auto-detect | 
 |GETKEY          |        |Wait indefinitely for any key press before continuing | |GETKEY          |        |Wait indefinitely for any key press before continuing |
 |CONTINUE        |        |Wait indefinitely for any key press before continuing and abort the message/file display if 'N' or 'Q' are typed |  |CONTINUE        |        |Wait indefinitely for any key press before continuing and abort the message/file display if 'N' or 'Q' are typed | 
 |WAIT://n//      |        |Wait up to //n// 10ths of a second for a key press before continuing | |WAIT://n//      |        |Wait up to //n// 10ths of a second for a key press before continuing |
 |DELAY://n//            |Wait //n// 10ths of a second before continuing | |DELAY://n//            |Wait //n// 10ths of a second before continuing |
 +|LINEDELAY              |Wait 1/10th of a second before sending each newline character (new in v3.20) |
 +|LINEDELAY://n// |        |Wait //n// 100ths of a second before sending each newline character, 0 to disable (new in v3.20) |
 |UP://n//        |        |Move cursor up //n// rows                   | |UP://n//        |        |Move cursor up //n// rows                   |
 |DOWN://n//      |        |Move cursor down //n// rows                 | |DOWN://n//      |        |Move cursor down //n// rows                 |
Line 402: Line 430:
 |ROWS            |        |Number of terminal rows                 | |ROWS            |        |Number of terminal rows                 |
 |TERM            |        |Terminal-type name (i.e. 'ANSI', 'RIP', 'PETSCII', or 'DUMB') | |TERM            |        |Terminal-type name (i.e. 'ANSI', 'RIP', 'PETSCII', or 'DUMB') |
 +|TERMTYPE        |        |Verbose terminal type configuration |
 +|TERMCOLS        |        |Verbose terminal column configuration |
 +|TERMROWS        |        |Verbose terminal row/lines configuration |
 |CHARSET                |Terminal character set supported (i.e. 'UTF-8', 'CP437', 'PETSCII', or 'US-ASCII') | |CHARSET                |Terminal character set supported (i.e. 'UTF-8', 'CP437', 'PETSCII', or 'US-ASCII') |
-|WORDWRAP        |        |Word-wrap the the following text        |+|AUTOTERM        |        |Automatic terminal type detection ('On' or 'Off')| 
 +|ANSI            |        |ANSI-BBS terminal emulation ('On' or 'Off')| 
 +|ASCII                  |ASCII terminal character set ('On' or 'Off')| 
 +|PETSCII                |CBM/PETSCII terminal emulation ('On' or 'Off')| 
 +|PETGRFX                |Send special character (142) to enter UPPER/GRAPHICS character set mode on PETSCII terminals| 
 +|UTF8            |        |UTF-8 terminal character set ('On' or 'Off')| 
 +|COLOR                  |Color terminal support ('On' or 'Off')| 
 +|ICE                    |Bright-background (ICE color) support ('On' or 'Off')| 
 +|RIP                    |RIPscrip terminal emulation ('On' or 'Off')| 
 +|SWAPDEL                |Reverse the traditional DEL and Backspace input key codes ('On' or 'Off')| 
 +|MOUSE                  |Mouse support ('On' or 'Off')| 
 +|TRUNCATE        |        |Truncate long lines in the following text | 
 +|TRUNCOFF        |        |Mark the end of a truncated text block (turn off long-line truncation) | 
 +|WORDWRAP        |        |Word-wrap long lines in the following text |
 |WRAPOFF                |Mark the end of a word-wrapped text block | |WRAPOFF                |Mark the end of a word-wrapped text block |
 |CENTER          |        |Middle-align the remaining text on the line | |CENTER          |        |Middle-align the remaining text on the line |
Line 416: Line 460:
 |U+//code//!//char// |        | Send a Unicode character code point, specifying fallback character only to used when no automatic fallback is available | |U+//code//!//char// |        | Send a Unicode character code point, specifying fallback character only to used when no automatic fallback is available |
 |!//x// |                     | Execute the terminal/attribute control sequences for one or more [[Ctrl-A Codes]] (operands) represented by //x//| |!//x// |                     | Execute the terminal/attribute control sequences for one or more [[Ctrl-A Codes]] (operands) represented by //x//|
 +|MNE://low// |                | Set Mnemonic string "low" attribute (color) using ''[[config:attr.ini]]'' syntax for "low" attribute code; the "high" attribute is set to the same color with the "high intensity" bit flipped |
 +|MNE://low//://high// |          | Set Mnemonic string "low" and "high" attributes (colors) |
 +|MNE://low//://high//://cmd// |  | Set Mnemonic string "low", "high" and "command" attributes (colors) |
 +|RAINBOW://pattern// |           | Set the rainbow attribute pattern with colon-separated attributes, using ''[[config:attr.ini]]'' syntax (e.g. ''RAINBOW:R:RH:B:BH:G:GH:C:CH'') |
 ==== C-Text ==== ==== C-Text ====