home *** CD-ROM | disk | FTP | other *** search
/ Amiga Times / AmigaTimes.iso / programme / trionbbs110 / Trion / docs / Updates / trion109.doc < prev    next >
Encoding:
Text File  |  1998-10-06  |  14.1 KB  |  397 lines

  1.  
  2.  
  3.         _____     _                  _     _              _    ___
  4.        |_   _|_ _(_) ___  _ __      | |__ | |__  ___     / |  / _ \
  5.          | | | '_| |/ _ \| '_ \     | '_ \| '_ \/ __|    | | | | | |
  6.          | | | | | | (_) | | | |    | |_) | |_) \__ \    | |_| |_| |
  7.          |_| |_| |_|\___/|_| |_|    |____/|____/|___/    |_(_)\___/
  8.  
  9.                         © 1994/98 by Paul Spijkerman
  10.                              All Rights Reserved
  11.  
  12.  
  13.      Update from V1.08 to V1.09
  14.  
  15.  
  16.      Here are some of the things I worked on.
  17.  
  18.      Note that after Update V1.10 I'm probably going to make
  19.      a complete V1.10 archive for Aminet so the next update
  20.      probably consists of little things and docs.
  21.  
  22.  
  23.  
  24.  
  25.      Utils:   TrionRM, Tick, BBS, Tmp, scheduler
  26.               FileEd, MailEd, MaintMod, UserEd
  27.               MiscGui, Attention, AttViewer
  28.      Doors:   
  29.      Scripts: Mail
  30.      Cfg:     MiscGui.cfg, taglines.data   
  31.  
  32.  
  33.  
  34.    -Changed the list handler a bit so scrolling a lot smoother,
  35.     it doesn't use the blitter to scroll yet but it looks
  36.     very good now.
  37.  
  38.    -Changed the file editor so if you edit the description the
  39.     line you are editing stays hi-lighted.
  40.  
  41.    -I must be going blind or something like that, just noticed
  42.     the MailEd windows are titled "Trion FileEditor" or something
  43.     like that.
  44.  
  45.    -Changed the FileEditor.
  46.     Normally when you go back from the editor the to the filelist
  47.     the list is emptied en de scroller goes back to full size.
  48.     It now empties the list but doesn't redraw it until the
  49.     list is loaded again .. so you don't see the actual
  50.     loading anymore and you can select the file after
  51.     the file you just edited without having to go back
  52.     in the list.
  53.  
  54.    -Fixed a little bug in the BBS, the total minutes a user
  55.     is online during all calls was added a number of updates ago
  56.     but I forgot to clear this field when a new user logs in so
  57.     a new user "inherited" the number of minutes called from the
  58.     previous user..
  59.  
  60.  
  61.    -Changed Tick a bit so it can unpack archives, some PC tick
  62.     processors make files with a name like 00000000.c00
  63.     which contains all files and .tic files.
  64.     When it encounters such a file it tries to Unpack it and
  65.     then process all the files.
  66.     It doesn't uses the Archive.cfg because that only extracts
  67.     the *.pkt files from mail archives.
  68.     To avoid making a config just for unpacking tick files, it
  69.     uses the Unpack.cfg .. which was made for the shell unpack
  70.     Util. The default version of that config has no quiet flags
  71.     or routing of the output to NIL: so the unarchiving is
  72.     displayed in the shell. It will unpack archives with the
  73.     lowest number after de 'c' first.
  74.  
  75.     Later i heard other PC tick processors make .ZIC archives,
  76.     which are probably something like "Zipped tIC" archives.
  77.     So I added a loop that checks for archives with extensions
  78.     that end with .?IC but don't have .TIC in the name.
  79.  
  80.     Worked a little bit on different modes for the description
  81.     lines .. but that isn't finished yet. In normal tic files
  82.     the descriptions are put on one long line that start with "Desc"
  83.     but some PC tick processors put descriptions on multiple lines
  84.     so you can have formatted descriptions (the ANSI drawings
  85.     and File_id.diz type thingies) .. these are not supported
  86.     by Amiga tick processors so if there is an Amiga tick
  87.     processor between you and a PC tick processor you only
  88.     get the first line of the description which is probably
  89.     something like the topside of an ANSI-box.
  90.     So even if this works and you poll a Xlk BBS you still have
  91.     the single line.
  92.  
  93.    -Since the last update there was a little problem in TrionRM with
  94.     the node status not updating when something in a node changed.
  95.     In the previous version there were more possibilities added to
  96.     the list handler .. because of this the way a list is accessed
  97.     was a little changed .. this part in TrionRM was missed when
  98.     updating to the new standard.
  99.  
  100.     Also what happend is that the list is now dynamically, you have
  101.     to make entries at the opening of the window to be able to
  102.     "update" the entries later.. beats me why there was something
  103.     in the list in the last version.
  104.  
  105.    -Fixed a little problem in MaintMod, in the last update I forgot
  106.     to update a piece of code where the star was added to a line
  107.     if you clicked on it. Because of this the line wasn't updated
  108.     with a star but a new line with the star was added.
  109.     When you started the MaintMod again all was displayed right.
  110.  
  111.    -Fixed a little thing in TMP ... when an echomail message was
  112.     Bad because Origin, Seen-by:'s or path was missing to wrote
  113.     to the log that all 3 things where missing instead of 1 or
  114.     2 or 3 items.
  115.  
  116.    -Changed the scheduler a bit so you can optionally op it's window
  117.     on the TrionRM public screen when you use "ONTRION" on the
  118.     command line when started.
  119.  
  120.     This has the disadvantage that you can't Iconize the TrionRM
  121.     window anymore (until you close the Scheduler window).
  122.     Which is not a problem when you have the TrionRM screen always open.
  123.  
  124.     Note that it isn't a problem to have the screen always open, but
  125.     it slows the mail processor a little when unpacking mail because
  126.     it has to update the screen after each message.
  127.  
  128.     The Trion:down script still works because it also quits the
  129.     scheduler.
  130.  
  131.     Couldn't think of a better way to implement this at this moment,
  132.     well actually I just thougth of something.
  133.     Just add to the "event" program commands to Iconize and DeIconize
  134.     the scheduler and then call the "event" program when TrionRM
  135.     is Iconized or Deiconized. Have to think if that is a 
  136.     really smart thing to do.
  137.  
  138.  
  139.  ! -Taglines And Signatures
  140.  
  141.     Added flags to the Trion:cfg/MailAreas.cfg to controll of
  142.     Taglines And Signatures are allowed in message sections.
  143.  
  144.     So if you allow both you have to add flags to all sections
  145.     or if you are lucky you can use the "replace" mode in CED
  146.     and replace "-]" with "TS-]" or something like that.
  147.     (The - before the ] is necessary if you use the ] in
  148.      section names like "[Fido] Amiga")
  149.  
  150.     So this is a list of the existing flags at this moment:
  151.  
  152. ; Flags:        type of area     (use only 1 per area)
  153. ;           L = Local Messages
  154. ;           N = Netmail
  155. ;           E = Echomail
  156. ;
  157. ;               Characteristics of area
  158. ;           A = User may use an alias in this area.
  159. ;           W = Users can write in this area.
  160. ;           O = Obligatory (for areafix) can't disconnect with areafix
  161. ;           I = Internet support (For E-mail)
  162. ;           S = Use signatures in this section
  163. ;           T = Use taglines in the section
  164.  
  165.  
  166.  
  167.    -Added simple code for Taglines.
  168.  
  169.     I looked at a few archives that add Tagline support to other
  170.     BBS programs and they are mostly weird hacks so I added some
  171.     support to prevent that.
  172.     That needed separate config files, or they used Signature
  173.     files so you had to disable Signatures or you got double
  174.     signatures etc.
  175.  
  176.     Also there were al sorts of scripts to filter and sort tag files
  177.     and to make Index files.
  178.  
  179.     The index files are data files which contains the number of
  180.     taglines present and the position of each line in the file
  181.     to guarantee guick acccess.
  182.     Because when you want to select a Random tagline you first have
  183.     to know how many lines there are and secondly if you don't want
  184.     to browse to all lines before the one randomly picked you
  185.     have to know the position in the file.
  186.  
  187.     To prevent this I thougth of a simpler methode which works
  188.     nearly as well but doesn't need the index file.
  189.  
  190.     I just take the size of the Tagline data file, and make
  191.     a Random number which selects a Random position in the file.
  192.     Then I start reading in the file until I find a return.
  193.     The character at the next position is the start of the
  194.     selected Tagline !
  195.     It reads the line and if it is not empty or starts with
  196.     a ';' it will return this line.
  197.     If it is empty or starts with a ';' it will read on
  198.     to find a line which isn't empty or starts with a ';'.
  199.  
  200.     This methode is quick, i tested it with a 250kb file
  201.     and you can't measere the access time with a stopwatch.
  202.  
  203.     However there are a couple of little problems. It isn't
  204.     as random as the methode with the index file because
  205.     if a tagline is preceeded with a line tagline it has
  206.     a sligthly bigger change of being choosen.
  207.     The second problem is that if the random position is
  208.     in the last line .. there isn't a tagline it can read.
  209.     Well .. if that problem occurs it just tries again,
  210.     with a maximum of 3 tries. Which seems to work fine.
  211.     Only if you have 30 taglines in a file, after about
  212.     100 times skipping the presented tagline the code
  213.     aborts. But hey .. that means that the User already
  214.     has seen all taglines 3 times !!! So you can also see
  215.     this as a protection of users against them self if
  216.     they can't stop looking at your taglines :)
  217.     With a 250K tagline file the chanches of this happening
  218.     is very small.
  219.  
  220.     Note that this is a very simple but funtional implementation,
  221.     in the near future I probably will look if I can make this
  222.     into a door so others can make doors for this. But it
  223.     shouldn't really be necessary. Or make a little GUI for
  224.     local use where you can select a line from a list of
  225.     add one.
  226.  
  227.     Note that the format of the data file are single lines of less
  228.     than 80 characters, so it selects taglines not paragraphs.
  229.     Which migth be an option for a next version but I don't know
  230.     if BIG taglines are apreciated by everyone who has to read them :)
  231.  
  232.     Note that empty lines or lines beginning with a ';' are skipped.
  233.  
  234.  
  235.    -Attention and AttViewer
  236.  
  237.     Some sysops really want to see what is going on in their
  238.     scripts. You can add "echo" lines to scripts so that you
  239.     can look at a shell window what is going on but that isn't
  240.     very convenient.
  241.     So I made a program which shows a list of lines (AttViewer)
  242.     that are send to the list by a shell program (Attention).
  243.  
  244.     The program can be used in two ways:
  245.  
  246.     You can start the Viewer manually by for instance clicking
  247.     on a button in MiscGui (see further in this doc).
  248.     You then call:
  249.     Attenttion "This is a test"
  250.     in scripts to make text appear in the list.
  251.     In this way you can see what is going on as long if you have
  252.     the Viewer program running.
  253.  
  254.     The other way is to have Attention start and stop the Viewer in a
  255.     script. Attention has 3 options:
  256.         
  257.     Trion Attention V1.00 (c)1998 Paul Spijkerman.
  258.     Use : <-options> "Text"
  259.  
  260.     Options:
  261.       -O   = Open the Trion Attention Viewer.
  262.       -Q   = Quit the Trion Attention Viewer.
  263.       -C   = Clear the Trion Attention Viewer.
  264.  
  265.     So if you want the viewer to "pop up" during a mail script
  266.     for instance you would use something like this:
  267.  
  268.     (If you want to use it manually just remove the -o and -q flags)
  269.  
  270.  
  271. ;;;  Script to proces mail and .TIC files.
  272.  
  273. ;quit
  274. wait 2
  275.  
  276. avail flush >nil:
  277.  
  278. Attention -o "Mail: script started"
  279. trion  -max  "Mail processor is started, system can be a little slower"
  280.  
  281. trion:utils/CheckInbound -q
  282.  
  283. if WARN
  284.    Attention  "Mail: processor in PACK mode"
  285.    trion:utils/tmp P -d
  286. else
  287.  
  288.    ;;;  process  .TIC files
  289.  
  290.    Attention  "Mail: Processing tick files"
  291.    trion:utils/TrionTick  -p -b   -d
  292.  
  293.    ;CD trion:inbound       ;;; to enable unpacking ARC and ARJ archives
  294.  
  295.    Attention  "Mail: processor in UNpack mode"
  296.    trion:utils/tmp  U -c -b -f   -d
  297.  
  298.    ;CD trion:              ;;; to enable unpacking ARC and ARJ archives
  299.  
  300.    Attention  "Mail: Areafix started"
  301.    trion:utils/areafix   F -d
  302.  
  303.    Attention  "Mail: processor in PACK mode"
  304.    trion:utils/tmp  P    -d
  305.  
  306. endif
  307.  
  308. Attention "Mail: script finished" -q
  309. trion  -m -a -x  "Mail processor is Finished !"
  310.  
  311.  
  312.  
  313.  
  314.  
  315.    -Added a Mail(editor) button to the TrionRM window.
  316.  
  317.    -Added a Misc. button to the TrionRM window, which runs
  318.     the MiscGui program when clicked.
  319.  
  320.     Made a little MiscGui program which produces a window
  321.     with programmable buttons. Like clickit all over again.
  322.     Very usefull for starting shell things or third party
  323.     GUI tools. You can for instance put a node number in a
  324.     button .. and when you click on it it starts a script which
  325.     DeIconizes the node and gives a call command.
  326.  
  327.  
  328.     It uses the "Trion:utils/MiscGui.cfg".
  329.  
  330.     You can use Buttons and text fields which will be arranged
  331.     in a horizontal row. Until it finds a command to tell it
  332.     to go to the next row. 
  333.  
  334.     There are 5 commands.
  335.  
  336.     TEXT         "some text"
  337.     BUTTON       "some text"    "command to be executed"
  338.     NEXTROW
  339.     QUITBUTTON
  340.     NEXTBOX
  341.  
  342.     Text       <- makes a box with text
  343.     Button     <- makes a button
  344.     NextRow    <- sort of a return for a new line of buttons
  345.     QuitButton <- makes a quit button (optional)
  346.     NextBox    <- start a complete new box with buttons (optional)
  347.  
  348.  
  349.     Here is an experimental example, which will produce something like this:
  350.     (Just an example, you can use more rows or buttons)
  351.  
  352.  
  353.     Boss1     14:103/0       Make poll pkt     Make the call
  354.     Boss2     14:103/103     Make poll pkt     Make the call
  355.     Files     Bulkupload     CheckFileBase     Config this
  356.     Misc      KillOldMail    KillOldUsers      Compile menus
  357.     Trim      Trim logs      Trim backup       Trim msgs
  358.  
  359.  
  360.  
  361.  
  362. TEXT     "Boss 1"
  363. TEXT     "14:103/0"
  364. BUTTON   "Make poll pkt"     "Trion:utils/poll 14:103/0"
  365. BUTTON   "Make the call"     "Trion:utils/trion -c -1 14:103/0"
  366.  
  367. NEXTROW
  368.  
  369. TEXT  "Boss 2"
  370. TEXT  "14:103/103"
  371. BUTTON   "Make poll pkt"     "Trion:utils/poll 14:103/103"
  372. BUTTON   "Make the call"     "Trion:utils/trion -c -1 14:103/103"
  373.  
  374. NEXTROW
  375.  
  376. TEXT  "Files"
  377. BUTTON   "Bulkupload"        "Trion:utils/TBulkUpload"
  378. BUTTON   "CheckFileBase"     "Trion:utils/CheckFileBase I >ram:cfb"
  379. BUTTON   "Config this"       "CED Trion:cfg/MiscGui.cfg"
  380.  
  381. NEXTROW
  382.  
  383. TEXT  "Misc."
  384. BUTTON   "KillOldMail"       "Trion:utils/KillOldMail"
  385. BUTTON   "KillOldUsers"      "Trion:utils/KillOldFiles"
  386. BUTTON   "Compile Menus"     "Trion:utils/menu #?"
  387.  
  388. NEXTROW
  389.  
  390. TEXT  "Trim"
  391. BUTTON   "Trim logs"         "Trion:utils/TTrimlogs"
  392. BUTTON   "Trim backup"       "execute Trion:scripts/cbdir"
  393. BUTTON   "Trim msgs"         "execute Trion:scripts/TrimMsgs"
  394.  
  395.  
  396.  
  397.