home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PCBOARD / PCBM102.ZIP / ENGLISH.ZIP / ENGLISH.DOC < prev    next >
Text File  |  1994-01-22  |  17KB  |  470 lines

  1.  
  2.     ▒▒▒▒▒▒▄ ▒▒▒▒▒▒▄ ▒▒▒▒▒▒▒▄ ▒▒▒▒▒▒▒▒▄ ▒▒▒▒▒▒▄ ▒▒▄      ▒▒▄ ▒▒▒▒▒▒▄
  3.     ▒▒█▀▒▒█ ▒▒█▀▀▀▀  ▒▒█▀▒▒█ ▒▒█▒▒█▒▒█ ▒▒█▀▒▒█  ▒▒█    ▒▒█▀ ▒▒█▀▀▀▀
  4.     ▒▒▒▒▒▒█ ▒▒█      ▒▒▒▒▒█▀ ▒▒█▒▒█▒▒█ ▒▒█ ▒▒█   ▒▒█  ▒▒█▀  ▒▒▒▒▄
  5.     ▒▒█▀▀▀▀ ▒▒█      ▒▒█▀▒▒█ ▒▒█ ▀▀▒▒█ ▒▒█ ▒▒█    ▒▒█▒▒█▀   ▒▒█▀▀
  6.     ▒▒█     ▒▒▒▒▒▒▄ ▒▒▒▒▒▒▒█ ▒▒█   ▒▒█ ▒▒▒▒▒▒█     ▒▒▒█▀    ▒▒▒▒▒▒▄
  7.      ▀▀      ▀▀▀▀▀▀  ▀▀▀▀▀▀▀  ▀▀    ▀▀  ▀▀▀▀▀▀      ▀▀▀      ▀▀▀▀▀▀
  8.  
  9.                             (Version 1.02)
  10.  
  11.                                Summary
  12.                                =======
  13.  
  14.    This freeware utility was created to help overworked PCBoard sysops
  15.   maintain their file areas and file-lists, and generally keep their
  16.   BBS tidy, by enlisting the help of trusted and knowledgeable users
  17.   to move files around from one area to the other, through mail, or
  18.   even on-line.
  19.  
  20.    This program receives messages from authorized users, checks their
  21.   syntax and validity, then accordingly moves the specified files
  22.   physically from one area to another, together with the corresponding
  23.   descriptions in the file-lists. Aknowledgements, error messages and
  24.   diagnostics are mailed back to the sender and/or forwarded to the sysop
  25.   and/or his trustee(s), depending on the result.
  26.  
  27.  
  28.   ╒═══════════════════════════════════════════════════════════════════════╕
  29.   │                                                                       │
  30.   │                         TABLE OF CONTENTS                             │
  31.   │                         =================                             │
  32.   │                                                                       │
  33.   │                   I.    What does PCBMOVE _DO_ ?                      │
  34.   │                   II.   What does PCBMOVE _NOT_ DO ?                  │
  35.   │                   III.  How to make it work.                          │
  36.   │                   IV.   Configuration file.                           │
  37.   │                   V.    Message format required by PCBMOVE.           │
  38.   │                   VI.   Technical information & acknowledgements      │
  39.   │                   VII.  Upcoming improvements.                        │
  40.   │                   VIII. Files in this archive (Manifest).             │
  41.   │                                                                       │
  42.   │                                                                       │
  43.   ╘═══════════════════════════════════════════════════════════════════════╛
  44.  
  45.  
  46. ──────────────────────────────────────────────────────────────────────────────
  47.  
  48. I. What PCBMOVE _DOES_
  49. ======================
  50.  
  51.   - This program can maintain 3 different log files :
  52.  
  53.     . System error log (invalid path, insufficient memory, bad configuration
  54.       file format, etc.)
  55.     . User error log (file name error, inexistent area, forbidden area, ...)
  56.     . Usage log for completed moves.
  57.  
  58.       These logs contain the user name for each operation.
  59.       These log files can merge into one if you do not want to have 3
  60.       different logs.
  61.  
  62.   - The program can use different configuration files to be used in different
  63.     conferences.
  64.  
  65.   - The program can use the "PCBOARD-standard" DIR.LST, or a delimited
  66.     ASCII format, which the sysop can edit directly.
  67.  
  68.   - If PCBMOVE does not understand a request, it sends a message to the user
  69.     to explain why his request cannot be processed. These messages are plain
  70.     ASCII files (.err) that can be modified.
  71.  
  72.   . Sysops can disallow file moves from, or to, specific areas.
  73.  
  74.   . Move commands are carried out only if the user has the required minimum
  75.     security level. If not, the message is forwarded to a specified user
  76.     (usually the sysop or one of his trustees) for confirmation.
  77.     This person merely needs to reply with his off-line reader to validate
  78.     these moves if they appear pertinent.
  79.  
  80.   . PCBMOVE can move files in batch mode (by executing the moves specified
  81.     on the command line, instead of scanning the message base).
  82.  
  83.   . Sysops can open an area as "trashcan" for users to move bad/useless/old
  84.     files to this special area. All the sysop has to do then is purge this
  85.     this area once in a while (like every month or so) to delete files and
  86.     free space on hard disk.
  87.  
  88.  
  89. ──────────────────────────────────────────────────────────────────────────────
  90.  
  91. II. What PCBMOVE does _NOT_ do
  92. ==============================
  93.  
  94.   . File description cannot exceed 25 lines.
  95.  
  96.   . All fields in the configuration file must be present, even if
  97.     they are not used.
  98.  
  99.   . The lines in the configuration file cannot be wider than 80 characters.
  100.  
  101.   . PCBMOVE cannot work on BBSes with more than 255 areas.
  102.  
  103. ──────────────────────────────────────────────────────────────────────────────
  104.  
  105. III. How to make it work
  106. ========================
  107.  
  108.     This program works in 2 different ways :
  109.  
  110.   - With only one argument (the configuration file):
  111.  
  112.      Pcbmove scans the message base,
  113.             executes MOVE commands when found,
  114.             and deletes the corresponding messages.
  115.  
  116.     E.g.:    PCBMOVE f:\pcbmove\pcbmove.cfg
  117.  
  118.  
  119.   - With four arguments, as follows:
  120.  
  121.     PCBMOVE Config_file  File_to_move  Source_dir  Target_dir
  122.  
  123.     Pcbmove executes the specified move without scanning the message base.
  124.     This can be used as a door command or added in the CMD.LST file
  125.     of the board.
  126.     The errorlevel can be used to display a message if an error occurs.
  127.  
  128.     E.g.:    PCBMOVE f:\pcbmove\pcbmove.cfg PKZIP202.EXE 72 10
  129.  
  130. ──────────────────────────────────────────────────────────────────────────────
  131.  
  132. IV. Configuration file
  133. ======================
  134.  
  135.    Configuration file example :
  136.  
  137.    ==========================================
  138.    DirList=f:\pcbmove\dir.lst
  139.    MessageBase=f:\pcbmove\msgs
  140.    UserBase=F:\pcboard\user
  141.    UserFileNameError=f:\pcbmove\filename.err
  142.    UserAreaError=f:\pcbmove\area.err
  143.    UserOtherAreaError=f:\pcbmove\oterarea.err
  144.    UserAreaOriForbid=f:\pcbmove\area_ori.err
  145.    UserAreaTarForbid=f:\pcbmove\area_tar.err
  146.    UserNeedForward=f:\pcbmove\forward.err
  147.    ErrorLogFile=f:\pcbmove\error.log
  148.    UserLogFile=f:\pcbmove\user.log
  149.    UseLogFile=f:\pcbmove\move.log
  150.    TempFile1=f:\pcbmove\pcbm_ori.$$$
  151.    TempFile2=f:\pcbmove\pcbm_tar.$$$
  152.    ToField=PCBMOVE
  153.    NotAreaOri= 5 9
  154.    NotAreaTar= 2 12 125 35
  155.    Security= 90
  156.    ForwardUser=ATTILA ALTAN
  157.    DebugFlag=off
  158.    Language=english
  159.    =========================================
  160.  
  161.  
  162.    The order of fields in the configuration file is not important,
  163.    but all of them must be present.
  164.  
  165.    There must be no space(s) between the field name and the '=' sign.
  166.  
  167.    The field names are case sensitive.
  168.  
  169.    You should use upper-case values for 'ToField' and 'ForwardUser' fields
  170.    for better PCBOARD compatibility.
  171.  
  172.    Lines starting with a '#' are comments, and thus, ignored.
  173.  
  174.    Blank lines are allowed.
  175.  
  176.  
  177.  Description of fields
  178.  ---------------------
  179.  
  180.   1. DirList
  181.   ----------
  182.     File name of area list.
  183.     The format of this file can be the PCBoard standard (dir.lst), or a
  184.     delimited ASCII file with the following format :
  185.  
  186.     . 30 characters for the area filelist name.
  187.     . 30 characters for the area directory (WITH trailing '\')
  188.     . 33 characters for the area description.
  189.  
  190.     E.g.:
  191.  
  192. F:\PCBMOVE\TEST\LIST01.LST    F:\PCBMOVE\TEST\DIR01\        descript of area 01
  193.  
  194.   2. MessageBase
  195.   --------------
  196.     File name for the message base to be scanned.
  197.     Each time the program is run, the entire message base gets scanned. When
  198.     a message addressed to 'ToField' is found, it is processed then marked
  199.     as DELETED.
  200.  
  201.     Note that the scanning routines use the new .IDX index format.
  202.     That's the reason why PCBMOVE can only work with PCBoard V15 or above.
  203.  
  204.   3. UserBase
  205.   -----------
  206.     File name of the user database.
  207.     This is used to check the security level of the user.
  208.  
  209.   4. UserFileNameError
  210.   --------------------
  211.     ASCII file sent to a user who tries to move a file that does not exist
  212.     on the board.
  213.  
  214.     In all "error" files, the following variables can be used:
  215.  
  216.     FILE_TO_MOVE    : Filename the user wanted to move,
  217.     AREA_ORI        : Specified source area,
  218.     AREA_TAR        : Specified target area,
  219.     AREA_ORI_DESC   : Specified source area description,
  220.     AREA_TAR_DESC   : Specified target area description,
  221.     DATE_MESSAGE    : Date of the message sent to PCBMOVE.
  222.     HEURE_MESSAGE   : Time of the message sent to PCBMOVE.
  223.  
  224.    To better understand their usage, see the provided examples (*.err).
  225.  
  226.   5. UserAreaError
  227.   ----------------
  228.     ASCII file sent to a user who specifies an area that does not exist.
  229.     (either for source or target area).
  230.  
  231.     The variables are the same as for UserFileNameError.
  232.  
  233.   6. UserOtherAreaError
  234.   ----------------------
  235.     ASCII file sent to a user if the specified file has not been found in
  236.     the specified area, but in another one.
  237.     Usually this occurs if the file was moved by another users just before.
  238.  
  239.     The variables are the same as for UserFileNameError, plus:
  240.  
  241.      GOOD_AREA       : Area where the file has been found.
  242.      GOOD_AREA_DESC  : Description for this area.
  243.  
  244.   7. UserAreaOriForbid
  245.   --------------------
  246.     ASCII file sent to a user who specifies a forbidden area as a source.
  247.  
  248.     The variables are the same as for UserFileNameError.
  249.  
  250.   8. UserAreaTarForbid
  251.   --------------------
  252.     ASCII file sent to a user who specifies a forbidden area as a target.
  253.  
  254.     The variables are the same as for UserFileNameError.
  255.  
  256.  
  257.   9. UserNeedForward
  258.   ------------------
  259.     ASCII file sent to a user who sends a MOVE command but does not have the
  260.     required security level.
  261.     The message should indicate that his moves have been forwarded to
  262.     someone else for validation.
  263.  
  264.     The variables are the same as for UserFileNameError, plus:
  265.  
  266.     SECURITY_MIN : Required security level to make the move.
  267.     FORWARD_USER : User to whom the message was forwarded.
  268.  
  269.     The message sent to FORWARD_USER is hard-coded. It can't be changed.
  270.  
  271.   10. ErrorLogFile
  272.   ----------------
  273.     System error log file.
  274.  
  275.     When a system error occurs, messages that cannot be processed are copied
  276.     to a file called DEBUG.MSG.
  277.  
  278.   11. UserLogFile
  279.   ---------------
  280.     This is the log of all failed move commands (with user names).
  281.  
  282.   12. UseLogFile
  283.   --------------
  284.     This is the log of all successful move commands (with user names).
  285.  
  286.   13. TempFile1
  287.   -------------
  288.     Temporary file used to build the file list of a source area
  289.     (from which the descriptions are removed).
  290.  
  291.   14. TempFile2
  292.   -------------
  293.     Temporary file used to build the file list of a target area
  294.     (to which the descriptions are added).
  295.  
  296.     Note:
  297.     ----
  298.     It is best to put the temporary files on the same disk as the file list,
  299.     as it will then be much faster for PCBMOVE to replace the original
  300.     file list by the new one (a MOVE on the same disk is almost immediate).
  301.  
  302.   15. ToField
  303.   -----------
  304.     Name that will be scanned in the message base.
  305.     Usually, this will be PCBMOVE, but could be ROBOT, MOVE, AREA MOVE,
  306.     or whatever...
  307.  
  308.     PROVIDING THAT:
  309.     ==============
  310.  
  311.     1) It is _NOT_ the name of an existing user,
  312.     2) UPPER CASE is used!
  313.  
  314.   16. NotAreaOri
  315.   --------------
  316.     Area(s) from which moves are forbidden.
  317.     The list consists of area numbers separated by spaces,
  318.  
  319.     E.g. :  1 25 58 96
  320.  
  321.     If you do not want to disallow any areas, leave this blank.
  322.  
  323.   17. NotAreaTar
  324.   --------------
  325.     Area(s) to which moves are forbidden.
  326.     The list consists of area numbers separated by spaces,
  327.  
  328.     E.g. :  1 25 58 96
  329.  
  330.     If you do not want to disallow any areas, leave this blank.
  331.  
  332.   18. Security
  333.   ------------
  334.     Security level required to execute the moves.
  335.     If a user has a lower level, PCBMove forwards his messages to the user
  336.     specified below.
  337.  
  338.   19. ForwardUser
  339.   ---------------
  340.     Name of user to whom messages will be forwarded as above.
  341.  
  342.     CAUTION: USE UPPER CASE !
  343.     =======
  344.  
  345.   20. DebugFlag
  346.   -------------
  347.     This flag must be ON or OFF, like, a switch, see ?
  348.  
  349.     If ON, all messages will be saved to a debug file (debug.msg) before
  350.     they are killed.
  351.  
  352.     If ON, comments will trace all the steps of the move process, and a log
  353.     of the messages will be displayed on the console.
  354.  
  355.     If ON, PBMOVE will make copies of filelist files (.BAK) prior to
  356.     any modification. Bak files are created for each file list before
  357.     modification. Each move modifies 2 file lists, thus 2 .BAK files will be
  358.     created for each move. Of course, if PCBMOVE receives a hundred move
  359.     commands at a time, these will not be very useful...
  360.  
  361.  
  362.   21. Language
  363.   ------------
  364.     Specifies the language you want for messages and logs.
  365.     Options currently available are 'french' and 'english'.
  366.  
  367.  
  368. ──────────────────────────────────────────────────────────────────────────────
  369.  
  370. V. Message format required by PCBMOVE
  371. =====================================
  372.  
  373.     The header of the message MUST contain the following fields:
  374.  
  375.     From   : A valid user name (user present in user base).
  376.     To     : Name specified in config file for PCBMOVE (ToField).
  377.     Subject: What you want. We recommend a value of '*' because this field
  378.              may be put to use in future releases.
  379.  
  380.     The message itself must have one MOVE command per line.
  381.  
  382.     E.g. to move PZKIP202.EXE from area 10 to area 20 :
  383.  
  384.     PKZIP202.EXE 10 20
  385.  
  386.     The number of lines in the message is not limited by PCBMOVE.
  387.  
  388.     We recommend not to add tag-lines to these messages, although they
  389.     should not be a problem for PCBMOVE.
  390.  
  391. ──────────────────────────────────────────────────────────────────────────────
  392.  
  393. VI. Technical information & acknowledgements
  394. ============================================
  395.  
  396.   This program has been developed using MS-Quick C 2.51 in October 1993.
  397.   This release January 1994.
  398.  
  399.   This program is "GNUware". All standard disclaimers apply.
  400.  
  401.   The message base scanning and message posting routines rely heavily on
  402.   C snippets by René 'Renux' Cougnenc, the famous french freeware author...
  403.   Thanks (again) to him.
  404.   The function to compute dates in index files is from Jean-Claude Ambroise.
  405.  
  406.   Also, documentation has been written with the help of Mr Sam Cabannes for
  407.   the french version, and Mr Fred Pacquier & Miss Pascale Hervieux
  408.   for the english text.
  409.   Their help has been invaluable.
  410.   (Note from the Translator: You Bet!)
  411.  
  412.   As from this release (1.02), source code is included and placed under the
  413.   terms of the GNU License (CopyLeft) as created by the Free Software
  414.   Foundation (FSF). A copy of this text is included for those not familiar
  415.   with it - please read it before releasing any software using all or part
  416.   of PCBMOVE sources.
  417.   If you intend to add features to this software, do tell me about it:
  418.   I would be pleased to have a copy of your work.
  419.  
  420.   Mail-address is :
  421.  
  422.       Gillet Vincent
  423.       1 rue Mongenot
  424.       94160 Saint Mandé
  425.       FRANCE
  426.  
  427. Electronic address are :
  428.  
  429.       FIDO   adress    : Vincent Gillet (2:320/7)
  430.       E-MAIL adress    : Vincent.Gillet@lill.frmug.fr.net
  431.       LI'LL BBS number : (33)-1.43.07.43.68
  432.  
  433. ──────────────────────────────────────────────────────────────────────────────
  434.  
  435. VII. Upcoming improvements
  436. ==========================
  437.  
  438. * the first few users to download a given file will optionally receive a
  439.   message from PCBMOVE enquiring whether the file is located in the
  440.   appropriate area or if it should be moved elsewhere. In the latter case,
  441.   the user just has to hit the 'reply' key in his offline reader to specify
  442.   the new target area (just how many is "few", of course, will be left to
  443.   the sysops...).
  444.  
  445. * keep & publish statistics (bulletin) for file-moving champs & lazybones,
  446.   so that the sysop may see who his Good Users really are...
  447.  
  448. ──────────────────────────────────────────────────────────────────────────────
  449.  
  450. VIII. Files in this archive (Manifest)
  451. ===========================
  452.  
  453. PCBMOVE .EXE    PCBMOVE exe file
  454. PCBMOVE .CFG    Example configuration file
  455. FRENCH  .DOC    French documentation file
  456. ENGLISH .ZIP    This english documentation & english error file examples
  457. UPDATE  .NEW    Release history and changes for each version
  458. SOURCES .ZIP    'C' Source code
  459. COPYING         Conditions for copying
  460. FILENAME.ERR    French error file example
  461. AREA_TAR.ERR    French error file example
  462. AREA    .ERR    French error file example
  463. AREA_ORI.ERR    French error file example
  464. OTERAREA.ERR    French error file example
  465. FORWARD .ERR    French error file example
  466.  
  467.  
  468. ────────────────────────────────── Vincent Gillet - Paris 1994 ───────────────
  469. ────────────────────────────...with─a─little─help─from─his─friends...─────────
  470.