Hippo v2 specifications, version 1.1, 3.6.1995 ======================================================================== Hippodump ======================================================================== The BBS sends file grabfile.hd, which can be packed with some common packer. In that case the name extension is the normal extension of the packer. Command-line tells what is coming next. At the moment there are five different commands: 1. Message 2. Info (information for the reader) 3. NewFiles (list of the new files in the BBS) 4. Bulletin 5. File (a file is attached to the message packet) The lines after the Command-line depend on the command. Lines-line is used with every command. It must be the last line in the header, so that the reader knows when block ends. Commands are explained here. ------------------------------------------------------------------------ 1. Message -command ------------------------------------------------------------------------ Area: Message area name Status: Message status: Private, Read Number: Message number Reply: Message, for which this message is a reply Next: Message, which is a reply for this message NReply: Next reply to the message, for which this message is a reply Subject: Message subject Date: Message date in format YYYYMMDDHHMMSS From: Message sender To: Message receiver Content-Type: Standard that the message text follows (can be "plain/text" or "text/enriched") MIME-Version: If Content-Type is "text/enriched" then this field tells the MIME version number Lines: Lines in the message (this must exist, and has to be the last line in the header; can be zero) Example of the Message -command ------------------------------- Command: Message Area: Main Board Number: 334 From: John Wayne To: All Subject: Hello? Date: 19940327151554 Lines: 2 This message has two lines. Status-line doesn't exist. (This is the second line.) ------------------------------------------------------------------------ 2. Info -command ------------------------------------------------------------------------ System: Name of the system Software: Software name and version SysOp: SysOp's name Address: System's net address and net's name (space between them) Area: Message area name Status: Message area status: Must (user can't resign) Net (area is a net area) Mail (all messages are private) Private (private messages can be written with the Private-status in the Post-command (see Hipporeply); is not necessarily needed if Mail-status already exists) NoReply (replies can't be made in this area), AllFix (messages can be written to the AllFix file finder) NameFix (messages can be written to the NameFix user finder) Resume (area is for user r‚sum‚s) FileInfo (area is for file infos) Access: User's access and status in the area: Member (user is a member) Read (user can read messages) Write (user can write messages) Lines: Extra information length (this must be, ans has to be the last line in the header; can be zero) There can be many Address-lines. Example: Address: 2:222/151 Fidonet Area-, Status- and Access-lines must be consecutive, and Status and Access can be missing. If Lines is greater than zero there is extra information. It can be an advert of the BBS (no ANSI codes allowed), or something else important. Example of the Info -command ---------------------------- Command: Info Name: BCG-Box 4 Software: BBBS v0.89 SysOp: Kim Heino Address: 2:222/151 Fidonet Address: 12:345/678 FooNet Area: Post Office Status: Must,Mail Access: Member,Read,Write Area: Netmail Status: Must,Mail,Net Access: Member,Read,Write Area: Main Board Access: Read,Write Lines: 1 Call BCG-Box again! Open 24 hours a day! ------------------------------------------------------------------------ 3. NewFiles -command ------------------------------------------------------------------------ Lines: How many lines there are in the list After this is the list of new files. It is not of any special format, because the reader doesn't need to understand it. The reader can for example convert it to an ordinary message (and add the necessary information, like sender, receiver, ...). Example of the NewFiles -command -------------------------------- Command: NewFiles Lines: 7 Here are the new files in BCG-Box 4: Directory: /txt/* File name Date kB Dlds File description --------- ---- -- ---- ---------------- hippo2.txt 940327 12k 1 Hippo v2 document ------------------------------------------------------------------------ 4. Bulletin -command ------------------------------------------------------------------------ Number: What is the number of the following bulletin Lines: How long the bulletin is Example of the Bulletin -command -------------------------------- Command: Bulletin Number: 1 Lines: 2 This is bulletin number one. ... ------------------------------------------------------------------------ 5. File -command ------------------------------------------------------------------------ Name: Filename Lines: Number of information lines, can be zero This command notifies that there is a file attached to the message packet. It is packed with the grabfile.hd file. Example of the File -command ---------------------------- Command: File Name: hippo2.doc Lines: 1 This file was attached to a message #123 in Netmail. ======================================================================== Hipporeply ======================================================================== User sends file named grabfile.hra, which is packed with some common packer. There can be many *.hr files in ASCII format. Command-line tells what is coming next. At the moment there are three different commands: 1. Post (write a message, new or reply) 2. Join (join an area) 3. Resign (resignation from an area) The lines after the Command-line depend on the command. Lines-line is used with every command. It must be the last line in the header, so that the reader knows when block ends. Commands are explained here. ------------------------------------------------------------------------ 1. Post -command ------------------------------------------------------------------------ Area: Message area name Status: Message status: Private Reply: If reply, number of the original message Subject: Message subject; defaults to "" if message is not a reply To: Message receiver; defaults to "ALL" if message is not a reply Destination: The receiver's netmail-address, if the message is written to a netmail-area (area has both Net and Mail statuses) Lines: How many lines (this must exist, and has to be the last line in the header) Examples of the Post -command ----------------------------- Command: Post Area: Hardware Lines: 2 No receiver or subject, so message is to ALL with subject "" (not very useful...). Command: Post Area: Hardware Reply: 49 Subject: Testing... Lines: 2 This is a reply to Hardware message #49. Receiver is taken from the original message and subject is changed. Command: Post Area: General chatting Status: Private Subject: Testing again To: John Wayne Lines: 1 This is a private message to John Wayne. Command: Post Area: Netmail Subject: And some testing... To: Joe Hacker Destination: 2:222/151 Lines: 1 Maybe Joe Hacker is living at the address 2:222/151? ------------------------------------------------------------------------ 2. Join -command ------------------------------------------------------------------------ Area: Area to be joined Lines: Must exist, and has to be the last line in the header; can be zero Lines after Lines-line, if any, are discarded. Example of the Join -command ---------------------------- Command: Join Area: Flame Lines: 1 This line is discarded, so it can be whatever or missing. ------------------------------------------------------------------------ 3. Resign -command ------------------------------------------------------------------------ Area: Area to be resigned from Lines: Must exist, and has to be the last line in the header; can be zero Lines after Lines-line, if any, are discarded. Example of the Resign -command ------------------------------ Command: Resign Area: Flame Lines: 0 ======================================================================== In case of any problems concerning the Hippo-format the author can be contacted: BBS: BCG-Box 4, +358 21 240 4036, +358 21 240 7755, 24h Email: Kim.Heino@utu.fi Mailer and Hippo v1 are copyrights of Mika Hasu. Hippo v2 is copyright of Kim 'B' Heino and Mika Hasu.