home *** CD-ROM | disk | FTP | other *** search
- ; =============================================================================
- ; REQUEST.CFG REQCOMP config file Xenia Version 1.98 - January 1995
- ; =============================================================================
- ; The request processing is only active in Xenia if the 'request' option is set
- ; up in XENREQ.CFG, and if the following path points to a directory where the
- ; necessary files named REQUEST.IDX and REQUEST.DIR can be found.
- ; These two files are created by REQCOMP.EXE/REQCOMP2.EXE, a seperate utility
- ; that uses this REQUEST.CFG file for its config; REQCOMP doesn't use XENIA.CFG
- ; All information about requestable files is contained in the IDX/DIR files
- ; (Xenia Mailer doesn't scan directories on disk for requested files), so it is
- ; advisable to run REQCOMP at least once a day, and after major changes.
- ;
- ; Everything after the first ; on a line is regarded as a comment, and ignored.
-
-
- ; -----------------------------------------------------------------------------
- ; There are a number of commands available, each prefixed with a colon (:).
- ; Make sure you don't get semicolons mixed up with colons.... be careful.
- ;
- ; First the security command.... :REQLEVEL <level> <count-limit> <size-limit>
- ; Request security levels other than 0, 1, 2 and 5 are not currently in use.
- ; What security level is granted to which caller is explained in the example
- ; section further along in this file.
- ; REQCOMP doesn't care where in this file a :REQLEVEL line is located, please
- ; note however that the default values for any level are 0 files and 0 K.
- ;
- ; Now for the other commands: They aren't toggles! Once specified, they remain
- ; in effect until a :END command is encountered. Exception to this are the
- ; MINLEVEL and MAXLEVEL options, which have defaults of 0 and 10 respectively,
- ; and remain in effect until a new level is specified further along the file.
- ;
- ; :MAGIC The following names in the cfg-file are so called magic filenames.
- ; If a magic is requested, all the files listed on the line are
- ; transmitted. Multiple filespecs with wildcards are allowed. Unless
- ; changed with other options, a magic is counted as one file, and
- ; doesn't check/modify size or time limits. If the filespecs are too
- ; long for one line, you may use more lines with the same MAGIC name.
- ; Xenia keeps on sending the files until the name of the magic does
- ; no longer match the requested name. In fact, REQCOMP internally
- ; uses more index records if more than one filespec appear on a line.
- ; Note: to define a single line as magic, prefix the magic name by a @
- ;
- ; :SERVICE Service requests are special internal commands or external programs.
- ; If the name is requested, the rest of the line is passed to DOS for
- ; execution. There are a number of 'macros' that may be specified on
- ; these command-lines, and these macros will be expanded when the
- ; service is executed. Macros are explained further on in this file.
- ; All services are allowed to append to the Xenia logfile.
- ; There are four special services, which Xenia recognizes by the
- ; first word of the rest of the line in REQUEST.CFG, ie. the name a
- ; requestor needs to use could be something quite different.
- ; BBS If BBS access is allowed in the current event, Xenia will
- ; start the BBS (the first 'EXTAPP' in XENBBS.CFG) after
- ; this mailsession, and send the caller a signal that he
- ; should switch to terminalmode: a calling Xenia recognizes
- ; this signal and acts accordingly.
- ; SYSOP-BBS Like BBS, but doesn't check the current event flags, so
- ; this one can be used to break through a non-BBS event.
- ; DOWN Sets the current event to 0. This means that after this
- ; mailsession, Xenia Mailer will not answer the phone or
- ; dial out - until the sysop locally re-enables the events.
- ; This of course only has effect if Xenia doesn't exit for
- ; received packets or files. Please note that a .REQ file
- ; doesn't count as an attached file.
- ; DOS This is the most dangerous option of all - Xenia will
- ; remember the command-line, and call it after the
- ; mailsession - instead of the BBS! Xenia will use the
- ; options as specified in the first 'EXTAPP' line in
- ; XENBBS.CFG, to select whether to SPAWN or EXIT to the
- ; batchfile.
- ; The danger of this command lies in the fact that if you
- ; don't set it up right, you will drop out of your
- ; batchfile..... YOU alone are responsible for getting back!
- ; NOTE: to define a single line as service, prefix the name by + or $
- ;
- ; If neither MAGIC or SERVICE is active, normal file requests are assumed.
- ; If MAGIC and SERVICE are both activated, MAGIC takes precedence.
- ;
- ; Whatever the type of request, a ! after a name specifies a request password.
- ; Only the first 6 character are significant, and are treated case insensitive.
- ; Note that there is one(1) space before the !, and none(0) after!
- ;
- ; Other options which modify the way a request is treated:
- ; :LATEST If this option is active, REQCOMP will only put the file with the
- ; latest timestamp in the index file. This is nice if you want to
- ; make available the latest nodelist, fidonews etc via a magic....
- ; :BRKEXACT If there is an exact match between the name in this file and the
- ; request, Xenia will stop searching after processing this line.
- ; :BRKHIT Similar, but stop searching after an actual matching file is found.
- ; :NOWILDS Only check this name if requested name contains no ? or * chars.
- ; :EXACT Only check this name if there is an exact match with request.
- ; :NOCOUNT Disable the file counter - this means it is neither checked, nor
- ; decreased when a file/magic is sent or a service is processed.
- ; :NOSIZE Like above, but disables the counter of filesize in K.
- ; :NOTIMER Ditto, but disable checking for enough transmission time.
- ; At the start of requests, Xenia finds the next event which is
- ; either external, no-request, or has new event tag.
- ; :NORESP Prevents Xenia from writing a response to following requests.
- ; :NOEVENT Don't check whether the current event allows requests or not.
- ; :GROUP Meant for use with GroupMail<tm>, this option activates:
- ; BRKEXACT, BRKHIT, NOCOUNT, NOSIZE, NOTIMER, NORESP.
- ;
- ; :MINLEVEL <level> Only check following lines one if the requestor has at
- ; least the specified level. Stays active until changed.
- ; :MAXLEVEL <level> Ditto, but only check if level is not above given level.
-
-
- ; -----------------------------------------------------------------------------
- ; Macros: each one is prefixed with the character % (percentage sign).
- ;
- ; The following macros are available:
- ; %OURNAME The name of your node (XENIA*.CFG 'system' option).
- ; %OURSYSOP Your own name (XENIA*.CFG 'sysop' option).
- ; %OURADDRESS Your address in 4D: zone:net/node[.point]
- ; This is your current alias, not your primary number!
- ; %TASK Task number for multiline systems, otherwise 0.
- ; %PORT Communications port used (XENIA*.CFG 'port' option).
- ; %DEVICE Communications device used (COM1, COM2, ISDN, etc).
- ; %HANDLE Communications handle used (FOSSIL port, or OS/2 file handle).
- ; %LOCKED Locked speed of comport, if not locked then same as linespeed.
- ; %SPEED Actual communication speed of the line, not any LOCKed speed.
- ; %RELIABLE "/REL" or "/ARQ" modem string in case of a reliable connection,
- ; otherwise "/NONE".
- ; %CALLERID CallerID information, or "N/A".
- ; %EVTTIME Time till next event (just like the time figure used
- ; in XENAP*.BAT).
- ; %PROTOCOL "HYDRA", "ZMODEM", or "OTHER" (meaning Xmodem or SEAlink).
- ; As Xenia de-initializes everything (including the FOSSIL on
- ; PC's), the service is free to send information via the comport.
- ; The service will be called in the middle of a SEAlink or Zmodem
- ; send session, so no end-of-batch sequences should be
- ; transmitted!
- ; In case of HYDRA: don't mess, and return to Xenia VERY quickly!
- ; %OUTFILES Filename of list of files which will be sent after all reqs
- ; have been processed. A service may append to this list,
- ; optionally prefixed with a # for truncate after sending,
- ; ^ or . for delete, and if a second name is present on the line,
- ; it is used as an alias name to send to the other side, ie. if
- ; the name the remote system should receive the file under is
- ; different from what it is called locally.
- ; %OUTDATA Name of file in which text may be placed by a service. This
- ; text is appended to the response-message after the info on the
- ; service from Xenia itself it written. The text is always used,
- ; even if NORESP is in effect!
- ; %CURTIME Current time in string format: "Day dd Mon yy hh:mm".
- ; %XENVERSION Version of Xenia used, ie. "1.98 OS/2"
- ; For compatibility reasons, macro %TBVERSION is also accepted.
- ; %THEIRNAME Name of their node as sent in EMSI/YooYoo, or in case of an
- ; FTS-0001 session, "Unknown system name".
- ; %THEIRSYSOP Name of the other node's sysop, or "Sysop" if FTS-0001.
- ; %THEIRADDRESS Their 4D address zone:net/node[.point]
- ; %REQLEVEL Request level of the other side as granted by Xenia,
- ; according to the :REQLEVEL commands in this file.
- ; %COUNTLIMIT Limit of number of files for their request level.
- ; %SIZELIMIT Limit size total of files for their request level.
- ; %TIMELIMIT Request timelimit, regarding future events etc.
- ; %COUNTTOTAL Total number of requested files transmitted. This includes
- ; files which had NORESP active!
- ; %SIZETOTAL Ditto, but total size of all files transmitted.
- ; %TIMETOTAL Total estimated transfer time for all requested files,
- ; considering SIZETOTAL and SPEED.
- ; %REQNAME Name of request as received from other side.
- ; %REQUPDATE Long integer, <0 = update for older files, >0 = update for
- ; newer files, 0 = normal request.
- ; %REQTIME String representation of the %REQUPDATE long integer, in the
- ; format "dd Mon yy hh:mm".
- ; %REQPASSWORD Password of request as received, or empty string.
- ; %REQOPTIONS Rest of the line of the request - usually parms for services.
- ; %FILENAME Name of most recent requested file sent. This filename is
- ; formatted in fixed length, ie, "FILENAME EXT".
- ; %FILESIZE Size of %FILENAME in bytes, right formatted, ie. " 34569".
- ; %FILETIME String form of %FILENAME's timestamp: "dd Mon yy hh:mm".
- ; %XFERTIME Estimated transfertime for %FILENAME, considering the FILESIZE
- ; and SPEED figures.
- ; %FILEINFO This is the only recursive macro - it may not contain itself,
- ; but any of the other macros is allowed. The macro is filled
- ; with the contents of the :FILEINFO command as used in the
- ; response configuration, and interpreted when used.
- ; %% Outputs a single % (percent) sign.
- ; Any other character after % prints both % and that character.
-
-
- ; -----------------------------------------------------------------------------
- ; This section attempts to give a limited example of what's possible....
- ; Remember, at this point in this file MINLEVEL is 0 and MAXLEVEL is 10.
-
-
- :REQLEVEL 0 3 100 ;Unknown node, also in case of any nodelist read errors
- :REQLEVEL 1 5 256 ;Node from zone which is not in our nodelist
- :REQLEVEL 2 7 512 ;Node found in our nodelist / bossnode in address list
- :REQLEVEL 5 10 1024 ;Password protected session, nodelist not even checked
-
-
- :MAGIC
- :NOCOUNT
- FILES C:\BBS\ALLFILES\ALLFILES.ZIP
- FTSCALL !SECRET C:\BBS\FTSC\FTS-*.A* C:\BBS\FTSC\FSC-*.A*
- *.* C:\BBS\NODELIST\*.*
- :LATEST
- NODELIST C:\BBS\NODELIST\NODELIST.A*
- NODEDIFF C:\BBS\NODELIST\NODEDIFF.A*
- REGION28 C:\BBS\NODELIST\REGION28.A*
- FIDONEWS C:\BBS\FNEWS\FNEWS*.*
- FNEWS C:\BBS\FNEWS\FNEWS*.A*
- :END
-
-
- :SERVICE
- ABOUT COPY C:\XENIA\ABOUT.DOC %OUTDATA
- ARTSERVICE C:\XENIA\BIN\ARTSERV %REQOPTIONS
- ECHOADD ECHOADD.EXE %THEIRADDRESS %REQLEVEL %REQOPTIONS
- DATAFIND DATABASE.EXE %OUTDATA %OUTFILES %REQOPTIONS
- :NORESP
- REBOOT !SPECIAL C:\UTIL\BOOT.COM COLD
- USERTOBBS BBS
- SYSOPTOBBS !NOWAY SYSOP-BBS
- :END
-
-
- :MINLEVEL 2
- :NORESP
- :BRKEXACT
- :BRKHIT
- C:\PVT\ART.TRY !PASSIE
- C:\PVT\YAZ*.* !WORDO
- C:\PVT\SYS\*.* !LILOLA
- :END
-
-
- :MINLEVEL 5 ;for passworded sessions only.
- :GROUP ;because this is my GroupMail.
- ; Now here is a trick - because of BRKHIT, if you request FTSC.* without a
- ; password but a matching file is found, Xenia will still break off nicely and
- ; never get to the second line - otherwise matching files would still be sent!!
- C:\MAIL\GRPHOLD\FTSC.* !MEMO
- C:\MAIL\GRPHOLD\*.*
- :END ;end of this groupmail section.
-
-
- :MINLEVEL 0 ;Stuff available for everyone
- E:\BBS\DEV\*.* ;Net-Dev/FTSC Archives
- C:\MAIL\DELIVER.GRP ;Delivery list for GroupMail
- C:\BBS\FNEWS\FNEWS*.*
- C:\BBS\*.*
- C:\BBS\TEXT\*.*
- C:\BBS\C\*.*
- c:\BBS\IBM\*.*
- C:\BBS\GAMES\*.*
-
-
- ; -----------------------------------------------------------------------------
- ; Response script information...
- ;
- ; Xenia creates a message packet which is sent to the requestor together with
- ; all the requested files. For each bark request Xenia creates a seperate PKT.
- ; The NORESP command prevents Xenia from responding to a specific file request.
- ; You can also have response information even if you don't allow file requests,
- ; that way you could for example explain to the caller why his request failed!
- ; If the message doesn't exist yet when a response is created, the :HEADER text
- ; is printed first. After the last request has been processed, the :FOOTER
- ; text will be printed. There are 22 response codes, the sample texts below
- ; will explain what each of them does. The texts also follow the :MINLEVEL and
- ; :MAXLEVEL commands, so you can limit sending responses by request level.
- ; If one of the response codes is omitted (ie. no text is listed here), no
- ; response will be added/created if that code is encountered.
- ; If you want a hard return in a message line, use the \n (backslash n)
- ; sequence, that way you will get a nice result when the msg gets wordwrapped.
- ; The %FILEINFO is a very special macro. If encountered in one of the other
- ; response code texts, the %FILEINFO macro will be expanded for EVERY file sent
- ; by that request. Ie. you do one request and get 10 files: %FILEINFO will
- ; solve the problem of listing them all for you!
- ; The features really can't all be explained here, you'll have to play a bit
- ; with it for yourself. You can make it as formal as you like, or write a
- ; story in nice plain English, incorporating all the info as you go along!
- ; The example below is a mix of both....
- ;
- ; Xenia can optionally keep a list of requested files in XENRQ*.LOG
- ; So on a multiline system, task 100 would create XENRQ100.LOG
- ; If this file already exists in the directory where REQUEST.IDX etc reside,
- ; the following text is appended to the file when requests start:
- ; "\n* %CURTIME %THEIRADDRESS %THEIRNAME\n"
- ; Each time a file is sent, this text is added:
- ; " %FILENAME %FILESIZE\n"
- ; Both lines are interpreted just like normal macro lines.
- ; As you can see, this is all fixed format so it would be possible to write a
- ; scanner to get statistics!
- ; As Xenia will only append if the file already exists, you will have to create
- ; it first and if you want put some kind of header in.
- ; Make sure no ^Z (control Z) character is appended by your editor!!
-
-
- :MINLEVEL 0
- :MAXLEVEL 10
-
- :HEADER
- Hello %THEIRSYSOP,\n
- \n
- head honcho of %THEIRNAME (%THEIRADDRESS)\n
- \n
- You've been talking with task %TASK at %SPEED%RELIABLE\n
- It appears your CallerID is: %CALLERID\n
- \n
- You were granted request level %REQLEVEL\n
- --------------------------------\n
- Count limit : %COUNTLIMIT files\n
- Size limit : %SIZELIMITK\n
- Time limit : %TIMELIMIT mins.\n
- \n
- :FOOTER
- \n
- Statistics for this session\n
- ---------------------------\n
- Total no. files attached: %COUNTTOTAL\n
- Accumulated size : %SIZETOTALK\n
- Estimated transfer time : %TIMETOTAL mins\n
- the calculated transfer time was %TIMETOTAL.\n
- \n
- The time is now %CURTIME;\n\nGreetings, %OURSYSOP.\n
- \n
- This message was created by Xenia Mailer %XENVERSION\n
- \n
- :FILEINFO
- %FILENAME %FILESIZE %FILETIME (%XFERTIME min.)\n
- :RSPCODE 0
- Request %REQNAME is not known.\n
- :RSPCODE 1
- No requests at all are possible on this system.\n
- :RSPCODE 2
- While calling out, no requests on us are allowed.\n
- :RSPCODE 3
- In this event, no requests are allowed.\n
- :RSPCODE 4
- Your request level is too low to request %REQNAME.\n
- :RSPCODE 5
- Your request level is too high to request %REQNAME.\n
- :RSPCODE 6
- Your password %REQPASSWORD doesn't match ours for request %REQNAME.\n
- :RSPCODE 7
- Request %REQNAME wasn't processed, count limit would be exceeded.\n
- :RSPCODE 8
- Request %REQNAME wasn't processed, size limit would be exceeded.\n
- :RSPCODE 9
- Request %REQNAME wasn't processed, time limit would be exceeded.\n
- :RSPCODE 10
- Update request %REQNAME (%REQTIME) was not processed because
- no older files were found.\n
- :RSPCODE 11
- Update request %REQNAME (%REQTIME) was not processed because
- no newer files were found.\n
- :RSPCODE 12
- File request %REQNAME was processed and the following files attached:\n
- %FILEINFO
- :RSPCODE 13
- Update request %REQNAME (%REQTIME) was processed and the following
- older files attached:\n
- %FILEINFO
- :RSPCODE 14
- Update request %REQNAME (%REQTIME) was processed and the following
- newer files attached:\n
- %FILEINFO
- :RSPCODE 15
- Magic request %REQNAME was processed and the following files attached:\n
- %FILEINFO
- :RSPCODE 16
- Service request %REQNAME %REQOPTIONS was processed and executed succesfully.\n
- :RSPCODE 17
- Error during processing of file request %REQNAME.\n
- :RSPCODE 18
- Error during processing of update request %REQNAME for older files.\n
- :RSPCODE 19
- Error during processing of update request %REQNAME for newer files.\n
- :RSPCODE 20
- Error during processing of magic request %REQNAME.\n
- :RSPCODE 21
- Error during processing of service request %REQNAME.\n
-
-
- ; =============================================================================