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

Next revision
Previous revision
howto:door:ddmsgreader [2023/10/08 14:54] – created Nightfoxhowto:door:ddmsgreader [2023/11/06 11:00] (current) – [Installation & Setup] Added a note about the new ddmr_cfg.js configuration script nightfox
Line 1: Line 1:
 ====== Digital Distortion Message Reader (DDMsgReader) ====== ====== Digital Distortion Message Reader (DDMsgReader) ======
-[[http://digdist.synchro.net/DigDistBBSStuff/DigDistBBSStuff.html|Digital Distortion Message Reader]] is a JavaScript mod for Synchronet for reading messages in Synchronet's messagebases (sub-boards) and personal email.  It is designed to be a drop-in replacement for Synchronet's stock message reader.  The initial motivation for creating Digital Distortion Message Reader was to provide a reader interface where the message is scrollable; this was before Digital Man's [[:module:msglist|message list module]] was created with a similar reader interface.  The purpose of this page is to provide an overview of Digital Distortion Message Reader & its features, and to explain how to install it.  If you want to know how to get & install it, you may skip to the [[http://wiki.synchro.net/howto:door:ddmsgreader#getting_digital_distortion_message_reader|Getting Digital Distortion Message Reader]] section.+[[https://gitlab.synchro.net/main/sbbs/-/tree/master/xtrn/DDMsgReader?ref_type=heads|Digital Distortion Message Reader]] is a JavaScript mod for Synchronet for reading messages in Synchronet's messagebases (sub-boards) and personal email.  It is designed to be a drop-in replacement for Synchronet's stock message reader.  The initial motivation for creating Digital Distortion Message Reader was to provide a reader interface where the message is scrollable; this was before Digital Man's [[:module:msglist|message list module]] was created with a similar reader interface.  The purpose of this page is to provide an overview of Digital Distortion Message Reader & its features, and to explain how to install it.  If you want to know how to get & install it, you may skip to the [[http://wiki.synchro.net/howto:door:ddmsgreader#getting_digital_distortion_message_reader|Getting Digital Distortion Message Reader]] section.
  
 ===== Overview ===== ===== Overview =====
Line 8: Line 8:
   * Message voting is supported, including upvoting & downvoting, and voting on polls   * Message voting is supported, including upvoting & downvoting, and voting on polls
   * Message searching & scanning is supported   * Message searching & scanning is supported
-  * Features an optional "indexed" newscan mode for newscans: Rather than reading each sub-board as new messages are found, it can show a menu of the sub-boards with counts of the total number of messages and new messages. This works only with newscans (not new-to-you scans, etc.)+  * User avatars are displayed when reading messages 
 +  * Supports a customized header ANSI/ASC to be displayed when reading messages 
 +  * Features an optional "indexed" mode for newscans: Rather than reading each sub-board as new messages are found, it can show a menu of the sub-boards with counts of the total number of messages and new messages. This works only with newscans (not new-to-you scans, etc.)
   * Personal twit lists: Individual users can have their own twit lists to filter out messages from/to particular users   * Personal twit lists: Individual users can have their own twit lists to filter out messages from/to particular users
   * User settings allow individual users to toggle options such as indexed newscan mode, listing messages in reverse in the message list, editing their personal twit list, etc.)   * User settings allow individual users to toggle options such as indexed newscan mode, listing messages in reverse in the message list, editing their personal twit list, etc.)
 +  * Depending on the mode, users can change to a different message sub-board while in reader or message list mode (and it can optionally display a header ANSI above the message group/sub-board list)
  
 Some misc. notes: Some misc. notes:
Line 19: Line 22:
 Some example screenshots (scrolling interface): Some example screenshots (scrolling interface):
  
-Message list:+^ Reading a message                                                  ^ Message list                                                ^ 
 +| {{:howto:door:screenshot_ddmsgreader_scrollablereadmode.png?600|}} | {{:howto:door:screenshot_ddmsgreader_messagelist.png?600|}} |
  
-{{:howto:door:screenshot_ddmsgreader_scrollablereadmode.png?600|}}+^ "Indexed" newscan mode                                             ^ User settings                                                ^ 
 +{{:howto:door:screenshot_ddmsgreader_indexednewscan.png?600|}}     | {{:howto:door:screenshot_ddmsgreader_usersettings.png?600|}} |
  
-Reading a message:+^ Changing to another sub-board                                      ^ Changing to another sub-board (with header ANSI)                          ^ 
 +| {{:howto:door:screenshot_ddmsgreader_changesubboard.png?600|}}     | {{:howto:door:screenshot_ddmsgreader_changesubboardwithhdransi.png?600|}} |
  
