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

  1.  
  2.  
  3.   Introduction
  4.   ------------
  5.  
  6.    This chapter is a description of the Trion BBS mail system.
  7.    The mail system is what lets the user read and write messages
  8.    and let the mailer import and export mail to other systems.
  9.  
  10.  
  11.   Message base format
  12.   -------------------
  13.  
  14.    The message base is stored (default) in the directory
  15.    "trion:mail/" with optional sub paths for different
  16.    networks or types or messages.
  17.    But all of these paths can be changed in the Mailareas.cfg
  18.    Note that the only fixed use of the "trion:mail/" dir is
  19.    for temporary storeage of (parts of) messages.
  20.  
  21.    Every message section consists of 2 or 3 files, the
  22.    a MsgData.N file, a MsgText.N file and sometimes a
  23.    Attach.N files.  (Where N is the number of the section)
  24.  
  25.    The MsgData files contain the actuall information on messages,
  26.    like names, data, subject, size, attributes etc..
  27.    All the entries in this file have the same (fixed) size,
  28.    this is usefull because when a message has to be updated
  29.    because for instance files are attached only a tiny part of
  30.    the file has to be changed.
  31.    Also random access is a lot easier that way, a message can
  32.    be found with a simple calculation instead of having to
  33.    read all previous messages.
  34.  
  35.    The MsgText contain the actuall bodies of the messages.
  36.    Every message in the MsgData files have "pointers" to
  37.    where a message is stored including its size, so when
  38.    a the actuall body of the message has to be read a hunk
  39.    of memory of the rigth size can be allocated.
  40.  
  41.    Sometimes there is also an Attaches file where a list
  42.    of attached files including their path is stored for
  43.    some messages. Note that incoming attached files
  44.    are stored in the directory "trion:outbound/attaches/".
  45.  
  46.    Note that message sections will grow bigger and bigger
  47.    until you give a command to "trim" them.
  48.    This is done by the program "RMCommander", if you use the
  49.    dupe check options you also have to remake the DupeBase
  50.    because that will grow to.
  51.    So the best way would be to use the script "trion:scripts/trimmsgs"
  52.    because it contains all the calls needed to trim the message base.
  53.    A good idea would be to start the script a couple of times a
  54.    week with the scheduler or a Cron program.
  55.  
  56.  
  57.   User access capabilities
  58.   ------------------------
  59.  
  60.    The access a user has to a message section is defined in the "template"
  61.    that is connected to his level. Templates are defined in the
  62.    templates.cfg and described in chapter 3.
  63.  
  64.    In a template, lines with sections ranges with the same access flags
  65.    are listed. Like this:
  66.  
  67.     MsgAccess   [V-PW--]    , 1 , 3                      ;CommentToSysop
  68.     MsgAccess   [V-P---]    , 10-40                      ;Netmail
  69.     MsgAccess   [VR----]    , 2 , 5 , 100-199 , 200-299  ;Local/Echomail
  70.  
  71.     (with 'All' you can use all areas with the given flags, same
  72.      effect as 1 - 65536)
  73.  
  74.    At the moment there are 6 flags for message sections:
  75.  
  76.     View Read Private Write Attach Special
  77.  
  78.    Where the flags have the folowing meaning:
  79.  
  80.    V = View,    User sees area in Lists and can go to this area.
  81.    R = Read,    User can Read/Scan all messages in this area.
  82.    P = Private, User can only Read/Scan messages To and From him.
  83.    W = Write,   User can Write in this area.
  84.    A = Attach,  User can Attach files to messages.
  85.    S = Special, User can Read/Scan deleted or private messages.
  86.  
  87.  
  88.  
  89.   Message related features
  90.   ------------------------
  91.  
  92.    message forwarding & cross reply
  93.  
  94.    While reading messages, a user can forward them to other
  95.    users and other sections or cross reply in an other section.
  96.    Note that the user should have access to the section he wants
  97.    to forward the message to.
  98.    Note that the forward and cross reply options look like
  99.    each other but are different. With the forward option the
  100.    original message is left intact, but with the cross reply
  101.    option the message text is quoted.
  102.  
  103.  
  104.    file attaches
  105.  
  106.    After writing a message a menu appears with questions if
  107.    the message should be saved or files should be attached.
  108.    During a local login there appears a prompt to enter
  109.    filenames (with path), when a user is logged in remote
  110.    files can be uploaded.
  111.    Note that the message is first saved and then the system
  112.    asks for the files to be attached.
  113.    Note that files are stored in "trion:outbound/attaches/".
  114.    If a user forgets to attach files during saving, then
  115.    files can be attached when reading messages.
  116.  
  117.  
  118.   Message editors
  119.   ---------------
  120.  
  121.    Every user has a parameter which determines which editor
  122.    is loaded when he writes mail.
  123.  
  124.    If it is 0 (zero) the internal line editor is started.
  125.  
  126.    If it is 1 (one) you get the internal line editor if you
  127.    call remote, but if you login locally you get the
  128.    external editor configured in Trion:cfg/trion-X.cfg,
  129.    so you can use editors like the CygnusEditor (CED) for
  130.    your mail. In that case there will be a text that the
  131.    editor is started and that you have to press return
  132.    to continue. Of course you only press return after
  133.    you edited the message and did a 'Save&Quit' in CED.
  134.    Note that if you had CED already running nothing
  135.    seems to be happening but there will be a window
  136.    on the workbench stating that there is already a
  137.    CED running and if you want to run an other one.
  138.  
  139.    If the parameter is 2 or higher an external editor
  140.    will be ran with the name "doors:fsed/fsedX"
  141.    (Where X is the value of the parameter)
  142.    This is done so you can have different editor, which
  143.    is usefull when writing/testing new editors.
  144.  
  145.  
  146.   message section configuration
  147.   -----------------------------
  148.  
  149.    Message areas are configured in the 'Trion:cfg/MailAreas.cfg'.
  150.  
  151.    Each config line is in a specific format which is dependent on the
  152.    type of the area, there are 3 different kinds of area types.
  153.    There are Local areas , echomail and netmail areas.
  154.  
  155.  
  156.    Global format
  157.    -------------
  158.  
  159.  
  160.    Format for a local message area:
  161.  
  162.    #area  flags  MaxMsgs  path  areaName
  163.  
  164.    Examples:
  165.  
  166.    #001  [LW-ST-] 120  TRION:mail/   "[loc] Sysop Comments"
  167.    #002  [LWA---] 100  TRION:mail/   "[loc] Chat Area"
  168.    #003  [LW-ST-] 100  TRION:mail/   "[loc] Private Area"
  169.  
  170.  
  171.  
  172.  
  173.    Format for an netmail area:
  174.  
  175.    #area  flags  MaxMsgs  path  areaName  TagName  NodeNumber
  176.  
  177.    Examples:
  178.  
  179.    #016  [NWIST-] 100 TRION:mail/ "[Fido] Netmail"  FIDO_NET  2:284/324.20
  180.    #017  [NW-ST-] 100 TRION:mail/ "[Trion] Netmail" TRION_NET 350:1002/100
  181.    #040  [NWIST-] 100 TRION:mail/ "[I-net] E-mail"  "E-Mail"  2:284/324.20
  182.  
  183.  
  184.  
  185.  
  186.    Format for an echomail area:
  187.  
  188.    #area  flags  MaxMsgs  path  areaName  TagName  NodeNumber
  189.  
  190.  
  191.    Examples:
  192.  
  193.    #304  [EW-ST-] 999 TRION:mail/fido/ "[Fido] Amiga"         AMIGA       2:284/324.20
  194.    #305  [EW-ST-] 120 TRION:mail/fido/ "[Fido] Amiga NL"      AMIGA.028   2:284/324.20
  195.    #306  [EW-ST-] 120 TRION:mail/fido/ "[Fido] Amiga Comms"   AMIGA_COMMS 2:284/324.20
  196.    #308  [EW-ST-] 120 TRION:mail/fido/ "[Fido] Amiga Program" AMIGA_PROG  2:284/324.20
  197.    #309  [EW-ST-] 120 TRION:mail/fido/ "[Fido] Amiga Tech"    AMY_TECH    2:284/324.20
  198.  
  199.  
  200.    Format for an echomail area if you are a HUB or HOST:
  201.  
  202.    #area  flags  MaxMsgs  path  areaName  TagName  NodeNumber
  203.    HubNumber HostNumber [other_nodenumbers]
  204.  
  205.    (Maximum of 5 extra NodeNumbers per Area)
  206.  
  207.    Examples:
  208.  
  209.  
  210.    #050  [EW-ST-] 100 TRION:mail/trion/ "[Trion] Beta"  TRION_BETA  350:1002/100
  211.    350:1002/0 350:1002/1
  212.    #051  [EW-ST-] 300 TRION:mail/trion/ "[Trion] Chat"  TRION_CHAT  350:1002/100
  213.    350:1002/0 350:1002/1
  214.    #052  [EW-ST-] 100 TRION:mail/trion/ "[Trion] News"  TRION_NEWS  350:1002/100
  215.    350:1002/0 350:1002/1
  216.    #053  [EW-ST-] 100 TRION:mail/trion/ "[Trion] Quest" TRION_QUEST 350:1002/100
  217.    350:1002/0 350:1002/1
  218.  
  219.  
  220.    Note:  Don't use area number #0
  221.    Note:  Don't forget a ':' or '/' at the end of a path !!
  222.    Note:  A 'BAD' area is an echomail area with tagname 'BAD'
  223.    Note:  A 'DUPES' area is an echomail area with tagname 'DUPES'
  224.    Note:  Use "" if you want to use spaces in a field.
  225.  
  226.  
  227.    Fields:
  228.    -------
  229.  
  230.    Area:
  231.  
  232.    Every section definition starts with an area number.
  233.    Note that the area number should be unique, there can only
  234.    be one message area number with a certain number.
  235.    Numbers allowed for a message section are 1 - 65536.
  236.    Note that the number should start with a '#' character so
  237.    the BBS knows this line is the start of a section definition.
  238.  
  239.  
  240.    Flags:
  241.  
  242.    Every section needs a number of flags.
  243.    Flags are basically a string of characters, optionally you
  244.    can use '-' characters to make the config clearer. In that
  245.    case you can give the characters a fixed position.
  246.    Also you can place the string between [] to make the the config
  247.    more readable.
  248.  
  249.    The type of an area is configured by flags, each area has to have
  250.    a flag which determines if it is used for local, echo or netmail.
  251.  
  252.     type of area    (you must use 1 of these per section)
  253.  
  254.     L = Local Messages
  255.     N = Netmail
  256.     E = Echomail
  257.  
  258.  
  259.    Also there are a few flags which determine the characteristics of an area.
  260.    Which means that those flags can not be overruled by flags in the
  261.    users template.
  262.  
  263.  
  264.     Characteristics of area
  265.  
  266.     A = User may use an alias in this area.
  267.     W = Users can write in this area.
  268.     O = Obligatory (for areafix) can't disconnect with areafix
  269.     I = Internet support (For E-mail)
  270.     S = Use signatures in this section
  271.     T = Use taglines in the section
  272.  
  273.    Note that a user can only write messages in an area if he has Write
  274.    acces in his Template AND the area has a Write flag.
  275.  
  276.    Note that an area can have a Read flag OR a Private flag or none of
  277.    the before mentioned.
  278.    If a user has a Read flag he can read all messages, if he has a Private
  279.    flag he can only Read messages which he has written or which are
  280.    written to his name or alias.
  281.  
  282.  
  283.    MaxMsgs:
  284.  
  285.    MaxMsgs if the number of messages left in this message section
  286.    after the command to reduce messages in the message base is given.
  287.  
  288.  
  289.    path:
  290.  
  291.    The path is where the files for this section are stored.
  292.    Note that a path should end with a ':' or '/' character
  293.    of the files are placed in the wrong path.
  294.  
  295.  
  296.    areaName:
  297.  
  298.    The areaName is the "nice name" the BBS uses to indicate this
  299.    section.
  300.  
  301.  
  302.    TagName:
  303.  
  304.    The TagName is used in Echomail sections to as a identifier of
  305.    the section. All messages with a matching TagName are placed
  306.    in this section. Note that TagNames are case sensitive and
  307.    should be copied exactly as they are given to you.
  308.  
  309.  
  310.    NodeNumber:
  311.  
  312.    This is the node number used in messages if an echomail or
  313.    netmail is written in this section.
  314.  
  315.  
  316.   BAD messages
  317.   ------------
  318.  
  319.    You can create an optional section where bad messages are
  320.    stored. a bad section is an echomail section with the
  321.    tagname "BAD" (in uppercase).
  322.  
  323.    Bad messages are echomail messages with no matching section
  324.    on your system.
  325.  
  326.    Also messages with a damaged or missing origin line, messages
  327.    with no path lines or messages with no seen-by lines
  328.    are moved to the bad section (if the -G option is used in
  329.    the mail processor).
  330.  
  331.    Also duplicate messages are stored in the bad section if
  332.    you have no DUPES section.
  333.  
  334.  
  335.   Duplicate messages
  336.   ------------------
  337.  
  338.    If you use the duplicate check function you should create a
  339.    section where duplicate messages are move to.
  340.    A dupes section is an echomail section with the tagname "DUPES"
  341.    (in uppercase).
  342.    
  343.  
  344.   Fidonet netmail
  345.   ---------------
  346.  
  347.    It is a good idea to make the first netmail section a FIDO
  348.    netmail section. Because if there is no section with a 
  349.    matching zone number the message is stored in the first
  350.    netmail section. Because fido net uses zone number 1 to 6,
  351.    netmail from an other continent probably has an other
  352.    zone number than you have.
  353.  
  354.    Note that for netmail you need a route.cfg where the program
  355.    can find where netmail has to be send to.
  356.    See chapter 14 for an explanation of the route file.
  357.  
  358.    There are a handfull of programes that are able to write
  359.    netmail, like tick and areafix programs. These programs
  360.    may need the name of the sysop, these are stored in
  361.    nodelists or pointlists. See chapter 14 for an explanation
  362.    of these files.
  363.  
  364.  
  365.   Fidonet echomail
  366.   ----------------
  367.  
  368.    Note that if you are not a point or node but a hub, host or
  369.    even higher like hq in a net you need an address list with
  370.    all the extra node numbers you have got.
  371.    The extra nodenumbers are listed at an extra line after
  372.    the definition of the section itself.
  373.  
  374.    Note that the mail processor has the option to check for
  375.    duplicate messages. This means that if there is an error
  376.    somewhere and you receive messages you already received
  377.    earlier they are moved to the DUPES (or BAD) section.
  378.    To be able to use "DupeChecking" you first have to make
  379.    a "DupeBase" which contains information on all messages
  380.    needed to detect a "Dupe". Note that you only have to
  381.    create a DupeBase if you have a message base and
  382.    didn't use dupechecking before, or after you trimmed
  383.    messages in the messages base.
  384.    Read the "trion:docs/tmp.doc" for details how to use
  385.    dupechecking.
  386.  
  387.    Every Echomail section needs a tagname.
  388.    The TagName is used in Echomail sections as a identifier of
  389.    the section. Note that TagNames are case sensitive and
  390.    should be copied exactly as they are given to you.
  391.    If you join a net you should obtain a list with the tagnames
  392.    of all sections and create them in the mailareas.cfg.
  393.  
  394.  
  395.  
  396.    If you want the mail processor to export echomail to your boss or
  397.    other systems you have to add the area to the 'trion:cfg/mail.cfg'.
  398.  
  399.    In this configuration file you make an entry for each area.
  400.    An entry starts with an AREA xxxx line, folowed with lines on which
  401.    the nodenumber of your boss and the nodenumbers of the nodes and
  402.    points you feed are placed.
  403.    An entry is terminated with a '#' symbol.
  404.  
  405.  
  406.    For example:
  407.  
  408.    AREA TRON_BETA
  409.    14:103/0
  410.    14:103/103
  411.    #
  412.  
  413.  
  414.    You can use the GUI program MailEd to add a nodenumber to a
  415.    whole net .. and to see what sections are missing in the
  416.    mail.cfg
  417.  
  418.  
  419.    Note that the mail processor needs to know a password and archiver
  420.    for your boss node and the nodes you feed, these are configured
  421.    in the 'trion:cfg/systems.cfg' file.
  422.  
  423.    Also you need to add your nodenumbers to the 'trion:cfg/aka.config'
  424.    or you will get no mail if you call your boss.
  425.  
  426.  
  427.  
  428.    If you want to connect points you have te change some configs.
  429.  
  430.    You have to add the point to the 'trion:cfg/systems.cfg' file.
  431.    If the system is not in a nodelist, you have to add it
  432.    to a nodelist or beter the pointlist (See the areafix doc)
  433.    or else the areafix and tick programms don't know the name of
  434.    the point/sysop.
  435.  
  436.    Then you to add the point to areas in the mail.cfg OR you could
  437.    use areafix for that. (See the areafix doc)
  438.    You have to add the point the areafix configuration
  439.    and then the point can connect itself, or you can give areafix
  440.    the command to connect all the available areas.
  441.  
  442.    If you want triontick to send files to the point you
  443.    have to change the filenet.doc and filenodes.doc
  444.    (see the triontick doc)
  445.  
  446.