enigma-bbs/modding/node-msg.html

2383 lines
21 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" sizes="16x16" href="/enigma-bbs/assets/images/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="/enigma-bbs/assets/images/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="32x32" href="/enigma-bbs/assets/images/favicon-32x32.png">
<link rel="stylesheet" href="/enigma-bbs/assets/css/style.css?v=">
<!-- Begin Jekyll SEO tag v2.7.1 -->
<title>Node to Node Messaging | ENiGMA½ BBS Software</title>
<meta name="generator" content="Jekyll v4.2.1" />
<meta property="og:title" content="Node to Node Messaging" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="The Node to Node Messaging Module The node to node messaging (node_msg) module allows users to send messages to one or more users on different nodes. Messages delivered to nodes follow standard User Interruption rules." />
<meta property="og:description" content="The Node to Node Messaging Module The node to node messaging (node_msg) module allows users to send messages to one or more users on different nodes. Messages delivered to nodes follow standard User Interruption rules." />
<meta property="og:site_name" content="ENiGMA½ BBS Software" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2022-10-01T18:23:57+00:00" />
<meta name="twitter:card" content="summary" />
<meta property="twitter:title" content="Node to Node Messaging" />
<script type="application/ld+json">
{"datePublished":"2022-10-01T18:23:57+00:00","description":"The Node to Node Messaging Module The node to node messaging (node_msg) module allows users to send messages to one or more users on different nodes. Messages delivered to nodes follow standard User Interruption rules.","mainEntityOfPage":{"@type":"WebPage","@id":"/enigma-bbs/modding/node-msg.html"},"url":"/enigma-bbs/modding/node-msg.html","@type":"BlogPosting","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"/enigma-bbs/assets/images/enigma-logo.png"}},"headline":"Node to Node Messaging","dateModified":"2022-10-01T18:23:57+00:00","@context":"https://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>
<body>
<div id="container">
<div class="sidebar" id="sidebar">
<hr class="mobile-divide" />
<div class="container">
<a href="/enigma-bbs/"><img src="/enigma-bbs/assets/images/enigma-logo.png" class="logo" alt="Enigma logo" /></a>
</div>
<ul>
<li>Installation</li>
<ul>
<li><a href="/enigma-bbs/installation/installation-methods.html">Installation Methods</a></li>
<li><a href="/enigma-bbs/installation/install-script.html">Install Script</a></li>
<li><a href="/enigma-bbs/installation/docker.html">Docker</a></li>
<li><a href="/enigma-bbs/installation/manual.html">Manual Installation</a></li>
<li>OS / Hardware Specific</li>
<ul>
<li><a href="/enigma-bbs/installation/hardware/rpi.html">Raspberry Pi</a></li>
<li><a href="/enigma-bbs/installation/hardware/windows.html">Installation Under Windows</a></li>
</ul>
<li><a href="/enigma-bbs/installation/network.html">Network Setup</a></li>
<li><a href="/enigma-bbs/installation/testing.html">Testing Your Installation</a></li>
<li><a href="/enigma-bbs/installation/production.html">Production Installation</a></li>
</ul>
<li>Configuration</li>
<ul>
<li><a href="/enigma-bbs/configuration/creating-config.html">Creating Initial Config Files</a></li>
<li><a href="/enigma-bbs/configuration/sysop-setup.html">SysOp Setup</a></li>
<li><a href="/enigma-bbs/configuration/config-files.html">Configuration Files</a></li>
<li><a href="/enigma-bbs/configuration/config-hjson.html">System Configuration</a></li>
<li><a href="/enigma-bbs/configuration/hjson.html">HJSON Config Files</a></li>
<li><a href="/enigma-bbs/configuration/menu-hjson.html">Menu HSJON</a></li>
<li><a href="/enigma-bbs/configuration/directory-structure.html">Directory Structure</a></li>
<li><a href="/enigma-bbs/configuration/external-binaries.html">External Support Binaries</a></li>
<li><a href="/enigma-bbs/configuration/archivers.html">Archivers</a></li>
<li><a href="/enigma-bbs/configuration/file-transfer-protocols.html">File Transfer Protocols</a></li>
<li><a href="/enigma-bbs/configuration/email.html">Email</a></li>
<li><a href="/enigma-bbs/configuration/colour-codes.html">Colour Codes</a></li>
<li><a href="/enigma-bbs/configuration/event-scheduler.html">Event Scheduler</a></li>
<li><a href="/enigma-bbs/configuration/acs.html">Access Condition System (ACS)</a></li>
<li><a href="/enigma-bbs/configuration/security.html">Security</a></li>
</ul>
<li>Miscellaneous</li>
<ul>
<li><a href="/enigma-bbs/misc/user-interrupt.html">User Interruptions</a></li>
</ul>
<li>File Base</li>
<ul>
<li><a href="/enigma-bbs/filebase/index.html">About File Areas</a></li>
<li><a href="/enigma-bbs/filebase/first-file-area.html">Configuring a File Base</a></li>
<li><a href="/enigma-bbs/filebase/acs.html">ACS</a></li>
<li><a href="/enigma-bbs/filebase/uploads.html">Uploads</a></li>
<li><a href="/enigma-bbs/filebase/web-access.html">Web Access</a></li>
<li><a href="/enigma-bbs/filebase/tic-support.html">TIC Support</a></li>
<li><a href="/enigma-bbs/filebase/network-mounts-and-symlinks.html">Network Mounts &amp; Symlinks</a></li>
</ul>
<li>Message Areas</li>
<ul>
<li><a href="/enigma-bbs/messageareas/configuring-a-message-area.html">Message Base</a></li>
<li><a href="/enigma-bbs/messageareas/message-networks.html">Message Networks</a></li>
<li><a href="/enigma-bbs/messageareas/bso-import-export.html">BSO Import / Export</a></li>
<li><a href="/enigma-bbs/messageareas/netmail.html">Netmail</a></li>
<li><a href="/enigma-bbs/messageareas/qwk.html">QWK Support</a></li>
<li><a href="/enigma-bbs/messageareas/ftn.html">FidoNet-Style Networks (FTN)</a></li>
</ul>
<li>Art</li>
<ul>
<li><a href="/enigma-bbs/art/general.html">General Art Information</a></li>
<li><a href="/enigma-bbs/art/themes.html">Themes</a></li>
<li><a href="/enigma-bbs/art/mci.html">MCI Codes</a></li>
<li>Views</li>
<ul>
<li><a href="/enigma-bbs/art/views/button_view.html">Button View</a></li>
<li><a href="/enigma-bbs/art/views/edit_text_view.html">Edit Text View</a></li>
<li><a href="/enigma-bbs/art/views/full_menu_view.html">Full Menu View</a></li>
<li><a href="/enigma-bbs/art/views/horizontal_menu_view.html">Horizontal Menu View</a></li>
<li><a href="/enigma-bbs/art/views/mask_edit_text_view.html">Mask Edit Text View</a></li>
<li><a href="/enigma-bbs/art/views/multi_line_edit_text_view.html">Multi Line Edit Text View</a></li>
<li><a href="/enigma-bbs/art/views/predefined_label_view.html">Predefined Label View</a></li>
<li><a href="/enigma-bbs/art/views/spinner_menu_view.html">Spinner Menu View</a></li>
<li><a href="/enigma-bbs/art/views/text_view.html">Text View</a></li>
<li><a href="/enigma-bbs/art/views/toggle_menu_view.html">Toggle Menu View</a></li>
<li><a href="/enigma-bbs/art/views/vertical_menu_view.html">Vertical Menu View</a></li>
</ul>
</ul>
<li>Servers</li>
<ul>
<li>Login Servers</li>
<ul>
<li><a href="/enigma-bbs/servers/loginservers/telnet.html">Telnet Server</a></li>
<li><a href="/enigma-bbs/servers/loginservers/ssh.html">SSH Server</a></li>
<li><a href="/enigma-bbs/servers/loginservers/websocket.html">Web Socket / Web Interface Server</a></li>
</ul>
<li>Content Servers</li>
<ul>
<li><a href="/enigma-bbs/servers/contentservers/web-server.html">Web Server</a></li>
<li><a href="/enigma-bbs/servers/contentservers/gopher.html">Gopher Server</a></li>
<li><a href="/enigma-bbs/servers/contentservers/nntp.html">NNTP Server</a></li>
</ul>
</ul>
<li>Modding</li>
<ul>
<li><a href="/enigma-bbs/modding/local-doors.html">Local Doors</a></li>
<li><a href="/enigma-bbs/modding/door-servers.html">Door Servers</a></li>
<li><a href="/enigma-bbs/modding/telnet-bridge.html">Telnet Bridge</a></li>
<li><a href="/enigma-bbs/modding/existing-mods.html">Existing Mods</a></li>
<li><a href="/enigma-bbs/modding/file-area-list.html">File Area List</a></li>
<li><a href="/enigma-bbs/modding/last-callers.html">Last Callers</a></li>
<li><a href="/enigma-bbs/modding/whos-online.html">Who's Online</a></li>
<li><a href="/enigma-bbs/modding/user-list.html">User List</a></li>
<li><a href="/enigma-bbs/modding/msg-conf-list.html">Message Conference List</a></li>
<li><a href="/enigma-bbs/modding/msg-area-list.html">Message Area List</a></li>
<li><a href="/enigma-bbs/modding/bbs-list.html">BBS List</a></li>
<li><a href="/enigma-bbs/modding/rumorz.html">Rumorz</a></li>
<li><a href="/enigma-bbs/modding/file-transfer-protocol-select.html">File Transfer Protocol Select</a></li>
<li><a href="/enigma-bbs/modding/onelinerz.html">Onelinerz</a></li>
<li><a href="/enigma-bbs/modding/show-art.html">The Show Art Module</a></li>
<li><a href="/enigma-bbs/modding/file-base-download-manager.html">File Base Download Manager</a></li>
<li><a href="/enigma-bbs/modding/file-base-web-download-manager.html">File Base Web Download Manager</a></li>
<li><a href="/enigma-bbs/modding/set-newscan-date.html">Set Newscan Date Module</a></li>
<li class="active-nav">Node to Node Messaging</li>
<li><a href="/enigma-bbs/modding/top-x.html">TopX</a></li>
<li><a href="/enigma-bbs/modding/user-2fa-otp-config.html">2FA/OTP Config</a></li>
<li><a href="/enigma-bbs/modding/autosig-edit.html">Auto Signature Editor</a></li>
<li><a href="/enigma-bbs/modding/menu-modules.html">Menu Modules</a></li>
</ul>
<li>Administration</li>
<ul>
<li><a href="/enigma-bbs/admin/administration.html">Administration</a></li>
</ul>
<li>Modding</li>
<ul>
<li><a href="/enigma-bbs/modding/wfc.html">Waiting For Caller (WFC)</a></li>
</ul>
<li>Administration</li>
<ul>
<li><a href="/enigma-bbs/admin/oputil.html">oputil</a></li>
<li><a href="/enigma-bbs/admin/updating.html">Updating</a></li>
</ul>
<li>Troubleshooting</li>
<ul>
<li><a href="/enigma-bbs/troubleshooting/monitoring-logs.html">Monitoring Logs</a></li>
</ul>
</ul>
</div>
<div class="main_area">
<div class="container">
<section id="main_content">
<div class="PageNavigation">
<a class="btn" style="float:left;margin-right: 20px;" href="/enigma-bbs/modding/set-newscan-date.html">&laquo; Set Newscan Date Module</a>
<a href="#sidebar" class="btn menu_button">MENU</a>
<a class="btn" style="float: right;margin-left: 20px" href="/enigma-bbs/modding/top-x.html">TopX &raquo;</a>
<br clear="both" />
</div>
<div class="page">
<h1 class="page-title">Node to Node Messaging</h1>
<h2 id="the-node-to-node-messaging-module">The Node to Node Messaging Module</h2>
<p>The node to node messaging (<code class="language-plaintext highlighter-rouge">node_msg</code>) module allows users to send messages to one or more users on different nodes. Messages delivered to nodes follow standard <a href="/enigma-bbs/misc/user-interrupt.html">User Interruption</a> rules.</p>
<h2 id="configuration">Configuration</h2>
<h3 id="config-block">Config Block</h3>
<p>Available <code class="language-plaintext highlighter-rouge">config</code> block entries:</p>
<ul>
<li><code class="language-plaintext highlighter-rouge">dateTimeFormat</code>: <a href="https://momentjs.com">moment.js</a> style format. Defaults to current theme → system <code class="language-plaintext highlighter-rouge">short</code> format.</li>
<li><code class="language-plaintext highlighter-rouge">messageFormat</code>: Format string for sent messages. Defaults to <code class="language-plaintext highlighter-rouge">Message from {fromUserName} on node {fromNodeId}:\r\n{message}</code>. The following format object members are available:
<ul>
<li><code class="language-plaintext highlighter-rouge">fromUserName</code>: Username who sent the message.</li>
<li><code class="language-plaintext highlighter-rouge">fromRealName</code>: Real name of user who sent the message.</li>
<li><code class="language-plaintext highlighter-rouge">fromNodeId</code>: Node ID where the message was sent from.</li>
<li><code class="language-plaintext highlighter-rouge">message</code>: User entered message. May contain pipe color codes.</li>
<li><code class="language-plaintext highlighter-rouge">timestamp</code>: A timestamp formatted using <code class="language-plaintext highlighter-rouge">dateTimeFormat</code> above.</li>
</ul>
</li>
<li><code class="language-plaintext highlighter-rouge">art</code>: Block containing:
<ul>
<li><code class="language-plaintext highlighter-rouge">header</code>: Art spec for header to display with message.</li>
<li><code class="language-plaintext highlighter-rouge">footer</code>: Art spec for footer to display with message.</li>
</ul>
</li>
</ul>
<h2 id="theming">Theming</h2>
<h3 id="mci-codes">MCI Codes</h3>
<ol>
<li>Node selection. Must be a View that allows lists such as <code class="language-plaintext highlighter-rouge">SpinnerMenuView</code> (<code class="language-plaintext highlighter-rouge">%SM1</code>), <code class="language-plaintext highlighter-rouge">HorizontalMenuView</code> (<code class="language-plaintext highlighter-rouge">%HM1</code>), etc.</li>
<li>Message entry (<code class="language-plaintext highlighter-rouge">%ET2</code>).</li>
<li>Message preview (<code class="language-plaintext highlighter-rouge">%TL3</code>). A rendered (that is, pipe codes resolved) preview of the text in <code class="language-plaintext highlighter-rouge">%ET2</code>.</li>
</ol>
<p>10+: Custom using <code class="language-plaintext highlighter-rouge">itemFormat</code>. See below.</p>
<h3 id="item-format">Item Format</h3>
<p>The following <code class="language-plaintext highlighter-rouge">itemFormat</code> object is provided for MCI 1 and 10+ for the currently selected item/node:</p>
<ul>
<li><code class="language-plaintext highlighter-rouge">text</code>: Node ID or “-ALL-“ (All nodes).</li>
<li><code class="language-plaintext highlighter-rouge">node</code>: Node ID or <code class="language-plaintext highlighter-rouge">-1</code> in the case of all nodes.</li>
<li><code class="language-plaintext highlighter-rouge">userId</code>: User ID.</li>
<li><code class="language-plaintext highlighter-rouge">action</code>: Users action.</li>
<li><code class="language-plaintext highlighter-rouge">userName</code>: Username.</li>
<li><code class="language-plaintext highlighter-rouge">realName</code>: Real name.</li>
<li><code class="language-plaintext highlighter-rouge">location</code>: Users location.</li>
<li><code class="language-plaintext highlighter-rouge">affils</code>: Affiliations.</li>
<li><code class="language-plaintext highlighter-rouge">timeOn</code>: How long the user has been online (approx).</li>
</ul>
</div>
<div class="PageNavigation">
<a class="btn" style="float:left;margin-right: 20px;" href="/enigma-bbs/modding/set-newscan-date.html">&laquo; Set Newscan Date Module</a>
<a class="btn" style="float: right;margin-left: 20px" href="/enigma-bbs/modding/top-x.html">TopX &raquo;</a>
<br clear="both" />
</div>
</section>
</div>
</div>
</div>
</body>
</html>