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 [2020/11/25 14:09] – [System Information] Added SYSAVAILYN digital mancustom:atcodes [2023/09/13 18:57] (current) – [User Information] Add PROT and PROTNAME (new) digital man
Line 1: Line 1:
 ====== Message Variables (@-codes) ====== ====== Message Variables (@-codes) ======
  
-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  "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. Some additional symbols and numbers may also be included in the @-code, but never a space.
Line 62: Line 62:
 |AUTODEL        |                |Maximum days of user inactivity before auto-deletion or "unlimited" | |AUTODEL        |                |Maximum days of user inactivity before auto-deletion or "unlimited" |
 |BBS            |BOARDNAME       |Name of BBS |  |BBS            |BOARDNAME       |Name of BBS |
 +|BUILD_DATE                    |Date of Synchronet build |
 +|BUILD_TIME                    |Time of Synchronet build |
 |COMPILER                      |Compiler used to build Synchronet| |COMPILER                      |Compiler used to build Synchronet|
 |CONF                          |Name of current Group and Sub-board| |CONF                          |Name of current Group and Sub-board|
Line 97: Line 99:
 |FREESPACEK                    |Free disk space available for uploads (in kibibytes) | |FREESPACEK                    |Free disk space available for uploads (in kibibytes) |
 |FULL_VER                      |Synchronet full version number (e.g. "3.15a")| |FULL_VER                      |Synchronet full version number (e.g. "3.15a")|
 +|GIT_BRANCH                    |Synchronet Git repository branch name (e.g. "master")|
 +|GIT_HASH                      |Synchronet Git repository commit hash (most significant Git-SHA hex-digits)|
 |GRP            |                |Current message group short description | |GRP            |                |Current message group short description |
 |GRPL                          |Current message group long description | |GRPL                          |Current message group long description |
Line 122: Line 126:
 |ONODES         |ONODE, ON       |Number of other active nodes (not counting current node) | |ONODES         |ONODE, ON       |Number of other active nodes (not counting current node) |
 |OS_VER                        |Operating system type and version information| |OS_VER                        |Operating system type and version information|
 +|OS_CPU                        |Processor architecture name according to the operating system (e.g. "x86", new in v3.20) |
 |PLATFORM                      |Platform or operating system name (e.g. "win32", "linux")| |PLATFORM                      |Platform or operating system name (e.g. "win32", "linux")|
 |PWDAYS                        |Maximum age (in days) of user's password before forced-change or "unlimited" | |PWDAYS                        |Maximum age (in days) of user's password before forced-change or "unlimited" |
Line 170: Line 175:
 |MSG_AUXATTR    |                |Current message auxiliary attributes| |MSG_AUXATTR    |                |Current message auxiliary attributes|
 |MSG_NETATTR    |                |Current message network attributes| |MSG_NETATTR    |                |Current message network attributes|
-|MSG_UPVOTES    |                |Current message total number of 'up-votes' (new v3.17)|+|MSG_UPVOTES    |                |Current message total number of 'up-votes' (new in v3.17)|
 |MSG_DOWNVOTES  |                |Current message total number of 'down-votes' (new in v3.17)| |MSG_DOWNVOTES  |                |Current message total number of 'down-votes' (new in v3.17)|
 |MSG_SCORE      |                |Current message vote score (down-votes subtracted from up-votes)| |MSG_SCORE      |                |Current message vote score (down-votes subtracted from up-votes)|
Line 176: Line 181:
 |MSG_UPVOTED    |                |Current user up-voted status for current message (checkmark) | |MSG_UPVOTED    |                |Current user up-voted status for current message (checkmark) |
 |MSG_DOWNVOTED  |                |Current user down-voted status for current message (checkmark) | |MSG_DOWNVOTED  |                |Current user down-voted status for current message (checkmark) |
 +|MSG_THREAD_ID  |                |Current message thread's thread-id (message number) |
 +|MSG_THREAD_NEXT|                |Current message thread's next message number |
 +|MSG_THREAD_BACK|                |Current message thread's previous message number |
 +|MSG_THREAD_FIRST|               |Current message's first reply message number |
 |FILE_AREA      |                |Current file area (lib and directory) names | |FILE_AREA      |                |Current file area (lib and directory) names |
 |FILE_AREA_DESC |                |Current file area (lib and directory) descriptions | |FILE_AREA_DESC |                |Current file area (lib and directory) descriptions |
Line 236: Line 245:
 |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 250: Line 264:
 |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 256: Line 271:
 |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 267: Line 285:
 |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 281: Line 300:
 |KBLEFT                        |User's total credits (in kibibytes)             | |KBLEFT                        |User's total credits (in kibibytes)             |
 |KBLIMIT        |DLKLIMIT, MAXDK |User's free credits per day (in kibibytes)      | |KBLIMIT        |DLKLIMIT, MAXDK |User's free credits per day (in kibibytes)      |
