home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1998 October / PCO_1098.ISO / filesbbs / os2 / xm198os2.arj / XM198OS2.ZIP / CONFIGS.ZIP / REQUEST.CFG < prev    next >
Encoding:
Text File  |  1995-01-31  |  19.0 KB  |  379 lines

  1. ; =============================================================================
  2. ; REQUEST.CFG  REQCOMP config file            Xenia Version 1.98 - January 1995
  3. ; =============================================================================
  4. ; The request processing is only active in Xenia if the 'request' option is set
  5. ; up in XENREQ.CFG, and if the following path points to a directory where the
  6. ; necessary files named REQUEST.IDX and REQUEST.DIR can be found.
  7. ; These two files are created by REQCOMP.EXE/REQCOMP2.EXE, a seperate utility
  8. ; that uses this REQUEST.CFG file for its config; REQCOMP doesn't use XENIA.CFG
  9. ; All information about requestable files is contained in the IDX/DIR files
  10. ; (Xenia Mailer doesn't scan directories on disk for requested files), so it is
  11. ; advisable to run REQCOMP at least once a day, and after major changes.
  12. ;
  13. ; Everything after the first ; on a line is regarded as a comment, and ignored.
  14.  
  15.  
  16. ; -----------------------------------------------------------------------------
  17. ; There are a number of commands available, each prefixed with a colon (:).
  18. ; Make sure you don't get semicolons mixed up with colons.... be careful.
  19. ;
  20. ; First the security command.... :REQLEVEL <level> <count-limit> <size-limit>
  21. ; Request security levels other than 0, 1, 2 and 5 are not currently in use.
  22. ; What security level is granted to which caller is explained in the example
  23. ; section further along in this file.
  24. ; REQCOMP doesn't care where in this file a :REQLEVEL line is located, please
  25. ; note however that the default values for any level are 0 files and 0 K.
  26. ;
  27. ; Now for the other commands: They aren't toggles!  Once specified, they remain
  28. ; in effect until a :END command is encountered.  Exception to this are the
  29. ; MINLEVEL and MAXLEVEL options, which have defaults of 0 and 10 respectively,
  30. ; and remain in effect until a new level is specified further along the file.
  31. ;
  32. ; :MAGIC   The following names in the cfg-file are so called magic filenames.
  33. ;          If a magic is requested, all the files listed on the line are
  34. ;          transmitted. Multiple filespecs with wildcards are allowed. Unless
  35. ;          changed with other options, a magic is counted as one file, and
  36. ;          doesn't check/modify size or time limits. If the filespecs are too
  37. ;          long for one line, you may use more lines with the same MAGIC name.
  38. ;          Xenia keeps on sending the files until the name of the magic does
  39. ;          no longer match the requested name.  In fact, REQCOMP internally
  40. ;          uses more index records if more than one filespec appear on a line.
  41. ;          Note: to define a single line as magic, prefix the magic name by a @
  42. ;
  43. ; :SERVICE Service requests are special internal commands or external programs.
  44. ;          If the name is requested, the rest of the line is passed to DOS for
  45. ;          execution.  There are a number of 'macros' that may be specified on
  46. ;          these command-lines, and these macros will be expanded when the
  47. ;          service is executed.  Macros are explained further on in this file.
  48. ;          All services are allowed to append to the Xenia logfile.
  49. ;          There are four special services, which Xenia recognizes by the
  50. ;          first word of the rest of the line in REQUEST.CFG, ie. the name a
  51. ;          requestor needs to use could be something quite different.
  52. ;          BBS       If BBS access is allowed in the current event, Xenia will
  53. ;                    start the BBS (the first 'EXTAPP' in XENBBS.CFG) after
  54. ;                    this mailsession, and send the caller a signal that he
  55. ;                    should switch to terminalmode: a calling Xenia recognizes
  56. ;                    this signal and acts accordingly.
  57. ;          SYSOP-BBS Like BBS, but doesn't check the current event flags, so
  58. ;                    this one can be used to break through a non-BBS event.
  59. ;          DOWN      Sets the current event to 0.  This means that after this
  60. ;                    mailsession, Xenia Mailer will not answer the phone or
  61. ;                    dial out - until the sysop locally re-enables the events.
  62. ;                    This of course only has effect if Xenia doesn't exit for
  63. ;                    received packets or files.  Please note that a .REQ file
  64. ;                    doesn't count as an attached file.
  65. ;          DOS       This is the most dangerous option of all - Xenia will
  66. ;                    remember the command-line, and call it after the
  67. ;                    mailsession - instead of the BBS! Xenia will use the
  68. ;                    options as specified in the first 'EXTAPP' line in
  69. ;                    XENBBS.CFG, to select whether to SPAWN or EXIT to the
  70. ;                    batchfile.
  71. ;                    The danger of this command lies in the fact that if you
  72. ;                    don't set it up right, you will drop out of your
  73. ;                    batchfile..... YOU alone are responsible for getting back!
  74. ; NOTE: to define a single line as service, prefix the name by + or $
  75. ;
  76. ; If neither MAGIC or SERVICE is active, normal file requests are assumed.
  77. ; If MAGIC and SERVICE are both activated, MAGIC takes precedence.
  78. ;
  79. ; Whatever the type of request, a ! after a name specifies a request password.
  80. ; Only the first 6 character are significant, and are treated case insensitive.
  81. ; Note that there is one(1) space before the !, and none(0) after!
  82. ;
  83. ; Other options which modify the way a request is treated:
  84. ; :LATEST   If this option is active, REQCOMP will only put the file with the
  85. ;           latest timestamp in the index file. This is nice if you want to
  86. ;           make available the latest nodelist, fidonews etc via a magic....
  87. ; :BRKEXACT If there is an exact match between the name in this file and the
  88. ;           request, Xenia will stop searching after processing this line.
  89. ; :BRKHIT   Similar, but stop searching after an actual matching file is found.
  90. ; :NOWILDS  Only check this name if requested name contains no ? or * chars.
  91. ; :EXACT    Only check this name if there is an exact match with request.
  92. ; :NOCOUNT  Disable the file counter - this means it is neither checked, nor
  93. ;           decreased when a file/magic is sent or a service is processed.
  94. ; :NOSIZE   Like above, but disables the counter of filesize in K.
  95. ; :NOTIMER  Ditto, but disable checking for enough transmission time.
  96. ;           At the start of requests, Xenia finds the next event which is
  97. ;           either external, no-request, or has new event tag.
  98. ; :NORESP   Prevents Xenia from writing a response to following requests.
  99. ; :NOEVENT  Don't check whether the current event allows requests or not.
  100. ; :GROUP    Meant for use with GroupMail<tm>, this option activates:
  101. ;           BRKEXACT, BRKHIT, NOCOUNT, NOSIZE, NOTIMER, NORESP.
  102. ;
  103. ; :MINLEVEL <level> Only check following lines one if the requestor has at
  104. ;                   least the specified level. Stays active until changed.
  105. ; :MAXLEVEL <level> Ditto, but only check if level is not above given level.
  106.  
  107.  
  108. ; -----------------------------------------------------------------------------
  109. ; Macros: each one is prefixed with the character % (percentage sign).
  110. ;
  111. ; The following macros are available:
  112. ; %OURNAME      The name of your node (XENIA*.CFG 'system' option).
  113. ; %OURSYSOP     Your own name (XENIA*.CFG 'sysop' option).
  114. ; %OURADDRESS   Your address in 4D: zone:net/node[.point]
  115. ;               This is your current alias, not your primary number!
  116. ; %TASK         Task number for multiline systems, otherwise 0.
  117. ; %PORT         Communications port used (XENIA*.CFG 'port' option).
  118. ; %DEVICE       Communications device used (COM1, COM2, ISDN, etc).
  119. ; %HANDLE       Communications handle used (FOSSIL port, or OS/2 file handle).
  120. ; %LOCKED       Locked speed of comport, if not locked then same as linespeed.
  121. ; %SPEED        Actual communication speed of the line, not any LOCKed speed.
  122. ; %RELIABLE     "/REL" or "/ARQ" modem string in case of a reliable connection,
  123. ;               otherwise "/NONE".
  124. ; %CALLERID     CallerID information, or "N/A".
  125. ; %EVTTIME      Time till next event (just like the time figure used
  126. ;               in XENAP*.BAT).
  127. ; %PROTOCOL     "HYDRA", "ZMODEM", or "OTHER" (meaning Xmodem or SEAlink).
  128. ;               As Xenia de-initializes everything (including the FOSSIL on
  129. ;               PC's), the service is free to send information via the comport.
  130. ;               The service will be called in the middle of a SEAlink or Zmodem
  131. ;               send session, so no end-of-batch sequences should be
  132. ;               transmitted!
  133. ;               In case of HYDRA: don't mess, and return to Xenia VERY quickly!
  134. ; %OUTFILES     Filename of list of files which will be sent after all reqs
  135. ;               have been processed.  A service may append to this list,
  136. ;               optionally prefixed with a # for truncate after sending,
  137. ;               ^ or . for delete, and if a second name is present on the line,
  138. ;               it is used as an alias name to send to the other side, ie. if
  139. ;               the name the remote system should receive the file under is
  140. ;               different from what it is called locally.
  141. ; %OUTDATA      Name of file in which text may be placed by a service.  This
  142. ;               text is appended to the response-message after the info on the
  143. ;               service from Xenia itself it written.  The text is always used,
  144. ;               even if NORESP is in effect!
  145. ; %CURTIME      Current time in string format: "Day dd Mon yy hh:mm".
  146. ; %XENVERSION   Version of Xenia used, ie. "1.98 OS/2"
  147. ;               For compatibility reasons, macro %TBVERSION is also accepted.
  148. ; %THEIRNAME    Name of their node as sent in EMSI/YooYoo, or in case of an
  149. ;               FTS-0001 session, "Unknown system name".
  150. ; %THEIRSYSOP   Name of the other node's sysop, or "Sysop" if FTS-0001.
  151. ; %THEIRADDRESS Their 4D address zone:net/node[.point]
  152. ; %REQLEVEL     Request level of the other side as granted by Xenia,
  153. ;               according to the :REQLEVEL commands in this file.
  154. ; %COUNTLIMIT   Limit of number of files for their request level.
  155. ; %SIZELIMIT    Limit size total of files for their request level.
  156. ; %TIMELIMIT    Request timelimit, regarding future events etc.
  157. ; %COUNTTOTAL   Total number of requested files transmitted.  This includes
  158. ;               files which had NORESP active!
  159. ; %SIZETOTAL    Ditto, but total size of all files transmitted.
  160. ; %TIMETOTAL    Total estimated transfer time for all requested files,
  161. ;               considering SIZETOTAL and SPEED.
  162. ; %REQNAME      Name of request as received from other side.
  163. ; %REQUPDATE    Long integer, <0 = update for older files, >0 = update for
  164. ;               newer files, 0 = normal request.
  165. ; %REQTIME      String representation of the %REQUPDATE long integer, in the
  166. ;               format "dd Mon yy  hh:mm".
  167. ; %REQPASSWORD  Password of request as received, or empty string.
  168. ; %REQOPTIONS   Rest of the line of the request - usually parms for services.
  169. ; %FILENAME     Name of most recent requested file sent.  This filename is
  170. ;               formatted in fixed length, ie, "FILENAME EXT".
  171. ; %FILESIZE     Size of %FILENAME in bytes, right formatted, ie. "   34569".
  172. ; %FILETIME     String form of %FILENAME's timestamp: "dd Mon yy  hh:mm".
  173. ; %XFERTIME     Estimated transfertime for %FILENAME, considering the FILESIZE
  174. ;               and SPEED figures.
  175. ; %FILEINFO     This is the only recursive macro - it may not contain itself,
  176. ;               but any of the other macros is allowed.  The macro is filled
  177. ;               with the contents of the :FILEINFO command as used in the
  178. ;               response configuration, and interpreted when used.
  179. ; %%            Outputs a single % (percent) sign.
  180. ; Any other character after % prints both % and that character.
  181.  
  182.  
  183. ; -----------------------------------------------------------------------------
  184. ; This section attempts to give a limited example of what's possible....
  185. ; Remember, at this point in this file MINLEVEL is 0 and MAXLEVEL is 10.
  186.  
  187.  
  188. :REQLEVEL 0   3 100     ;Unknown node, also in case of any nodelist read errors
  189. :REQLEVEL 1   5 256     ;Node from zone which is not in our nodelist
  190. :REQLEVEL 2   7 512     ;Node found in our nodelist / bossnode in address list
  191. :REQLEVEL 5  10 1024    ;Password protected session, nodelist not even checked
  192.  
  193.  
  194. :MAGIC
  195. :NOCOUNT
  196. FILES         C:\BBS\ALLFILES\ALLFILES.ZIP
  197. FTSCALL !SECRET  C:\BBS\FTSC\FTS-*.A* C:\BBS\FTSC\FSC-*.A*
  198. *.*           C:\BBS\NODELIST\*.*
  199. :LATEST
  200. NODELIST      C:\BBS\NODELIST\NODELIST.A*
  201. NODEDIFF      C:\BBS\NODELIST\NODEDIFF.A*
  202. REGION28      C:\BBS\NODELIST\REGION28.A*
  203. FIDONEWS      C:\BBS\FNEWS\FNEWS*.*
  204. FNEWS         C:\BBS\FNEWS\FNEWS*.A*
  205. :END
  206.  
  207.  
  208. :SERVICE
  209. ABOUT       COPY C:\XENIA\ABOUT.DOC  %OUTDATA
  210. ARTSERVICE  C:\XENIA\BIN\ARTSERV %REQOPTIONS
  211. ECHOADD     ECHOADD.EXE %THEIRADDRESS %REQLEVEL %REQOPTIONS
  212. DATAFIND    DATABASE.EXE %OUTDATA %OUTFILES %REQOPTIONS
  213. :NORESP
  214. REBOOT !SPECIAL   C:\UTIL\BOOT.COM COLD
  215. USERTOBBS         BBS
  216. SYSOPTOBBS !NOWAY SYSOP-BBS
  217. :END
  218.  
  219.  
  220. :MINLEVEL 2
  221. :NORESP
  222. :BRKEXACT
  223. :BRKHIT
  224. C:\PVT\ART.TRY !PASSIE
  225. C:\PVT\YAZ*.*  !WORDO
  226. C:\PVT\SYS\*.* !LILOLA
  227. :END
  228.  
  229.  
  230. :MINLEVEL 5                                     ;for passworded sessions only.
  231. :GROUP                                          ;because this is my GroupMail.
  232. ; Now here is a trick - because of BRKHIT, if you request FTSC.* without a
  233. ; password but a matching file is found, Xenia will still break off nicely and
  234. ; never get to the second line - otherwise matching files would still be sent!!
  235. C:\MAIL\GRPHOLD\FTSC.* !MEMO
  236. C:\MAIL\GRPHOLD\*.*
  237. :END                                            ;end of this groupmail section.
  238.  
  239.  
  240. :MINLEVEL 0                                     ;Stuff available for everyone
  241. E:\BBS\DEV\*.*                                  ;Net-Dev/FTSC Archives
  242. C:\MAIL\DELIVER.GRP                             ;Delivery list for GroupMail
  243. C:\BBS\FNEWS\FNEWS*.*
  244. C:\BBS\*.*
  245. C:\BBS\TEXT\*.*
  246. C:\BBS\C\*.*
  247. c:\BBS\IBM\*.*
  248. C:\BBS\GAMES\*.*
  249.  
  250.  
  251. ; -----------------------------------------------------------------------------
  252. ; Response script information...
  253. ;
  254. ; Xenia creates a message packet which is sent to the requestor together with
  255. ; all the requested files.  For each bark request Xenia creates a seperate PKT.
  256. ; The NORESP command prevents Xenia from responding to a specific file request.
  257. ; You can also have response information even if you don't allow file requests,
  258. ; that way you could for example explain to the caller why his request failed!
  259. ; If the message doesn't exist yet when a response is created, the :HEADER text
  260. ; is printed first.  After the last request has been processed, the :FOOTER
  261. ; text will be printed.  There are 22 response codes, the sample texts below
  262. ; will explain what each of them does.  The texts also follow the :MINLEVEL and
  263. ; :MAXLEVEL commands, so you can limit sending responses by request level.
  264. ; If one of the response codes is omitted (ie. no text is listed here), no
  265. ; response will be added/created if that code is encountered.
  266. ; If you want a hard return in a message line, use the \n (backslash n)
  267. ; sequence, that way you will get a nice result when the msg gets wordwrapped.
  268. ; The %FILEINFO is a very special macro.  If encountered in one of the other
  269. ; response code texts, the %FILEINFO macro will be expanded for EVERY file sent
  270. ; by that request.  Ie. you do one request and get 10 files: %FILEINFO will
  271. ; solve the problem of listing them all for you!
  272. ; The features really can't all be explained here, you'll have to play a bit
  273. ; with it for yourself.  You can make it as formal as you like, or write a
  274. ; story in nice plain English, incorporating all the info as you go along!
  275. ; The example below is a mix of both....
  276. ;
  277. ; Xenia can optionally keep a list of requested files in XENRQ*.LOG
  278. ; So on a multiline system, task 100 would create XENRQ100.LOG
  279. ; If this file already exists in the directory where REQUEST.IDX etc reside,
  280. ; the following text is appended to the file when requests start:
  281. ; "\n* %CURTIME  %THEIRADDRESS  %THEIRNAME\n"
  282. ; Each time a file is sent, this text is added:
  283. ; "  %FILENAME  %FILESIZE\n"
  284. ; Both lines are interpreted just like normal macro lines.
  285. ; As you can see, this is all fixed format so it would be possible to write a
  286. ; scanner to get statistics!
  287. ; As Xenia will only append if the file already exists, you will have to create
  288. ; it first and if you want put some kind of header in.
  289. ; Make sure no ^Z (control Z) character is appended by your editor!!
  290.  
  291.  
  292. :MINLEVEL 0
  293. :MAXLEVEL 10
  294.  
  295. :HEADER
  296. Hello %THEIRSYSOP,\n
  297. \n
  298. head honcho of %THEIRNAME (%THEIRADDRESS)\n
  299. \n
  300. You've been talking with task %TASK at %SPEED%RELIABLE\n
  301. It appears your CallerID is: %CALLERID\n
  302. \n
  303. You were granted request level %REQLEVEL\n
  304. --------------------------------\n
  305. Count limit : %COUNTLIMIT files\n
  306. Size limit  : %SIZELIMITK\n
  307. Time limit  : %TIMELIMIT mins.\n
  308. \n
  309. :FOOTER
  310. \n
  311. Statistics for this session\n
  312. ---------------------------\n
  313. Total no. files attached: %COUNTTOTAL\n
  314. Accumulated size        : %SIZETOTALK\n
  315. Estimated transfer time : %TIMETOTAL mins\n
  316. the calculated transfer time was %TIMETOTAL.\n
  317. \n
  318. The time is now %CURTIME;\n\nGreetings, %OURSYSOP.\n
  319. \n
  320. This message was created by Xenia Mailer %XENVERSION\n
  321. \n
  322. :FILEINFO
  323.         %FILENAME  %FILESIZE  %FILETIME  (%XFERTIME min.)\n
  324. :RSPCODE 0
  325. Request %REQNAME is not known.\n
  326. :RSPCODE 1
  327. No requests at all are possible on this system.\n
  328. :RSPCODE 2
  329. While calling out, no requests on us are allowed.\n
  330. :RSPCODE 3
  331. In this event, no requests are allowed.\n
  332. :RSPCODE 4
  333. Your request level is too low to request %REQNAME.\n
  334. :RSPCODE 5
  335. Your request level is too high to request %REQNAME.\n
  336. :RSPCODE 6
  337. Your password %REQPASSWORD doesn't match ours for request %REQNAME.\n
  338. :RSPCODE 7
  339. Request %REQNAME wasn't processed, count limit would be exceeded.\n
  340. :RSPCODE 8
  341. Request %REQNAME wasn't processed, size limit would be exceeded.\n
  342. :RSPCODE 9
  343. Request %REQNAME wasn't processed, time limit would be exceeded.\n
  344. :RSPCODE 10
  345. Update request %REQNAME (%REQTIME) was not processed because
  346. no older files were found.\n
  347. :RSPCODE 11
  348. Update request %REQNAME (%REQTIME) was not processed because
  349. no newer files were found.\n
  350. :RSPCODE 12
  351. File request %REQNAME was processed and the following files attached:\n
  352. %FILEINFO
  353. :RSPCODE 13
  354. Update request %REQNAME (%REQTIME) was processed and the following
  355. older files attached:\n
  356. %FILEINFO
  357. :RSPCODE 14
  358. Update request %REQNAME (%REQTIME) was processed and the following
  359. newer files attached:\n
  360. %FILEINFO
  361. :RSPCODE 15
  362. Magic request %REQNAME was processed and the following files attached:\n
  363. %FILEINFO
  364. :RSPCODE 16
  365. Service request %REQNAME %REQOPTIONS was processed and executed succesfully.\n
  366. :RSPCODE 17
  367. Error during processing of file request %REQNAME.\n
  368. :RSPCODE 18
  369. Error during processing of update request %REQNAME for older files.\n
  370. :RSPCODE 19
  371. Error during processing of update request %REQNAME for newer files.\n
  372. :RSPCODE 20
  373. Error during processing of magic request %REQNAME.\n
  374. :RSPCODE 21
  375. Error during processing of service request %REQNAME.\n
  376.  
  377.  
  378. ; =============================================================================
  379.