Changing the name of the 'Aide' access level to 'Admin'
[citadel.git] / citadel / techdoc / delivery-list.txt
index 799c2155078ef0df57784db546b60377948ece51..e414917b07f690ecce8f4e5f4e90d3702299aec0 100644 (file)
@@ -2,13 +2,15 @@ Description of the custom MIME type "application/x-citadel-delivery-list"
 
  This MIME type may be found in the outbound queue room on Citadel systems,
 which is typically called "__CitadelSMTPspoolout__".  The room is flagged as
-private, but we will eventually hide it even to Aides.  
+a "system" room, which means that it's completely hidden to everyone, although
+an Admin can get to it if the full name is specified (but unlike a normal
+hidden room, it does not appear in the known rooms list on subsequent visits).
  
  Messages in this format contain delivery instructions.  Therefore, for each
 message in the queue to be delivered to one or more recipients, there will be
 *two* messages in the room: one containing the actual message, and the other
 containing delivery instructions.  It is expected that the instructions
-message may be replaced at any time (using an Extended ID field) if delivery
+message may be replaced at any time (using an Exclusive ID field) if delivery
 to only some of the recipients has been accomplished.
  
  Citadel keeps reference counts of each message on disk.  Therefore if a
@@ -21,7 +23,7 @@ a single instruction (usually a recipient).  Fields are separated by the
 vertical bar character ("|") and there will always be at least one field on
 each line.
  
+ -- Once per Queue-Item --
  
  INSTRUCTION:  msgid
  SYNTAX:       msgid|0000000
@@ -40,36 +42,59 @@ each line.
     the system.
  
  
- INSTRUCTION:  local
- SYNTAX:       local|Friko Mumjiboolean|0
+ INSTRUCTION:  attempted
+ SYNTAX:       attempted|999999999
  DESCRIPTION:
-    Indicates the name of a recipient on the local system to which the
-    message must be delivered.  Almost never seen because most code delivers
-    directly.
+    Contains a timestamp designating the date/time of the last delivery
+    attempt.
  
  
- INSTRUCTION:  room
- SYNTAX:       room|Lobby|0
+ INSTRUCTION:  retry
+ SYNTAX:       retry|9999999
  DESCRIPTION:
-    Indicates the name of a room on the local system to which the message
-    must be copied.  Same implications as 'local'.
+    Citadel does not retry SMTP delivery at a fixed interval.  Instead, it
+starts at a nominal interval (15 minutes by default) and then doubles the
+interval after each failed attempt.  This instruction contains the interval
+which should currently be followed (and doubled again, if the next delivery
+fails).
+  
+  
+ INSTRUCTION:  bounceto
+ SYNTAX:       bounceto|Big Bad Sender[@host]
+ DESCRIPTION:
+    Where to send "bounce" messages (delivery status notifications).  The
+    contents of the second field are supplied as the "recipient" field to
+    CtdlSaveMsg(), and therefore may be a local username, a user on another
+    Citadel, or an Internet e-mail address.
  
+
+ INSTRUCTION:  envelope_from
+ SYNTAX:       envelope_from|blurdybloop@example.com
+ DESCRIPTION:
+    Sets a value to be used as the envelope sender during the 'MAIL FROM:'
+    phase of the SMTP transaction.  If an envelope sender is not supplied,
+    one is extracted from the message body.
+
+ INSTRUCTION:  source_room
+ SYNTAX:       source_room|Citadel Support
+ DESCRIPTION:
+    when sending mailinglist rooms this contains the source room for displaying
+    and messaging purposes.
+
+
+
+
+-- Once per Remote-part per Queue-Item --
+
  INSTRUCTION:  remote
- SYNTAX:       remote|billg@microsoft.com|0|delivery status message
+ SYNTAX:       remote|friko@mumjiboolean.com|0|delivery status message
  DESCRIPTION:
     Names a recipient on a remote system to which the message should be
     delivered.  The third parameter may contain any of the following values:
        0 = No delivery has yet been attempted
        2 = Delivery was successful
+       3 = transient error state; like connection failure or DNS lookup failure
        4 = A transient error was experienced ... try again later
        5 = Delivery to this address failed permanently.  The error message
            should be placed in the fourth field so that a bounce message may
            be generated.
- INSTRUCTION:  ignet
- SYNTAX:       ignet|uncnsrd|Lobby|0|delivery status message
- DESCRIPTION:
-    Names a room on another Citadel node to which this message needs to be
-    spooled over the network.