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
Next revisionBoth sides next revision
module:tickit [2019/02/11 10:10] – [Tickit] information about addfiles being executed wkitty42module:tickit [2019/07/29 20:11] – [nodelist_handler.js] clarify what file name the nodelist handler will save the file to and where wkitty42
Line 62: Line 62:
   * ''Handler'' Set to the filename of a handler script as defined below.  If present, this overrides the global Handler, they do not both run.   * ''Handler'' Set to the filename of a handler script as defined below.  If present, this overrides the global Handler, they do not both run.
   * ''HandlerArg'' a string that is passed to the handler function.   * ''HandlerArg'' a string that is passed to the handler function.
 +
 +=== Sample FDN Area Definition ===
 +
 +The following is a sample FDN Area Definition for the DAILYLIST FDN.
 +
 +<code>
 +[DAILYLIST]
 +Dir=FDIST-DAILYLIS
 +Links=1:261/38,1:123/115,1:123/755,1:135/300,1:3634/12.73,1:3634/27
 +Handler=tickit/nodelist_handler.js
 +HandlerArg={"domain":"fidonet", "match":"Z1DAILY.Z*", "nlmatch":"Z1DAILY.*"}
 +SourceAddress=1:18/0
 +AKAMatching=false
 +Uploader=DAILYLIST File Dist
 +</code>
 +
 +The Dir line contains the ''internal code'' for this area. In this case, ''FDIST-'' is the internal code for the file library and ''DAILYLIS'' is the internal code for the specific area. Both are used to determine the full ''internal code'' for the area. You do not have to define a code for the library if you do not want to but you must have an internal code for the area defined. These ''internal codes'' should be unique between areas or you will have them crosslinked and be putting files in the wrong area.
 +
 +The Links line should contain at least one FTN address. This will be the address of your feed for the FDNs you carry. Every system that you link this area to will be listed as shown above. No spaces are allowed and each FTN address must be complete. I generally put the addresses in numerical order with the first address listed being the main linked system feeding the area. This is not set in stone. You can list the addresses in any order you like.
 +
 +See the below [[tickit#nodelist_handlerjs|nodelist_handler]] subsection in the [[tickit#included_handler_scripts|Handler Scripts]] section for the definition of what the file handler related lines do.
 +
 +The SourceAddress is an override field if you want this area to be distributed from a different FTN address than your main one. Your main FTN address is the first one listed in scfg in the fidonet network configuration section. Each of your fidonet technology addresses will be listed in that same section all together.
 +
 +AKAMatching is another override for which of your addresses will be used if you have this area connected to more than one system. AKAMatching determines if your main address will be used, if one of your SourceAddress overrides will be used, or if your AKA will be matched to the closest of your addresses for the destination system.
 +
 +**Example:** If you have addresses 1:3634/12, 1:18/0, 1:123/0, and 1:3634/0 and you want this DAILYLIST FDN to be sent to each of the above listed links with the closest matching of your four FTN addresses, you would set AKAMatching=true.
 +
 +The following table shows which of these example FTN addresses will be used for each destination system based on the three address related options provided.
 +
 +^     AKAMatching Table   ^^
 +| ||
 +^Global SourceAddress : 1:3634/12  ^^
 +^DAILYLIST SourceAddress : [blank]  ^^
 +^AKAMatching : false  ^^
 +| ||
 +^  Destination System  ^  Selected AKA  ^
 +|  1:261/38  |  1:3634/12  |
 +|  1:123/115  |  1:3634/12  |
 +|  1:123/755  |  1:3634/12  |
 +|  1:135/300  |  1:3634/12  |
 +|  1:3634/12.73  |  1:3634/12  |
 +|  1:3634/27  |  1:3634/12  |
 +| ||
 +^Global SourceAddress : 1:3634/12  ^^
 +^DAILYLIST SourceAddress : 1:18/ ^^
 +^AKAMatching : false  ^^
 +| ||
 +|  1:261/38  |  1:18/ |
 +|  1:123/115  |  1:18/ |
 +|  1:123/755  |  1:18/ |
 +|  1:135/300  |  1:18/ |
 +|  1:3634/12.73  |  1:18/ |
 +|  1:3634/27  |  1:18/ |
 +| ||
 +^Global SourceAddress : 1:3634/12  ^^
 +^DAILYLIST SourceAddress : 1:18/ ^^
 +^AKAMatching : true  ^^
 +| ||
 +|  1:261/38  |  1:18/ |
 +|  1:123/115  |  1:123/ |
 +|  1:123/755  |  1:123/ |
 +|  1:135/300  |  1:18/ |
 +|  1:3634/12.73  |  1:3634/12  |
 +|  1:3634/27  |  1:3634/ |
 +
  
 ==== Handler Scripts ==== ==== Handler Scripts ====
Line 111: Line 177:
 Dir=DAILYLIST Dir=DAILYLIST
 Handler=tickit/nodelist_handler.js Handler=tickit/nodelist_handler.js
-HandlerArg={"domain":"fidonet", "match":"NODELIST.Z*", "nlmatch":"nodelist.*"}+HandlerArg={"domain":"fidonet", "match":"Z1DAILY.Z*", "nlmatch":"Z1DAILY.*"}
 </code> </code>
  
Line 119: Line 185:
   * ''match'' the filespec for nodelist archives in this area.  If the incoming file doesn't match this, the nodelist is not updated.  This defaults to '*.*' on Windows and '*' everywhere else.   * ''match'' the filespec for nodelist archives in this area.  If the incoming file doesn't match this, the nodelist is not updated.  This defaults to '*.*' on Windows and '*' everywhere else.
   * ''nlmatch'' the filespec for the nodelist file inside the archive.  There must be exactly one file matching this filespec inside the archive, or the nodelist will not be updated.  .  This defaults to '*.*' on Windows and '*' everywhere else.   * ''nlmatch'' the filespec for the nodelist file inside the archive.  There must be exactly one file matching this filespec inside the archive, or the nodelist will not be updated.  .  This defaults to '*.*' on Windows and '*' everywhere else.
 +
 +**NOTE:** This handler will attempt to extract the nlmatch file from the match archive and write it to the directory and file name as defined in echocfg in the Domains definition section. The file will always be saved to the defined name and it will not be changed unless you change the Domain definition in echocfg. The domain argument must also be one defined in echocfg.
  
 ===== See Also ===== ===== See Also =====