home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / comm / mtlk0920.lha / ASI / doc / MTalk.doc < prev    next >
Text File  |  1992-08-10  |  19KB  |  502 lines

  1.  
  2.     ===============================================================
  3.     Multi-Talk V0.920 - Multi-user Teleconference for the Amiga(tm)
  4.                             Documentation
  5.                           - August 4, 1992 -
  6.     ===============================================================
  7.  
  8.          Copyright (c) 1992 by Sam Yee.  All rights reserved.
  9.  
  10.  
  11. ======================================================================
  12. COPYRIGHT
  13. =========
  14.  
  15. The   program,  Multi-Talk  and  its  documentation  are  written  and
  16. copyrighted by Sam Yee.  The UNREGISTERED version of Multi-Talk may be
  17. distributed freely providing the following restrictions are satisfied:
  18.  
  19. o Distributors may not charge more than the cost of a diskette used in
  20.   the distribution of this program.
  21.  
  22. o Distributors may only distribute the unmodified copy of the original
  23.   program, along with its documentation, and copyright notices intact.
  24.  
  25. o Commercial  distribution  is  only  possible with written permission
  26.   from the author.
  27.  
  28. The  REGISTERED  versions  of  Multi-Talk  may  not  be redistributed.
  29. Redistribution is illegal, immoral, and strictly prohibited.
  30.  
  31.  
  32. ======================================================================
  33. DISCLAIMER
  34. ==========
  35.  
  36. This   program  and  its  documentation  are  provided  "as  is".   No
  37. warranties  are  made  with  respect  to  the  accuracy,  reliability,
  38. performance  or  operation  of this software and information.  You are
  39. using this program at your own risk.  The author is not liable for any
  40. damages that may have been caused by using this software.
  41.  
  42.  
  43. ======================================================================
  44. INTRODUCTION
  45. ============
  46.  
  47. MTalk (short for Multi-Talk) is a multi-user teleconference system for
  48. the  Amiga(tm)  series of computers.  It can run on any bulletin board
  49. system (BBS) that supports standard input and output.  It can also run
  50. without  a  BBS.   The  reason why MTalk was created was because there
  51. was,  until  now,  no  decent conferencing  software for the Amiga(tm)
  52. which provides the features and flexibilities of MTalk.
  53.  
  54. All documentation in this file is directed to the system operator, not
  55. other  users of MTalk.  Users of MTalk should read the on-line help on
  56. how to operate it when it's running.
  57.  
  58. Note,  since  MTalk is so complex, it's likely I will miss documenting
  59. certain  things.   If  you  feel  I  have  not covered certain aspects
  60. enough, please send me mail, so I can revise this file.
  61.  
  62.  
  63. ======================================================================
  64. LIMITS
  65. ======
  66.  
  67. 1. Unlimited users.
  68. 2. Unlimited channels.
  69. 3. Unlimited independent conferences.
  70. 4. 512  characters,  including  the  null character, per command line.
  71.    This will be configurable on later versions.
  72. 5. 10  history lines.  Also this will be configurable at a later date.
  73.  
  74. Note  that the limits 1, 2, and 3 are only applicable to the unlimited
  75. users version of MTalk.
  76.  
  77.  
  78. ======================================================================
  79. REQUIREMENTS
  80. ============
  81.  
  82. This  program  runs  on  any Amiga(tm) with version 2.04 of the OS.  A
  83. system  with  512K would suffice.  The minimum memory requirements for
  84. the first user is the size of the executables (MTalk and MTalkServer),
  85. size  of  any  data  files,  plus ~15K.  Each additional user requires
  86. ~15K,  plus  an  additional  serial  port.   Note  that  memory  usage
  87. increases  when the data files' size increases, or the size and number
  88. of history lines increase, etc.
  89.  
  90.  
  91. ======================================================================
  92. INSTALLATION
  93. ============
  94.  
  95. You  must  put  MTalk  and  it's  accompanying files into the assigned
  96. directory called DOOR:ASI.  DOOR:  is the proposed directory for doors
  97. (or BBS utilities) used by many system operators and door programmers.
  98. ASI  is  a directory where you should put the BBS utilities written by
  99. me.   You  must  also create several directories within DOOR:ASI.  The
  100. directories are:
  101.  
  102. DOOR:ASI/bin/        -- Where all executable files go.
  103. DOOR:ASI/config/     -- Where all configuration files go.
  104. DOOR:ASI/data/       -- Where all the data files go.
  105. DOOR:ASI/doc/        -- Where all the documents go.
  106. DOOR:ASI/help/       -- Where all the help files go.
  107. DOOR:ASI/key/        -- Where all the key files go.
  108. DOOR:ASI/script/     -- Where all the scripts go.
  109. DOOR:ASI/text/       -- Where all other text files go.
  110. DOOR:ASI/user/       -- Where all the data on each user go.
  111.  
  112. The files pertaining to MTalk are as follows:
  113.  
  114. DOOR:ASI/bin/MTalk
  115.   -- This is the client program each user calls.
  116. DOOR:ASI/bin/MTalkServer
  117.   -- This is the server program for each conference.
  118. DOOR:ASI/bin/MTalkKillServer
  119.   -- This is the program to abort any server.
  120. DOOR:ASI/config/MTalk.DOORTAB
  121.   -- All the doors configuration data will be stored here.
  122. DOOR:ASI/config/MTalk.LVLTAB
  123.   -- All the access levels for the built-in commands are stored here.
  124. DOOR:ASI/config/MTalk.default.prefs
  125.  -- Default preferences for new users.  To create this file, simply
  126.     enter MTalk, use "/pref" to edit the options and "/pref save"
  127.     to save.
  128.     Now type "copy DOOR:ASI/user/<user_name>/MTalk.prefs TO
  129.                    DOOR:ASI/config/MTalk.default.prefs".
  130. DOOR:ASI/data/MTalk.ACTIONS
  131.   -- All the action data is stored here.
  132. DOOR:ASI/data/MTalk.FILTER
  133.   -- All the filter data is stored here.
  134. DOOR:ASI/help/MTalk/
  135.   -- Help files for all the built-in commands, plus door commands.
  136. DOOR:ASI/key/MTalk.key
  137.   -- The key for a registered version of MTalk.
  138. DOOR:ASI/script/MTalk.startup
  139.   -- The startup script.  When a user enters the conference, this is
  140.      executed.
  141. DOOR:ASI/user/<user_name>/MTalk.prefs
  142.   -- Preferences file for the user.
  143. DOOR:ASI/user/<user_name>/MTalk.startup
  144.   -- User's custom script file.  Not yet editable through MTalk
  145.      directly.
  146.  
  147.  
  148. ======================================================================
  149. RUNNING MULTI-TALK WITHOUT A BBS
  150. ================================
  151. A  way  to  run  MTalk  without  a  BBS  is to use an auxiliary device
  152. handler.   This  type  of handler allows a program to send and receive
  153. data  to  and  from  the serial port.   The AUX: device by Steve Drew,
  154. from Fish Disk #79 does a nice job.  Note that AmigaDOS' AUX: does not
  155. work properly.
  156.  
  157. Type the following commands in Shell:
  158. ------------------
  159. mount AUX:
  160. MTalk <AUX: >>AUX:
  161. ------------------
  162.  
  163. Execute  the  last  command  only when the dial-in user has connected.
  164. When  MTalk  is  running, all of its inputs and outputs will be going
  165. through the serial port.
  166.  
  167.  
  168. ======================================================================
  169. USAGE
  170. =====
  171.  
  172. MTalk
  173. -----
  174.  
  175. Usage: MTalk <key> <value> ...
  176.  
  177. important keys:
  178.  
  179.  NAME   User's   real   name.   The  name  can  be  "First  Last",  or
  180.         First_Last.  The name must be 35 characters in length or less,
  181.         or  else truncation takes effect.  If the alias of the user is
  182.         not supplied, the NAME is used as the alias as well.
  183.  
  184.  ALIAS  User's  alias/handle/nickname/etc.  The name format is same as
  185.         that  of the real name (above).  If the real name is not given
  186.         the alias is used as the real name as well.
  187.  
  188.  LEVEL  User's  access level.  This should be passed from the host BBS
  189.         software.   Access to conference commands is strictly based on
  190.         access  levels.   Default  is 0.  The minimum and maximum user
  191.         levels are 0 and 32767.
  192.  
  193.  SERVER Server number, only applicable to the unlimited users version.
  194.         Default   is  0.   This  is  used  for  separate,  independent
  195.         conferences.   For  example,  you might have SERVER 0 handle a
  196.         conference  for teenagers and SERVER 1 handle a conference for
  197.         older people.  This is particular useful when these two groups
  198.         of  people  don't mix.   You  know, older people are generally
  199.         more  mature  and  will  possibly  not  mix well with  younger
  200.         immature  teenagers.   When a user in the teenagers conference
  201.         checks  out  who  is on-line in the conference, he or she will
  202.         not  see  who  is  on-line  in  the older people's conference.
  203.         Whispering across conferences is not possible.
  204.         Think of channels as rooms, conferences as houses, and servers
  205.         as house keepers.  The more servers, the more houses!
  206.  
  207. Note  that "MTalk" without any arguments will have a random name given
  208. to  the user, in the form of "User_x", where x is from 0 to 99.  Other
  209. keys  and  values  are  used  to  pass  to doors you have have set up.
  210. Keywords are not case sensitive.  Note that the name and alias will be
  211. copied  from  the  arguments and changed, from the form "user_name" or
  212. "USER_NAME"  to  "User Name".   That is, the first letter of each word
  213. is capitalized  and the rest of the word will be in lower case.  Also,
  214. any "_" characters will be replaced with spaces.
  215.  
  216.  
  217. Example:
  218.  
  219. MTalk NAME "Joe Sixpack" ALIAS "Drunken Sailor" LEVEL 1 PORT TR0
  220.  
  221.  
  222. MTalkServer
  223. -----------
  224.  
  225. Usage: MTalkServer [<server_num>]
  226.  
  227. <server_num>   is   used   for  multiple,  separate,  and  independent
  228. conferences.   MTalkServer without an argument starts a server with an
  229. identification number  of  0.   Note  that you don't have to "run" the
  230. server,  it  starts  and  detaches  from  the  shell.  The argument is
  231. only  effective  with  the  unlimited users version.  Once a server is
  232. started,   you   may   type  "break <server_process_num"  or  use  the
  233. MTalkKillServer  command  to  tell the server to quit.  The server can
  234. only quit if there are no users in the conference.
  235.  
  236. Example:
  237.  
  238. MTalkServer 1
  239.  
  240.  
  241. MTalkKillServer
  242. ---------------
  243.  
  244. Usage: MTalkKillServer <server_num> ...
  245.  
  246. Stop any of the servers that had been started.
  247.  
  248. Example:
  249.  
  250. MTalkKillServer 0 1 2 3 4
  251.  
  252.  
  253. ======================================================================
  254. DOORS
  255. =====
  256.  
  257. MTalk  was  developed  with  configurability  in  mind.  With the door
  258. feature,  you  can  set  up  a  multitude  of external CLI commands or
  259. information  files that the user can access.  Access to these commands
  260. will be based on user levels.  They are executed the same way built-in
  261. commands  are.   Read the file "DOOR:ASI/doc/MTalkEditor.doc" to learn
  262. how the doors are configured.
  263.  
  264.  
  265. ======================================================================
  266. SCRIPTS
  267. =======
  268.  
  269. Like  a Shell, MTalk supports command scripts.  There are two types of
  270. scripts.  The first one is global, which every user executes when they
  271. enter  the conference.  Sysop commands can be executed in this script.
  272. The  script  is stored in DOOR:ASI/script/MTalk.startup.  The  default
  273. command  aliases  are  defined  here.   Change them as you wish.   The
  274. other  script  is  the one that can be customized by each user.   Note
  275. that  at  the  present, there is no way for the user to edit this file
  276. from  the  conference.   You  may  want  to  provide an editor door to
  277. accomplish    this    task.     The    user    script   is  stored  as
  278. DOOR:ASI/user/<user_name>/MTalk.startup.
  279.  
  280. The global script is similiar to "s:startup-sequence", while the local
  281. script is similiar to "s:shell-startup".
  282.  
  283.  
  284. ======================================================================
  285. ACTIONS
  286. =======
  287.  
  288. Actions  are  special "commands" that each user can perform on himself
  289. or  herself,   or  other  users.  The actions file is in ASCII, and is
  290. called DOOR:ASI/data/MTalk.ACTIONS.    Each   action   entry  has  the
  291. form:
  292. [<action_name>],<user_level>,<require_2ndperson>,<1stperson_text>,
  293. <2ndperson_text>,<3rdperson_text>
  294.  
  295. Note  that  each  action  must  be  on  one line.  Line feeds separate
  296. actions.
  297.  
  298. The fields are defined as:
  299.  
  300. <action_name> is the name of the action, eg. "kick"
  301. <user_level> is the minimum user level required to do this action.
  302. <require_2ndperson> is "y" or "n" indicating whether this action
  303.                     requires it to be done to someone.
  304. <1stperson_text> is the text the action performer will see.
  305. <2ndperson_text> is the text the person you are doing the action to
  306.                  will see.
  307. <3rdperson_text> is what the rest of the users will see when you
  308.                  perform the action to.
  309.  
  310. <1stperson_text>,<2ndperson_text>,<3rdperson_text> can have the
  311. following tokens:
  312.  
  313. %r - Will replace the token with the name of receiver of the action.
  314. %s - Will replace the token with the name of the action performer.
  315. %t - Will replace with "his" or "her", according to the sex of the
  316.      receiver.
  317. %u - Will replace with "his" or "her", according to the sex of the
  318.      performer.
  319. %v - Will replace with "him" or "her", according to the sex of the
  320.      receiver.
  321. %w - Will replace with "him" or "her", according to the sex of the
  322.      performer.
  323. %x - Will replace with "he" or "she", according to the sex of the
  324.      receiver.
  325. %y - Will replace with "he" or "she", according to the sex of the
  326.      performer.
  327.  
  328.  
  329. Construction Example:
  330. ---------------------
  331.  
  332. [ask],0,y,What's your sign?,%s is asking you for your sign!,
  333.           %s is asking %r for %t sign!
  334.  
  335. Application Example:
  336. --------------------
  337. Three users are on-line, namely "John", "Mary", and "Peter".
  338.  
  339. Situation #1: John asks Mary for her sign.
  340.  
  341. John> .ask Mary
  342. -+- What's your sign? -+-
  343. Mary>
  344. -+- John is asking you for your sign! -+-
  345. Peter>
  346. -+- John is asking Mary for her sign! -+-
  347.  
  348. Situation #2: Mary asks John for his sign.
  349.  
  350. Mary> .ask John
  351. -+- What's your sign? -+-
  352. John>
  353. -+- Mary is asking you for your sign! -+-
  354. Peter>
  355. -+- Mary is asking John for his sign! -+-
  356.  
  357.  
  358. ======================================================================
  359. PROFANITY FILTER
  360. ================
  361.  
  362. A  lot  of  people  like swearing, but most of them don't think before
  363. they  do  it.  As a result, their listeners may get insulted.  This is
  364. where  the  profanity  filter  comes  in.  The way the filter works is
  365. this:   A  swear  message gets through only if both the sender and the
  366. receiver  has their filter turned off.  If either one has it turned on
  367. it  won't get through.  Think of it as a pipe, where water cannot flow
  368. through  if  either  end  of  the pipe is blocked.  The filter file is
  369. DOOR:ASI/data/MTalk.filter.   The  file  is  in ASCII containing words
  370. (with  or  without  wildcards) that are to be matched with each of the
  371. words the user typed.
  372.  
  373. An example of a filter file is:
  374. --------
  375. bitch
  376. ass
  377. ass#(!|.|,|'?)
  378. ass#(-)hole#(!|.|,|?)
  379. --------
  380. Let's suppose that a user called "Badmouth" types:
  381.  
  382. Badmouth> you bitch
  383. Swear word(s) detected!
  384. Badmouth> ass
  385. Swear word(s) detected!
  386. Badmouth> associate
  387. --sent---
  388. Badmouth> compass
  389. --sent---
  390. Badmouth> asshole
  391. Swear word(s) detected!
  392. Badmouth> ass-hole
  393. Swear word(s) detected!
  394.  
  395. In  order  to create an effective filtering system you must know about
  396. AmigaDOS  pattern  matching.   If you are unfamiliar with them, either
  397. leave  the default filter file alone, or get a friend, who is familiar
  398. with  them, to edit the filter file.  If you feel that there are other
  399. very offensive words that I have missed, please let me know.
  400.  
  401.  
  402. ======================================================================
  403. COMMANDS
  404. ========
  405.  
  406. All  the  command  are documented as on-line help.  They are stored in
  407. DOOR:ASI/help/MTalk/
  408.  
  409.  
  410. ======================================================================
  411. UPDATES
  412. =======
  413.  
  414. Registered  users  are  privileged to free updates (excluding magnetic
  415. media  cost  and  postal  charges), when they are ready, for ONE year,
  416. from   the   day   of   purchase.    Bugs will be fixed, but I make no
  417. promise that new features will be added.  After  a  year, updates will
  418. require  a  minimal fee.  Note that since I'm still a student, I don't
  419. always  have  free  time  (especially  during semesters) to update the
  420. software.
  421.  
  422.  
  423. ======================================================================
  424. FUTURE MTALK RELATED PRODUCTS
  425. =============================
  426.  
  427. Link -- Allow systems supporting MTalk to link with each other.
  428. Dial-in -- Allow  MTalk to be a host (without a BBS) so that users can
  429.            call  in  without  a local user there to do the connection.
  430.            The host would include full credit/time accounting.
  431.  
  432.  
  433. ======================================================================
  434. ACKNOWLEDGMENT
  435. ==============
  436.  
  437. Patrick Young -- For  giving  me  the incentive to develop Multi-Talk.
  438.                  R.I.P Resonance BBS.
  439. David Riley -- For  inspiration, and both destructive and constructive
  440.                criticism.  Also for testing Multi-Talk and for editing
  441.                much of my documentation.
  442. Greg Bastow -- For providing an excellent BBS for the Amiga Community.
  443.                Tunnel Vision BBS
  444.                (4  lines 604-535-9784/9785/9826/9846, 1.2Gigs, Fish!).
  445. Dana Huggard -- For  letting me beta-test my software on his BBS.  and
  446.                 for  helping  me distribute my utilities.  Terra Firma
  447.                 BBS (604-434-3665 1:153/765)
  448. Steve Cole -- For  being the first user of Multi-Talk and bug reports.
  449.               Also  for  offering  to help me distribute my utilities.
  450.               The Forge BBS (11 Lines, 1.9Gigs, 2xHST)
  451. Mike Oliphant;
  452. Tom Conroy -- For  technical  help on programming, and for the DLG(tm)
  453.               BBS software.  Good job, guys!
  454.  
  455.  
  456. ======================================================================
  457. PRODUCTS RELEASED AND UNDER DEVELOPMENT
  458. =======================================
  459.  
  460. Released:
  461. - ECopy V1.00 (Hard/floppy drive utility)
  462. - TeleWho V1.00 (DLG(tm) BBS utility)
  463. - TelePage V1.00 (DLG(tm) BBS utility)
  464. - RawIN.lib V1.00 (Input handling library for BBS door programmers)
  465. - Multi-Talk V0.920 (Multi-user teleconference system)
  466. - TeleReg V1.00 (User registry database allowing concurrent users)
  467.  
  468. Under Development:
  469. - TeleBank (DLG(tm) BBS utility, a time/credit accounting system)
  470. - an outdialer (BBS utility for dialing out from a multi-line system)
  471. - GooeyTerm (Graphics terminal program)
  472. - .snd/8SVX-IFF sound player (joint effort with Jeremy McDonald)
  473. - numerous other minor utilities
  474.  
  475. Most  of  these  programs  are  public  domain,  while  the  rest  are
  476. shareware.
  477.  
  478.  
  479. ======================================================================
  480. TRADEMARKS
  481. ==========
  482.  
  483. Amiga, and AmigaDOS are trademarks of Commodore-Amiga.
  484. DLG is a trademark of TelePro Technologies.
  485.  
  486.  
  487. ======================================================================
  488. LAST WORDS
  489. ==========
  490.  
  491. Questions, ideas, comments, bug reports, etc. should go to:
  492.  
  493. Home Address: Sam Yee
  494.               4595 Nanaimo St.
  495.               Vancouver, B.C.
  496.               Canada V5N-5J5
  497.  
  498.     Internet: samy@sfu.ca (starting September '92)
  499.               flui@sfu.ca (before September '92)
  500.      FidoNet: 1:153/765 (Terra Firma BBS 604-434-3665)
  501.  
  502.