-{{:howto:door:screenshot_ddmsgreader_messagelist.png?600|}} 
- 
-"Indexed" newscan mode: 
- 
-{{:howto:door:screenshot_ddmsgreader_indexednewscan.png?600|}} 
- 
-User settings: 
- 
-{{:howto:door:screenshot_ddmsgreader_usersettings.png?600|}} 
- 
-===== Getting Digital Distortion Message Reader ===== 
-Digital Distortion Message Reader is in the ''[[dev:Git]]'' and can be downloaded from the its directory within ''[[dir:xtrn]]'' ([[https://gitlab.synchro.net/main/sbbs/-/tree/master/xtrn/DDMsgReader?ref_type=heads|Git repository link]]) 
  
 ===== Minimum Synchronet version and .js scripts ===== ===== Minimum Synchronet version and .js scripts =====
-SlyVote requires Synchronet 3.18 or newer and makes use of the following JavaScript scripts (in the ''[[dir:exec]]''/load directory) :\\ +Digital Distortion Message Reader requires Synchronet 3.18 or newer and makes use of the following JavaScript scripts (in the ''[[dir:exec]]''/load directory). In general, it is good to have the latest versions of these loadable JavaScript scripts. If you see an error that looks like it might be from one of these, a good first step is to update these from the Synchronet Git repository.\\ 
-  * dd_lightbar_menu.js (''[[custom:javascript:lib:ddlightbarmenu.js]]'')+  * 822header.js 
 +  * ansiterm_lib.js 
 +  * attr_conv.js
   * avatar_lib.js   * avatar_lib.js
   * cnflib.js   * cnflib.js
 +  * dd_lightbar_menu.js (''[[custom:javascript:lib:ddlightbarmenu.js]]'')
 +  * graphic.js
 +  * html2asc.js
   * sbbsdefs.js   * sbbsdefs.js
 +  * smbdefs.js
   * text.js   * text.js
 +  * userdefs.js
   * utf8_cp437.js   * utf8_cp437.js
-  * userdefs.js 
-  * html2asc.js 
-  * attr_conv.js 
-  * graphic.js 
-  * smbdefs.js 
-  * smbdefs.js 
-  * 822header.js 
-  * ansiterm_lib.js 
  
 ===== Installation & Setup ===== ===== Installation & Setup =====
Line 60: Line 53:
   * **DDMsgReader.cfg**: The reader configuration file   * **DDMsgReader.cfg**: The reader configuration file
   * **DefaultTheme.cfg**: The default theme file containing colors & some configurable text strings used in the reader   * **DefaultTheme.cfg**: The default theme file containing colors & some configurable text strings used in the reader
 +  * **ddmr_cfg.js**: This is a menu-driven configuration script that you can use to configure DDMsgReader without editing the .cfg file directly. To use, open a command prompt in the DDMsgReader directory and run: jsexec ddmr_cfg
   * **ddmr_lm.js**: Loadable module script for setup in SCFG (only needed for Synchronet 3.19 and earlier, or Synchronet built before 2023-02-20)   * **ddmr_lm.js**: Loadable module script for setup in SCFG (only needed for Synchronet 3.19 and earlier, or Synchronet built before 2023-02-20)
 +
 +==== Getting Digital Distortion Message Reader ====
 +Digital Distortion Message Reader is in the ''[[dev:Git]]'' and can be downloaded from the its directory within ''[[dir:xtrn]]'' ([[https://gitlab.synchro.net/main/sbbs/-/tree/master/xtrn/DDMsgReader?ref_type=heads|Git repository link]])
  
 ==== Loadable Modules setup: For Synchronet 3.20 (& builds from 2023-02-20) and newer  ==== ==== Loadable Modules setup: For Synchronet 3.20 (& builds from 2023-02-20) and newer  ====
Line 67: Line 64:
 As of Synchronet 3.20, Synchronet allows up to 63 characters with a full command-line for a loadable module, allowing DDMsgReader.js to be specified directly as the loadable module for the 4 entries mentioned above. I've noticed that it must include the .js filename extension. For example, if you have DDMsgReader.js in ../xtrn/DDMsgReader, you would specify the following for all 4 of the above loadable module settings: As of Synchronet 3.20, Synchronet allows up to 63 characters with a full command-line for a loadable module, allowing DDMsgReader.js to be specified directly as the loadable module for the 4 entries mentioned above. I've noticed that it must include the .js filename extension. For example, if you have DDMsgReader.js in ../xtrn/DDMsgReader, you would specify the following for all 4 of the above loadable module settings:
  
-Read Mail        ../xtrn/DDMsgReader/DDMsgReader.js+  Read Mail        ../xtrn/DDMsgReader/DDMsgReader.js
   Scan Msgs        ../xtrn/DDMsgReader/DDMsgReader.js   Scan Msgs        ../xtrn/DDMsgReader/DDMsgReader.js
   Scan Subs        ../xtrn/DDMsgReader/DDMsgReader.js   Scan Subs        ../xtrn/DDMsgReader/DDMsgReader.js
Line 173: Line 170:
 The following are example command line strings for running the reader to perform some common message operations.  These command lines can be used with the exec command in Baja, bbs.exec() method in JavaScript, or as set up as an external door in SCFG.  This list is not complete but provides examples of some common message operations.\\ The following are example command line strings for running the reader to perform some common message operations.  These command lines can be used with the exec command in Baja, bbs.exec() method in JavaScript, or as set up as an external door in SCFG.  This list is not complete but provides examples of some common message operations.\\
 \\ \\
-Read messages in the current sub-board:+Read messages in the current sub-board:
   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read
 \\ \\
-List messages in the current sub-board:+List messages in the current sub-board:
   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=list
 \\ \\
-New message scan:+New message scan:
   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read -search=new_msg_scan   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read -search=new_msg_scan
 \\ \\
-New-to-user message scan (scan for new messages to the user):+New-to-user message scan (scan for new messages to the user):
   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read -search=to_user_new_scan   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read -search=to_user_new_scan
 \\ \\
-Scan for all messages to the user:+Scan for all messages to the user:
   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read -search=to_user_all_scan   ?../xtrn/DDMsgReader/DDMsgReader.js -startMode=read -search=to_user_all_scan
 \\ \\
-Start in indexed reader mode:+Start in indexed reader mode:
   ?../xtrn/DDMsgReader/DDMsgReader.js -indexedMode   ?../xtrn/DDMsgReader/DDMsgReader.js -indexedMode
 \\ \\
-Text (keyword) search in the current sub-board, and list the messages found:+Text (keyword) search in the current sub-board, and list the messages found:
   ?../xtrn/DDMsgReader/DDMsgReader.js -search=keyword_search -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -search=keyword_search -startMode=list
 \\ \\
-'From' name message search in the current sub-board, and list messages found:+'From' name message search in the current sub-board, and list messages found:
   ?../xtrn/DDMsgReader/DDMsgReader.js -search=from_name_search -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -search=from_name_search -startMode=list
 \\ \\
-'To' name message search in the current sub-board, and list messages found:+'To' name message search in the current sub-board, and list messages found:
   ?../xtrn/DDMsgReader/DDMsgReader.js -search=to_name_search -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -search=to_name_search -startMode=list
 \\ \\
-Search for all messages to the logged-in user in the current sub-board, and list the messages found:+Search for all messages to the logged-in user in the current sub-board, and list the messages found:
   ?../xtrn/DDMsgReader/DDMsgReader.js -search=to_user_search -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -search=to_user_search -startMode=list
 \\ \\
-Read personal email:+Read personal email:
   ?../xtrn/DDMsgReader/DDMsgReader.js -personalEmail -startMode=read   ?../xtrn/DDMsgReader/DDMsgReader.js -personalEmail -startMode=read
 \\ \\
-List personal email:+List personal email:
   ?../xtrn/DDMsgReader/DDMsgReader.js -personalEmail -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -personalEmail -startMode=list
 \\ \\
-Read sent personal email:+Read sent personal email:
   ?../xtrn/DDMsgReader/DDMsgReader.js -personalEmailSent -startMode=read   ?../xtrn/DDMsgReader/DDMsgReader.js -personalEmailSent -startMode=read
 \\ \\
-Search personal email with a keyword, and start with the message list:+Search personal email with a keyword, and start with the message list:
   ?../xtrn/DDMsgReader/DDMsgReader.js -search=keyword_search -personalEmail -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -search=keyword_search -personalEmail -startMode=list
  
 Alternately, for searching personal email with a keyword, you can specify -subBoard=mail instead of -personalEmail: Alternately, for searching personal email with a keyword, you can specify -subBoard=mail instead of -personalEmail:
   ?../xtrn/DDMsgReader/DDMsgReader.js -search=keyword_search -subBoard=mail -startMode=list   ?../xtrn/DDMsgReader/DDMsgReader.js -search=keyword_search -subBoard=mail -startMode=list
 +
 +
 +==== text.dat lines used in Digital Distortion Message Reader ====
 +This message reader uses the following lines from Synchronet's [[custom:text.dat|text.dat file]] (located in the ''[[dir:ctrl]]'' directory):
 +  * 10 (Email)
 +  * 30 (Aborted)
 +  * 54 (DeleteMailQ)
 +  * 390 (UnknownUser)
 +  * 501 (SelectItemHdr)
 +  * 503 (SelectItemWhich)
 +  * 563 (Pause)
 +  * 621 (SubGroupOrAll)
 +  * 662 (DownloadAttachedFileQ)
 +  * 759 (CantReadSub)
 +  * 779 (VotingNotAllowed)
 +  * 780 (VotedAlready)
 +  * 781 (R_Voting)
 +  * 783 (VoteMsgUpDownOrQuit)
 +  * 787 (PollVoteNotice)