Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
custom:atcodes [2020/12/08 22:45] – [User Information] Typos digital man | custom:atcodes [2021/08/15 15:50] – [User Information] Added UDR and UDFR @-codes digital man |
---|
====== 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. |
|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 | |
|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) | | |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 | |
|PTODAY | |Number of messages posted by user today | | |PTODAY | |Number of messages posted by user today | |
|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) | |
|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 | |
|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 key) prompt| | |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 | | |PON |AUTOMORE|Toggle automatic screen pause on | |
|POFF |NOPAUSE |Toggle automatic screen pause off | | |POFF |NOPAUSE |Toggle automatic screen pause off | |
|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 | | |GETKEY | |Wait indefinitely for any key press before continuing | |
|UP://n// | |Move cursor up //n// rows | | |CONTINUE | |Wait indefinitely for any key press before continuing and abort the message/file display if 'N' or 'Q' are typed | |
|DOWN://n// | |Move cursor down //n// rows | | |WAIT://n// | |Wait up to //n// 10ths of a second for a key press before continuing | |
|RIGHT://n// | |Move cursor right //n// columns | | |DELAY://n// | |Wait //n// 10ths of a second before continuing | |
|LEFT://n// | |Move cursor left //n// columns | | |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) | |