home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / alt / bbs / 8154 < prev    next >
Encoding:
Internet Message Format  |  1993-01-24  |  22.6 KB

  1. Xref: sparky alt.bbs:8154 comp.bbs.misc:1857
  2. Newsgroups: alt.bbs,comp.bbs.misc
  3. Path: sparky!uunet!cs.utexas.edu!torn!csd.unb.ca!UNBVM1.CSD.UNB.CA
  4. From: T0FG <T0FG@UNB.CA>
  5. Subject: DTS-0001 proposed standard
  6. Message-ID: <24JAN93.01717854.0033@UNBVM1.CSD.UNB.CA>
  7. Lines: 484
  8. Sender: usenet@UNB.CA
  9. Organization: The University of New Brunswick
  10. Date: Sun, 24 Jan 1993 05:35:26 GMT
  11.  
  12. Proposed DTS-0001 0.07 beta standard follows:
  13.  
  14.  
  15. | This document is (C) 1993 Daniel Mecklenburg, and is posted to the
  16. | Internet newsgroups with permission.
  17. | Daniel can be reached directly at:
  18. | Fidonet:  1:325/608
  19. | Internet: Daniel.Mecklenburg@f608.n325.z1.fidonet.org
  20.  
  21. | - Will Burrow
  22. | Internet: t0fg@unb.ca
  23. |           will@p1.f14.n255.z1.fidonet.org)
  24. | Fidonet:  1:255/14.1
  25. `--------------------------------------------------------------------
  26. +-----------------------------------------------------------------------+
  27. |   Document: DTS-0001  (Doorware Technical Standard doc 0001)          |
  28. |    Version: 0.07 beta                                                 |
  29. |       Date: January 14, 1992                                          |
  30. +-----------------------------------------------------------------------+
  31.  
  32.  I. NOTES ABOUT THIS DOCUMENT
  33.  
  34.     Any line in the DTS-0001 document beginning with a | means that it is
  35.     an update from the previous version.
  36.  
  37.     Any line in the DTS-0001 document beginning with a * means that it is
  38.     currently under debate.
  39.  
  40.     This document is put together in the  attempt to establish a standard
  41.     file format for information to be passed between BBS software and BBS
  42.     doorware.  Please  leave comments  about missing (non-board specific)
  43.     information or settings that require ammendment.  This  can only be a
  44.     standard if everyone agrees upon its contents. Please contribute.
  45.  
  46.     The file that these settings appear in should  be called DROPFILE.###
  47.     where ###  represents the  node which  is creating the dropfile.  For
  48.     example  Node 1 would create DROPFILE.001.  The  dafault filename for
  49.     single node BBS is DROPFILE.001.
  50.  
  51.     If the  users  information  is changed by  the door  called  with the
  52.     DROPFILE file,  these changes should be  written to a new file called
  53.     CHANGES.### where ### represents  the node which is going  to read in
  54.     the changes and alter the users account. This file is optional. It is
  55.     only intended for those BBS's which support bidirectional information
  56.     to be passed between the board and doors.
  57.  
  58.     It should  be assumed that any door  requiring this file will find it
  59.     in  the default BBS directory  (thus you must  tell the door where it
  60.     is.)
  61.  
  62.     Doorware authors using this format  should include a freeware copy of
  63.     a dropfile conversion  utility that will convert other dropfile files
  64.     to the  DTS-0001  format.  This utility  is  as yet  undeveloped.  If
  65.     people would  supply me with other dropfile standards,  I could start
  66.     compiling a list and shall write this program for DOS based machines.
  67.  
  68.     The information being passed from BBS software and doors should be in
  69.     the following  format.   These configuration  settings should  not be
  70.     limited to appear in the dropfile in any specific sequence.
  71.  
  72.     Settings  found in DROPFILE.### should not be required.  There should
  73.     be developed a list of default settings for each entry.
  74.  
  75.  
  76.  II. STANDARD DATA VALUES
  77.  
  78.     Some standard formats are  proposed for information appearing  inside
  79.     the DROPFILE.### file. These are:
  80.  
  81. |       Phone numbers:      <country>-<area>-<exchange>-<number>
  82. |           This  is the  format adopted  by the Fidonet  standard and is
  83. |           used in many applications.
  84. |
  85. |       Dates:              <month>/<day>/<year>
  86. |           The year should be  expressed as a four digit quantity due to
  87. |           the impending year 2000. Month ranges from 0 and 12, day ranges
  88. |           from 1 to 31, and year ranges from 0 to 32767 <g>.
  89. |
  90. |       Times:              <hour>:<minute>
  91. |           expressed in 24 hour format. Hour ranges from 0 to 23 and
  92. |           minute ranges from 0 and 59.
  93. |
  94. |       Time till/left:     <minutes>
  95. |           All time until and time left  commands should be expressed in
  96. |           minutes. Minutes range from 0 to 32767.
  97. |
  98. |       Net addresses:      <zone>:<net>/<node>.<point>@<organization>
  99. |           Expressed  as a 5d net  address including the zone,  network,
  100. |           node, optional point, and optional organization. These values
  101. |           (except the organization of course) have values between 0 and
  102. |           32767.
  103. |
  104. |       File sizes:         <kilobytes>
  105. |           Expressed in number of kilobytes. Kilobytes range from 0 to
  106. |           2147483647 (signed long).
  107. |
  108. |       Ons and offs:       <n|0>
  109. |           Expressed as the value n or 0 for ON or OFF whereas n is any
  110. |           non-zero value.
  111. |
  112. |       Modes:              <mode1> [,<mode2>...]
  113. |           The display modes supported by the user are as follows (one or
  114. |           more of these may appear separated by commas):
  115. |
  116. |               Key         Description
  117. |               ----------- ---------------------------------------
  118. |               ANSI        (use ANSI codes)
  119. |               AVATAR      (use Avatar codes)
  120. |               VT100TAB    (use VT100 tab codes)
  121. |               VT102       (use VT102 codes)
  122. |               VT52        (use VT52 codes)
  123. |               YALE        (use YALE BBS codes)
  124. |               CBM         (use Commodore set)
  125. |               IBM         (use IBM set)
  126. |               HIGH        (accept high bit ascii / don't remap)
  127. |               TTY         (don't accept high bit ascii / remap)
  128. |               ETGC        (ETGC graphics protocol)
  129. |               NAPLPS      (NAPLPS graphics protocol)
  130. |               COLOR       (use color information)
  131. |               MONO        (use monochrome information)
  132. |
  133. |       Protocols:          <protocol>
  134. |           The protocols are defined below. These are expressed as a string
  135. |           not more than 16 characters in length.
  136. |
  137. |               Protocol    Description
  138. |               ----------- ---------------------------------------
  139. |               CISB        CompuServe B-Modem
  140. |               JMODEM      J-Modem protocol
  141. |               KERMIT      Kermit
  142. |               TELINK      Telink
  143. |               XMODEM      X-Modem
  144. |               XMODEM1K    X-Modem 1k
  145. |               YMODEM      Y-Modem
  146. |               YMODEMG     Y-Modem G
  147. |               ZMODEM      Z-Modem
  148. |               ZMODEMCRC   Z-Modem CRC
  149. |               ZMODEMRR    Z-Modem Recover/Resume
  150. |
  151.  
  152.  III. CONFIGURATION SETTING
  153.  
  154.     All the  information found in the DTS-0001 style  drop file is in the
  155.     format  LABEL = DATA.  The infomation  may appear  in any order.  The
  156.     settings are  not columnated  (equal sign does not appear in the same
  157.     place all the time).
  158.  
  159.     A. System configuration settings (one for each node):
  160.  
  161.         BOARD       = <board name>
  162. |           Description:    This setting contains the name of the BBS.
  163. |           Range:          String not more than 32 character in length.
  164. |           Example:        BOARD = Any ol' BBS
  165.  
  166.         SOFTWARE    = <bbs software tag>
  167. |           Description:    This setting briefly describes the bbs software
  168. |                           creating the dropfile.
  169. |           Range:          String not more than 32 character in length.
  170. |           Example:        SOFTWARE = TAG BBS 2.6c9z gamma
  171.  
  172.         NETADDRESS  = <node address [, node address ...]>
  173. |           Description:    This setting lists the fido-type net addresses
  174. |                           for the system.
  175. |           Range:          As per FTS-0005.
  176. |           Example:        NETADDRESS = 1:234/567.8, 75:1234/56
  177.  
  178.         MAXSECURITY = <maximum security level of node>
  179. |           Description:    This setting contains the maximum security level
  180. |                           used by the BBS. In most cases, this value will
  181. |                           be identical to the SysOp's security level.
  182. |           Range:          0 - 2,147,483,647 (signed long integer)
  183. |           Example:        MAXSECURITY = 255
  184.  
  185.         SYSOP       = <sysops name>
  186. |           Description:    This setting contains the name of the SysOp.
  187. |           Range:          String not more than 32 characters in length.
  188. |           Example:        SYSOP = John Q. Public
  189.  
  190.         SYSOPAKA    = <sysops handle>
  191. |           Description:    This setting contains the SysOp's handle or
  192. |                           AKA as used on the BBS. (Note: if SYSOPAKA is
  193. |                           not furnished, SYSOP should be used when
  194. |                           describing the sysop.)
  195. |           Range:          String not more than 32 characters in length.
  196. |           Example:        SYSOP = The Hamster
  197.  
  198.         BAUD        = <baud rate of user>
  199. |           Description:    This setting contains the baud rate the user is
  200. |                           currently using. This is the true baud rate and
  201. |                           not the effective baud rate. The reason for two
  202. |                           baud rates is for the determination of time for
  203. |                           downloading files and other simular operations
  204. |                           based on baud.
  205. |           Range:          0 - 2,147,483,647 (signed long integer)
  206. |           Example:        BAUD = 14400
  207.  
  208.         MAXBAUD     = <maximum baud of node>
  209. |           Description:    This setting contains the maximum baud rate for
  210. |                           this node. This is the maximum baud of the modem
  211. |                           or the rate at which the modem is locked at.
  212. |           Range:          0 - 2,147,483,647 (signed long integer)
  213. |           Example:        MAXBAUD = 38400
  214.  
  215.         LOCKEDBAUD  = <n|0>
  216. |           Description:    This tells the door if the modem is locked at
  217. |                           MAXBAUD.
  218. |           Range:          0 = no, n = yes where n is not 0 (signed
  219. |                           integer).
  220. |           Example:        LOCKEDBAUD = -1
  221.  
  222.         PORT        = <portname>
  223. |           Description:    This setting tells the door which communications
  224. |                           port the node is connected to or if the user is
  225. |                           logged on locally.
  226. |           Range:          LOCAL = keyboard, COMn: = port where n is the
  227. |                           communication port number.
  228. |           Example:        PORT = COM2:
  229.  
  230.         DATABITS    = <databits>
  231. |           Description:    This setting contains the number of databit the
  232. |                           communications port is using.
  233. |           Range:          7 or 8 (signed integer).
  234. |           Example:        DATABITS = 8
  235.  
  236.         PARITY      = <parity>
  237. |           Description:    This setting contains the parity type that the
  238. |                           communications port is using.
  239. |           Range:          String containing N, E, O, M, or S.
  240. |           Example:        PARITY = N
  241.  
  242.         STOPBITS    = <stopbits>
  243. |           Description:    This setting contains the number of stopbit the
  244. |                           communications port is using.
  245. |           Range:          0, 1, or 2 (signed integer).
  246. |           Example:        STOPBITS = 0
  247.  
  248.         PORTADDR    = <addr>
  249. |           Description:    This setting contains the i/o address for the
  250. |                           communication port. This value must be expressed
  251. |                           as an decimal integer.
  252. |           Range:          0 - 32767 (signed integer)
  253. |           Notes:          03E8 hex = 1000 decimal
  254. |           Example:        PORTADDR = 1000
  255.  
  256.         PORTIRQ     = <irq>
  257. |           Description:    This setting contains the irq number that the
  258. |                           communication port is using. This value must be
  259. |                           expressed as an decimal integer.
  260. |           Range:          0 - 32767 (signed integer)
  261. |           Example:        PORTIRQ = 5
  262.  
  263.         NEXTEVENT   = <minutes until next event>
  264. |           Description:    This setting contains the number of minutes until
  265. |                           the next system event.
  266. |           Range:          0 - 32767 (signed integer)
  267. |           Example:        NEXTEVENT = 90
  268.  
  269.  
  270.     B. User configuration settings (one for each user):
  271.  
  272.         USER        = <users name>
  273. |           Description:    This setting contains the name of the user.
  274. |           Range:          String not more than 32 characters in length.
  275. |           Example:        USER = John Dough
  276.  
  277.         USERAKA     = <users handle>
  278. |           Description:    This setting contains the handle or AKA of the
  279. |                           user.
  280. |           Range:          String not more than 32 characters in length.
  281. |           Example:        USERAKA = File Monger
  282.  
  283.         ORIGIN      = <users origin>
  284. |           Description:    This setting contains the city/state from where
  285. |                           the user is calling.
  286. |           Range:          String not more than 32 characters in length.
  287. |           Example:        ORIGIN = Lake Placid, NY
  288.  
  289.         VOICEPHONE  = <users voice number>
  290. |           Description:    This contains the users voice telephone number.
  291. |           Range:          As per FTS-0005.
  292. |           Example:        VOICEPHONE = 1-518-555-1234
  293.  
  294.         DATAPHONE   = <users data number>
  295. |           Description:    This contains the users data telephone number.
  296. |           Range:          As per FTS-0005.
  297. |           Example:        DATAPHONE = 1-518-555-9876
  298.  
  299.         PASSWORD    = <users password>
  300. |           Description:    This setting contains the users system password.
  301. |           Range:          String not more than 32 characters in length.
  302. |           Example:        PASSWORD = QWERTY
  303.  
  304.         SECURITY    = <users security level>
  305. |           Description:    This setting contains the security level of the
  306. |                           user.
  307. |           Range:          0 - 2,147,483,647 (signed long integer)
  308. |           Example:        SECURITY = 30
  309.  
  310.         CALLS       = <total calls by user>
  311. |           Description:    This setting contains the total number of calls
  312. |                           to the bbs the user has made to date.
  313. |           Range:          0 - 32,767 (signed integer)
  314. |           Example:        CALLS = 135
  315.  
  316.         LASTCALLED  = <date of last call>
  317. |           Description:    This setting contains the date of the users last
  318. |                           call to the bbs.
  319. |           Range:          (see formats above : Dates)
  320. |           Example:        LASTCALLED = 12/31/1999
  321.  
  322.         LASTTIME    = <time of last call>
  323. |           Description:    This setting contains the time at which the user
  324. |                           logged off the bbs during his/her last call.
  325. |           Range:          (see formats above : Times)
  326. |           Example:        LASTTIME = 23:45
  327.  
  328.         THISTIME    = <time of this call>
  329. |           Description:    This setting contains the time at which the user
  330. |                           logged onto the bbs during this call.
  331. |           Range:          (see formats above : Times)
  332. |           Example:        THISTIME = 14:02
  333.  
  334.         TIMELEFT    = <minutes left this call>
  335. |           Description:    This setting contains the number of minutes the
  336. |                           user has left during this call. Be sure to
  337. |                           compare this against NEXTEVENT before altering.
  338. |           Range:          (see formats above : Minutes)
  339. |           Example:        TIMELEFT = 180
  340.  
  341.         HEIGHT      = <users screen rows per page>
  342. |           Description:    This setting contains the number of rows the
  343. |                           users screen is configured with.
  344. |           Range:          1 - 32767 (signed integer).
  345. |           Example:        HEIGHT = 24
  346.  
  347.         WIDTH       = <users screen row width>
  348. |           Description:    This setting contains the number of columns the
  349. |                           users screen is configured with.
  350. |           Range:          1 - 32767 (signed integer).
  351. |           Example:        WIDTH = 132
  352.  
  353.         MODES       = <mode1 [, mode2 ...]>
  354. |           Description:    This setting describes the display modes that
  355. |                           the user is configured to handle.
  356. |           Range:          One or more of the following keys separated by
  357. |                           commas: ANSI, AVATAR, VT100TAB, VT102, VT52,
  358. |                           CBM, IBM, HIGH, TTY, ETGC, NAPLPS, COLOR, MONO,
  359. |                           YALE. These keys are described above in formats
  360. |                           : Modes).
  361. |           Example:        MODES = ANSI, AVATAR, COLOR
  362.  
  363.         EXPIRES     = <account expiration date>
  364. |           Description:    This setting contains the date when the users
  365. |                           account on the bbs will expire.
  366. |           Range:          (see formats above : Dates)
  367. |           Example:        EXPIRES = 12/31/1999
  368.  
  369.         PROTOCOL    = <users protocol of choice>
  370. |           Description:    This setting contains the upload/download
  371. |                           protocol of choice for the user.
  372. |           Range:          (see formats above : Protocols)
  373. |           Example:        PROTOCOL = ZMODEM
  374.  
  375.         UPLOADS     = <users total number of uploads>
  376. |           Description:    This setting contains the total number of uploads
  377. |                           the user has made toward the bbs.
  378. |           Range:          0 - 32767 (signed integer)
  379. |           Example:        UPLOADS = 156
  380.  
  381.         UPLOADK     = <users total uploaded K>
  382. |           Description:    This setting contains the total number of
  383. |                           kilobytes of files the user has uploaded to
  384. |                           the bbs.
  385. |           Range:          (see formats above : File sizes)
  386. |           Example:        UPLOADK = 2046
  387.  
  388.         DOWNLOADS   = <users total number of downloads>
  389. |           Description:    This setting contains the total number of
  390. |                           files the user has downloaded from the bbs.
  391. |           Range:          0 - 32767 (signed integer)
  392. |           Example:        DOWNLOADS = 21
  393.  
  394.         DOWNLOADK   = <users total downloaded K>
  395. |           Description:    This setting contains the total number of
  396. |                           kilobytes of files the user has downloaded from
  397. |                           the bbs.
  398. |           Range:          (see formats above : File sizes)
  399. |           Example:        DOWNLOADK = 873
  400.  
  401.         DOWNLOADMAX = <users download maximum K>
  402. |           Description:    This setting contains the maximum number of
  403. |                           kilobytes of files the user may download from
  404. |                           the bbs before being restricted in some manner.
  405. |           Range:          (see formats above : File sizes)
  406. |           Example:        DOWNLOADMAX = 875
  407.  
  408.         BIRTHDAY    = <users bithdate>
  409. |           Description:    This setting contains the users date of birth.
  410. |           Range:          (see formats above : Dates)
  411. |           Example:        BIRTHDAY = 4/21/1960
  412.  
  413.         TIMEBANKED  = <minutes in timebank>
  414. |           Description:    This setting contains the number of minutes the
  415. |                           users has in his/her time bank. Check with
  416. |                           NEXTEVENT before withdrawing time and putting it
  417. |                           into the users TIMELEFT...
  418. |           Range:          0 - 32767 (signed integer)
  419. |           Example:        TIMEBANKED = 60
  420.  
  421.         TIMEPERMSG  = <minutes to bank per message post>
  422. |           Description:    This setting contains the number of minutes the
  423. |                           users gets put into his/her timeback for every
  424. |                           message posted.
  425. |           Range:          0 - 32767 (signed integer)
  426. |           Example:        TIMEPERMESSAGE = 0
  427.  
  428.         CHATSLEFT   = <number of chats left>
  429. |           Description:    This setting contains the number of chats the
  430. |                           user may have with the sysop before being
  431. |                           denied.
  432. |           Range:          0 - 32767 (signed integer)
  433. |           Example:        CHATSLEFT = 1
  434.  
  435.         PAGESLEFT   = <number of sysop pages left>
  436. |           Description:    This setting contains the number of unanswered
  437. |                           pages the user may make to the sysop before being
  438. |                           restricted/scolded.
  439. |           Range:          0 - 32767 (signed integer)
  440. |           Example:        PAGESLEFT = 1
  441.  
  442.  
  443.     C. Special request commands
  444.  
  445.         REQFILE     = <file name>[, <file name>...]
  446. |           Description:    This setting contains one or more files that
  447. |                           the user is requesting for download.
  448. |           Range:          String not more than 64 characters in length.
  449. |           Example:        REQFILE = c:\bbs\files\textdoc.zip
  450.  
  451.         REQFILES    = <files filelist name>
  452. |           Description:    This setting contains the name of a file which
  453. |                           contains a list of files that the user is
  454. |                           requestiong for download.
  455. |           Range:          String not more than 64 characters in length.
  456. |           Example:        REQFILES = c:\bbs\filelist.txt
  457.  
  458.  
  459.     D. Message handling commands
  460.  
  461.         MSGAREA     = <text description of message area replying to>
  462. |           Description:    This setting describes the area to where the
  463. |                           message is going to be posted in.
  464. |           Range:          String not more than 32 characters in length.
  465. |           Example:        MSGAREA = DoorWare Echo (FidoNet)
  466.  
  467.         REPLYINGTO  = <name of person replying to>
  468. |           Description:    This setting contains the name of the person
  469. |                           to whom the message is in respond to.
  470. |           Range:          String not more than 32 characters in length.
  471. |           Example:        REPLYINGTO = Margaret Thompson
  472.  
  473.         REPLYTOPIC  = <topic reply is about>
  474. |           Description:    This setting contains the topic or subject
  475. |                           to which the message is being made.
  476. |           Range:          String not more than 32 characters in length.
  477. |           Example:        REPLYTOPIC = Those long stringy thing?
  478.  
  479.         QUOTEFILE   = <file containing message replying to>
  480. |           Description:    This setting contains the file that contains
  481. |                           the text to which the message can be quoted from.
  482. |           Range:          String not more than 64 characters in length.
  483. |           Example:        QUOTEFILE = c:\bbs\quote.txt
  484.  
  485.         REPLYFILE   = <file that will contain new message>
  486. |           Description:    This setting contains the file that will contain
  487. |                           the newly created message.
  488. |           Range:          String not more than 64 characters in length.
  489. |           Example:        REPLYFILE = c:\bbs\message.txt
  490.  
  491.  
  492.     Please  contribute  to this  proposal.  I will  attempt to  ammend and
  493.     append ideas  and will  repost updated  docs as  soon as  they become
  494.     available to me.
  495.  
  496.