-|MAILW                       |Number of mail messages waiting for current user (includes SPAM)| +|MAILR                         |Number of read mail messages waiting for current user| 
-|MAILW://x//  |MAILW#//x//         |Number of mail messages waiting for current user number //x// (x=0 for all users)| +|MAILR://x//  |MAILR#//x//       |Number of read mail messages waiting for user number //x// (x=0 for all users)| 
-|MAILP        |                |Number of pending mail messages sent by current user| +|MAILU        |                  |Number of unread mail messages waiting for current user| 
-|MAILP://x//  |MAILP#//x//         |Number of pending mail messages sent by current user number //x// |+|MAILU://x//  |MAILU#//x//       |Number of unread mail messages waiting for user number //x// (x=0 for all users)| 
 +|MAILW        |                  |Total number of mail messages waiting for current user (includes SPAM)| 
 +|MAILW://x//  |MAILW#//x//       |Total number of mail messages waiting for user number //x// (x=0 for all users)| 
 +|MAILP        |                  |Number of pending mail messages sent by current user| 
 +|MAILP://x//  |MAILP#//x//       |Number of pending mail messages sent by user number //x// |
 |MAXCALLS                    |Maximum number of calls/logons per day allowed per user's security level | |MAXCALLS                    |Maximum number of calls/logons per day allowed per user's security level |
 |MAXLINES                    |Maximum number of lines per message allowed per user's security level | |MAXLINES                    |Maximum number of lines per message allowed per user's security level |
Line 293: Line 316:
 |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 301: Line 325:
 |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")|
-|PCR          |                |User's post/call ratio (0-100) | +|PAUSESPIN    |         |Spinning cursor at pause prompts ('On' or 'Off')| 
-|PHONE        |HOMEPHONE, DATA, DATAPHONE |Users's phone number |+|PCR          |                |User's post/call ratio, as a percentage (not capped at 100) | 
 +|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 325: Line 356:
 |TTOTAL               |Total time used by user for all previous calls/logons (in "HH:MM" format) | |TTOTAL               |Total time used by user for all previous calls/logons (in "HH:MM" format) |
 |TUSED        |         |Time used this call (in "H:MM:SS" format) |  |TUSED        |         |Time used this call (in "H:MM:SS" format) |
 +|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) |
 +|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 342: Line 376:
 |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 363: Line 398:
 |QUITCHAR        |        |Print the character that corresponds with a "quit" command key (e.g. ''Q'') | |QUITCHAR        |        |Print the character that corresponds with a "quit" command key (e.g. ''Q'') |
 |EOF                    |End-of-file (stop parsing/displaying) | |EOF                    |End-of-file (stop parsing/displaying) |
-|PAUSE           |MORE    |Force a screen pause (hit a keyprompt+|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 |
-|DELAY://n//         |        |Wait //n// 10ths of a second before continuing | +|GETDIM          |        |Request current (ANSI) terminal dimensions (rows and columns), only when set to auto-detect |  
-|UP://n//            |        |Move cursor up //n// rows                   | +|GETKEY          |        |Wait indefinitely for any key press before continuing | 
-|DOWN://n//          |        |Move cursor down //n// rows                 | +|CONTINUE        |        |Wait indefinitely for any key press before continuing and abort the message/file display if 'N' or 'Q' are typed |  
-|RIGHT://n//         |        |Move cursor right //n// columns             | +|WAIT://n//      |        |Wait up to //n// 10ths of a second for a key press before continuing | 
-|LEFT://n//          |        |Move cursor left //n// columns              |+|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                   | 
 +|DOWN://n//      |        |Move cursor down //n// rows                 | 
 +|RIGHT://n//     |        |Move cursor right //n// columns             | 
 +|LEFT://n//      |        |Move cursor left //n// columns              |
 |GOTOXY://x,y//  |        |Move cursor to //x/////y// coordinate (1-based) | |GOTOXY://x,y//  |        |Move cursor to //x/////y// coordinate (1-based) |
 |POS://x//              |Move cursor to column //x// (1-based) | |POS://x//              |Move cursor to column //x// (1-based) |
Line 384: Line 427:
 |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')| 
 +|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 |
 |SYSONLY                |Toggle off/on visibility for non-sysops | |SYSONLY                |Toggle off/on visibility for non-sysops |
 +|SHOW://ars//    |        |Turn off the display of the following text for users not meeting the specified [[access:requirements|Access Requirements String]] (without spaces). |
 +|SHOW            |        |Turn on the display of following text for all users |
 |FILL://ctext//  |        |Repeat the specified //ctext// (may contain C-escape sequences), filling the current line (to terminal columns - 1)  | |FILL://ctext//  |        |Repeat the specified //ctext// (may contain C-escape sequences), filling the current line (to terminal columns - 1)  |
 |WIDE://text//          |Display specified //text// double-wide, using Unicode "fullwidth" characters if possible | |WIDE://text//          |Display specified //text// double-wide, using Unicode "fullwidth" characters if possible |
Line 395: Line 455:
 |U+//code//,//char// |        | Send a Unicode character code point, specifying fallback character value in hexadecimal (or ''0'' for //none//) | |U+//code//,//char// |        | Send a Unicode character code point, specifying fallback character value in hexadecimal (or ''0'' for //none//) |
 |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//|
 ==== C-Text ==== ==== C-Text ====
  
custom/atcodes.1606342191.txt · Last modified: 2020/11/25 14:09 by digital man
Back to top
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0