home *** CD-ROM | disk | FTP | other *** search
/ Dream 46 / Amiga_Dream_46.iso / Amiga / Internet / Irc / ChatBox1_164.lha / cb.help next >
Text File  |  1997-01-15  |  46KB  |  1,765 lines

  1. @node read "Command: /READ"
  2.  
  3. COMMAND:
  4.  
  5. /READ [<textfile>]
  6.  
  7. PARAMETERS:
  8.  
  9.     <textfile> Textfile to /READ, must be ASCII, and less than 20k in size.
  10.                If no file is specified, an ASL File Requester will be opened.
  11.  
  12. FUNCTION:
  13.  
  14.     For online reading of textfiles.
  15.  
  16. @endnode
  17.  
  18. @node on "Command: /ON"
  19.  
  20. COMMAND:
  21.  
  22. /ON <type> <mask1> [<mask2>] </action> [<args>]
  23.  
  24. PARAMETERS:
  25.  
  26.     <type>    Type of /ON hook to install
  27.     <mask1>   Pattern to match, varies with each <type>
  28.     <mask2>   Secondary pattern to match, also varies with <type>
  29.     </action> ChatBox slash command, or ARexx script to execute upon activation
  30.               of this hook
  31.     <args>    Any arguments that apply to </action>
  32.  
  33. FUNCTION:
  34.  
  35.     Installs, or REMOVES an /ON hook.  /ON hooks allow for trapping of certain
  36.     stream events (like public messages, private message, channel operations,
  37.     etc.)  Upon receiving an event that matches the criteria of an /ON hook,
  38.     ChatBox will execute the </action> command with ChatBox's command parser.
  39.  
  40. OTHER PARAMETERS:
  41.  
  42.     If you type /ON with no parameters, you will get a list of all /ON hooks
  43.     that are currently installed.  Indicated in the list are the /ON # (for
  44.     referencing), the ACTIVE or INACTIVE state, and the /ON hook type and
  45.     format.
  46.  
  47.     REMOVE <on #>
  48.  
  49.         <on #>  is the # you'd like to delete from the /ON hook list
  50.  
  51.     ACTIVATE <on #> [<life>]
  52.  
  53.         <on #>  is the # you'd like to activate
  54.       [<life>]  specifies the number of times to execute this hook, until it
  55.                 deactivates itself.  If [<life>] is omitted, the previous life
  56.                 length is used (which may very well be 0).  If life is set to
  57.                 0, then it will never deactivate itself.
  58.  
  59.     DEACTIVATE <on #>
  60.  
  61.         <on #>  is the # you'd like to deactivate
  62.  
  63.     ***NOTE:  If the <on #> is omitted for ACTIVATE and DEACTIVATE, then the
  64.               last /ON entered is assumed.  This is mainly useful in the
  65.               'Alias File' for deactivating /ON hooks immediately after
  66.               creating them.
  67.  
  68.     DEACTIVATEd /ON hooks are bypassed.  If you install a hook with a <life>
  69.     parameter, it will only be executed that number of times before it
  70.     deactivates itself.  Good for when you'd like an event to happen only a
  71.     limited number of times.
  72.  
  73.     ***NOTE:  To set the <life> at /ON hook creation time, merely prepend the
  74.               life limit to the TYPE.  i.e.:
  75.               /ON 2/PUBLIC * /msg $C this is a limited /ON, it will run 2 times
  76.  
  77.               or...
  78.  
  79.               /ON 2PUBLIC * /msg $C '/' is an optional separator (see above)
  80.  
  81. NOTES:
  82.  
  83.     Types of /ON hooks:
  84.  
  85.     PUBLIC    - Hook that responds to PUBLIC channel messages.
  86.     MSG       - Hook that responds to PRIVATE messages
  87.     CTCP      - Responds to CTCP events/commands
  88.     JOIN      - Responds to JOIN events
  89.     LEAVE     - Responds to channel PARTS
  90.     QUIT      - Responds to signoffs/QUITs
  91.     NICKNAME  - Responds to NICKNAME changes
  92.     KICK      - Responds to KICK events
  93.     MODE      - Responds to MODE changes
  94.     TOPIC     - Responds to TOPIC changes
  95.  
  96.     A response from the server must satisfy some criteria in an /ON hook before
  97.     it is activated.  First, the TYPE must be matched.  If it is, then <mask1>
  98.     is checked, and then <mask2> (if applicable).  If all criteria are met,
  99.     then the </action> is executed.  <mask1> applies to all TYPES of hooks,
  100.     whereas <mask2> may not need to be specified at all.  It all depends on
  101.     what you wish to respond to.  The various types, and what the masks mean to
  102.     them is specified below:
  103.  
  104.     PUBLIC    - <mask1> is to match the address of the user that sent the
  105.     MSG         PUBLIC, MSG, or CTCP message.  <mask2> is applied to the
  106.     CTCP        actual text sent.
  107.  
  108.     JOIN      - <mask1> is applied to the address of the person joining the
  109.     LEAVE       channel, <mask2> matches the channel name on which the join
  110.                 occurred.
  111.  
  112.     KICK      - <mask1> is applied to the nick of the person being kicked,
  113.                 <mask2> is applied to the channel name on which the kick
  114.                 occurred.
  115.  
  116.     TOPIC     - <mask1> is applied to the address of the user that changed the
  117.                 topic, and <mask2> is applied to the channel on which the topic
  118.                 was changed.
  119.  
  120.     QUIT      - <mask1> is applied to the address of the user that quit,
  121.                 <mask2> is ignored.
  122.  
  123.     NICKNAME  - <mask1> is applied to the address of the person that changed
  124.                 their nick (their original nick can be extracted from this),
  125.                 <mask2> is applied to the new nickname.
  126.  
  127.     The </action> takes a form similar to ChatBox's alias, supports the $x
  128.     variables.  It also adds a new set of variables that apply only to PUBLIC,
  129.     MSG, CTCP, and TOPIC.
  130.  
  131.     Variables that apply to the server command lines:
  132.  
  133.     $0 - $9  are the respective tokens of the server command issued, but only
  134.              up to the 'text to send' portion (see notes below).
  135.              $0 is typically the nickname of the sender
  136.              $1 is the command name (raw irc server command)
  137.              $2 is often the channel or recipient
  138.  
  139.     $C       is used to extract the channel, or recipient of this command (if
  140.              applicable)
  141.  
  142.     $N       is used to extract the Nickname of the user from which the server
  143.              command originated.
  144.  
  145.     $T       is used to extract the type of /ON hook that was activated (only
  146.              to the ARexx interface)
  147.  
  148.     $U       is used to extract the full address of the user from which the
  149.              server command originated
  150.  
  151.     []       is used to extract the 'rest of line', starting from the highest
  152.              variable ($0 - $9) addressed (see notes below)
  153.  
  154.     Variables that apply to the "text sent":
  155.  
  156.     ^0 - ^9  are the respective words of the "text sent", useful for tokenizing
  157.              a line word by word (separated by spaces, see notes below)
  158.              ^0 is the CTCP type for a CTCP /ON
  159.  
  160.     {}       used to extract the 'rest of line', starting from the highest
  161.              variable (^0 - ^9) addressed (see notes below)
  162.  
  163.     {x}      used to extract from 'x' to end. ( i.e.: {4} = ^4 {} )
  164.     {-}      same as {}
  165.     {x-y}    used to extract from 'x' to 'y'.
  166.     {-y}     used to extract from highest variable address previously (^0 - ^9)
  167.              up to 'y'
  168.     {x-}     used to extract from 'x' to end. (same as {x})
  169.  
  170.  
  171.     Format of a Server Command:
  172.  
  173.     :nick!user@host COMMAND argument [argument1 ...] :text to send
  174.  
  175.     All normal server commands and replies are issued in this format,
  176.     varying based on the type of command/reply.
  177.  
  178.     The tokens ($0 - $9 and []) apply to the portion BEFORE the second ':' in
  179.     the server reply.  Here is a sample PUBLIC command:
  180.  
  181.     :sascman!jweb@primenet.com PRIVMSG #Amiga :This text is seen on #Amiga
  182.     ^-           0          -^ ^- 1 -^ ^- 2-^ ^-      text to send      -^
  183.  
  184. If a PUBLIC /ON hook was activated, and the </action> was specified as:
  185.  
  186.     (i.e.:  "/ON PUBLIC * /msg $C $U {}")
  187.  
  188.     /msg $C $U {}
  189.  
  190. Then the parsed command would look like:
  191.  
  192.     /msg #Amiga sascman!jweb@primenet.com This text is seen on #Amiga
  193.  
  194. Which would send (to #Amiga):
  195.  
  196.     sascman!jweb@primenet.com This text is seen on #Amiga
  197.  
  198. NOTE:  You will need the IRC-RFC to use the /ON command fully.
  199.  
  200. Standard UNIX pattern matching is used, case is ignored:
  201.  
  202.     "*" matches an arbitrary number of characters.
  203.     "?" matches exactly ONE character.
  204.  
  205. Variables for "text to send":
  206.  
  207.     In the above server command example, the variables would return the
  208.     following:
  209.  
  210.     ^0 This
  211.     ^1 text
  212.     ^2 is
  213.     ^3 seen
  214.     ^4 on
  215.     ^5 #Amiga
  216.  
  217.     But, if you specifed something like:
  218.  
  219.     /action ^1 {}
  220.  
  221.     The {} would be replaced with tokens ^2 through to the end of the line,
  222.     make the above '/action' parse out to:
  223.  
  224.     /action text is seen on #Amiga
  225.  
  226.     {} is all text after the highest token address (in this case ^1)
  227.  
  228.  
  229. EXAMPLES:
  230.  
  231. /ON PUBLIC * @find * /find ^1 {}
  232.  
  233.     Whenever a user sends '@find' to the channel, the /ON hook will be
  234.     activated, send a /find command to the parser.  The ^1 refers to the
  235.     second word (^0 is the first) of the 'text to send'.
  236.  
  237. @endnode
  238.  
  239. @node rawwin "Command: /RAWWIN"
  240.  
  241. COMMAND:
  242.  
  243. /RAWWIN
  244.  
  245. PARAMETERS:
  246.  
  247.     None.
  248.  
  249. FUNCTION:
  250.  
  251.     Sets a window to RAW mode, showing RAW server messages.
  252.  
  253. NOTES:
  254.  
  255.     This function of ChatBox is only useful for those that may be developing
  256.     ARexx scripts.  It shows what the server is sending, and may aid in
  257.     debugging scripts that rely on server communication command formats.
  258.  
  259. @endnode
  260.  
  261. @node echo "Command: /ECHO"
  262.  
  263. COMMAND:
  264.  
  265. /ECHO <text>
  266.  
  267. PARAMETERS:
  268.  
  269.     <text>  Text to display locally in text window of active window.
  270.  
  271. FUNCTION:
  272.  
  273.     Displays text locally.
  274.  
  275. EXAMPLES:
  276.  
  277.     /ECHO This is a test of the /ECHO command.
  278.  
  279.     Yields:
  280.     [Echo] | This is a test of the /ECHO command.
  281.  
  282. @endnode
  283.  
  284. @node notify "Command: /NOTIFY"
  285.  
  286. COMMAND:
  287.  
  288. /NOTIFY [-]<nick> [[-]<nick> [...]]
  289.  
  290. PARAMETERS:
  291.  
  292.     <nick>  User you'd like a notify on (for signon/signoff)  If '-' precedes
  293.             the <nick> then <nick> is removed if it is on the list of
  294.             notifies.
  295.  
  296. FUNCTION:
  297.  
  298.     Adds/Removes a notify.  Notify uses ISON to detect when someone has joined
  299.     or left IRC.
  300.  
  301. EXAMPLES:
  302.  
  303. /notify SkyGuy Tau Fastlane      Adds nicks to the notify list
  304. /notify -SkyGuy -Fastlane        Removes nicks from the notify list
  305.  
  306. NOTES:
  307.  
  308.     If ChatBox should fail to open the timer.device it will fall back to using
  309.     Intuition's 'Ticking' system.  The drawback to using Intuition is that the
  310.     window MUST be active for these 'Ticks' to be sent.  So, if the window is
  311.     not active (at least ONE window) then /NOTIFY will not be polled...
  312.  
  313. Silent Use of /NOTIFY:
  314.  
  315. The /NOTIFY command uses the ISON server command to obtain it's information.
  316. This will result in seeing ISON replies from the server, if you wish to ignore
  317. these messages, set the menu item in the Prefs menu "Show ISON" so that it does
  318. not have a check mark next to it.
  319.  
  320. @endnode
  321.  
  322. @node search "Command: /SEARCH"
  323.  
  324. COMMAND:
  325.  
  326. /SEARCH <string> [BEGIN|MIDDLE|CONTINUE]
  327.  
  328. PARAMETERS:
  329.  
  330.     <string>  A string of characters to be searched for in the channel
  331.               scrollback buffer.  If multi-word strings are being searched
  332.               for, they should be enclosed in quotes.
  333.     BEGIN     Search from BEGINning of buffer, if BEGIN is specified
  334.     MIDDLE    Search from MIDDLE of buffer
  335.     CONTINUE  Search from last position  [default]
  336.  
  337. FUNCTION:
  338.  
  339.     Searches channel scrollback buffers for a specified string
  340.  
  341. EXAMPLES:
  342.  
  343.     /SEARCH "Hello World!" BEGIN          - Searches for "Hello World!" starting
  344.                                             from beginning of buffer.
  345.  
  346.     /SEARCH A4000                         - Searches from last position
  347.                                             (CONTINUE) for the string "A4000"
  348.  
  349. @endnode
  350.  
  351. @node ignore "Command: /IGNORE"
  352.  
  353. COMMAND:
  354.  
  355. /IGNORE <user | #> <type | option> [<type> [...]]
  356.  
  357. PARAMETERS:
  358.  
  359.     <user>     If <user> is specified then the <types> must follow.  This
  360.                is the usermask (pattern) to 'ignore'.
  361.     <#>        If a <#> is specifed (as #1, #2, etc) then an <option> must
  362.                follow.  This allows operations on a particular ignore.
  363.     <option>   An <option> is only valid when a <#> is given.  Otherwise
  364.                option names are just ignored.
  365.     <type>     Type of incoming msg/cmd to ignore from <user>
  366.  
  367.     See Below for OPTIONS and TYPES
  368.  
  369.  
  370. FUNCTION:
  371.  
  372.     Adds/Removes/Alters an ignore in the ignore list.
  373.  
  374. OPTIONS and TYPES:
  375.  
  376.     Current ignore types supported are:
  377.  
  378.     PRV   Ignore private messages from <user>
  379.     PUB   Ignore public (to channel) messages from <user>
  380.     NOTP  Ignore private notices from <user>
  381.     NOT   Ignore public notices from <user>
  382.     CTCP  Ignore CTCP's from <user> (will not reply to PINGs, etc.)
  383.  
  384.  
  385.     Current options supported are:
  386.  
  387.     SET   Set new types for ignore #x
  388.     UNSET Unset types from ignore #x
  389.     REM   Remove ignore #x
  390.  
  391. EXAMPLES:
  392.  
  393. /ignore SASC* PRV PUB      (ignores Private and Public messages from any
  394.                             user who's NICK starts with SASC)
  395. /ignore *.primenet.com PRV (ignores all private messages from any user whose
  396.                             address ends in ".primenet.com")
  397.  
  398. <user> is the usual IRC type of address mask of the form: nick!user@host
  399.  
  400. /ignore                    (displays HELP for ignore, and lists all ignores
  401.                             currently in memory)
  402. /ignore #2 SET PUB         (set ignore #2 to also ignore PUB messages)
  403. /ignore #3 UNSET PRV       (unsets PRV from ignore #3)
  404. /ignore #0 REM             (removes ignore #0)
  405.  
  406. @endnode
  407.  
  408. @node describe "Command: /DESCRIBE"
  409.  
  410. COMMAND:
  411.  
  412. /DESCRIBE <nick> <action>
  413.  
  414. PARAMETERS:
  415.  
  416.     <nick>     This is the <nick> for the <action> to be sent to.
  417.     <action>   The action to 'perform'
  418.  
  419. FUNCTION:
  420.  
  421.     Sends an action message (similar to /ME, only it is privately sent)
  422.  
  423. @endnode
  424.  
  425. @node raw "Command: /RAW"
  426.  
  427. COMMAND:
  428.  
  429. /RAW <raw_irc_cmd>
  430.  
  431. PARAMETERS:
  432.  
  433.     <raw_irc_cmd>  a VALID command line to send to current server.
  434.  
  435. FUNCTION:
  436.  
  437.     Sends <raw_irc_cmd> to the server.  See the IRC RFC for more information.
  438.     RAW IRC commands are beyond the scope of this document.
  439.  
  440. @endnode
  441.  
  442. @node wait "Command: /WAIT"
  443.  
  444. COMMAND:
  445.  
  446. /WAIT ON|OFF
  447.  
  448. PARAMETERS:
  449.  
  450.     ON|OFF
  451.  
  452. FUNCTION:
  453.  
  454.     To activate/deactivate the ARexx WAIT queue.  If /WAIT is ON, then lines
  455.     received are queued (up to 256).  If "/WAIT ON" is again executed while
  456.     line queueing is already ON, the 'buffer' is flushed of all pending lines.
  457.     If a "/WAIT OFF" is executed then line queueing is deactivated, and the
  458.     'buffer is flushed.
  459.  
  460. NOTES:
  461.  
  462.     This command has NO value except to those using ARexx and ChatBox's WAIT
  463.     command inside of an ARexx script.  It is meant for consistant flow
  464.     control.
  465.  
  466.     It is recommended that you issue a "/WAIT ON" command at the beginning of
  467.     every ARexx script that has a WAIT loop (i.e. a BOT).
  468.  
  469.     Definitely issue a "/WAIT OFF" command before exiting ANY script that uses
  470.     the WAIT command.  No harm is done if this step is forgotten...  However,
  471.     if line queueing is not turned off between the execution of scripts,
  472.     unpredictable results can be expected from the WAIT command, as the queue
  473.     buffer must be emptied of all pending stored lines (and only 256 can be
  474.     stored).
  475.  
  476.     Leaving the /WAIT in the ON "position" with no script running, merely
  477.     wastes valuable CPU and Memory resources.
  478.  
  479.     Example:
  480.  
  481. -------------->snip<--------------
  482.  
  483. /* sample WAIT loop */
  484.  
  485. HOST = address()  /* get the calling host name */
  486. address value HOST
  487.  
  488. CMD '/wait on'    /* turn the LINE queue on */
  489.  
  490. irc.CMD = 'NONE'
  491.  
  492. do while irc.CMD != '/endrexx'
  493.     say 'Command for this line: ' || irc.CMD
  494.     say 'Channel for this line: ' || irc.CHANNEL
  495.     say 'Message for this line: ' || irc.LINE
  496. end
  497.  
  498. CMD '/wait off'   /* turn the LINE queue off */
  499.  
  500. exit 0
  501.  
  502. -------------->snip<--------------
  503.  
  504. @endnode
  505.  
  506. @node kick "Command: /KICK"
  507.  
  508. COMMAND:
  509.  
  510. /KICK [<channel>] <user> [<comment>]|[$]
  511.  
  512. PARAMETERS:
  513.  
  514.     <channel>  You must be on <channel> to kick, if <channel> is not
  515.                specified, then the kick is automatically sent to the
  516.                current channel.
  517.  
  518.     <user>     This must be specified, and the <user> must be on the
  519.                <channel> that the KICK is being sent to.
  520.  
  521.     <comment>  Not required, but recommended.
  522.  
  523.     $          If a '$' is specified instead of comment, ChatBox will select a
  524.                random kick message from 'cb.kick' if it is present.
  525.  
  526. FUNCTION:
  527.  
  528.     KICK's <user> off of <channel>
  529.  
  530. NOTES:
  531.  
  532.     You must have '+o' status on the channel to KICK.
  533.  
  534. @endnode
  535.  
  536. @node kill "Command: /KILL"
  537.  
  538. COMMAND:
  539.  
  540. /KILL <nick> <comment>
  541.  
  542. PARAMETERS:
  543.  
  544.     <nick>    Nick of the user to KILL off of IRC (forced QUIT)
  545.  
  546.     <comment> Required comment clarifying the reason
  547.  
  548. FUNCTION:
  549.  
  550.     KILL's <nick> from server, causing a forced QUIT
  551.  
  552. NOTES:
  553.  
  554.     You must be an IRCop to use the KILL command.
  555.  
  556. @endnode
  557.  
  558. @node topic "Command: /TOPIC"
  559.  
  560. COMMAND:
  561.  
  562. /TOPIC [<channel>] [<topic>]
  563.  
  564. PARAMETERS:
  565.  
  566.     <channel> Channel to change the topic on, if not specified then the
  567.               command is sent to the current channel
  568.  
  569.     <topic>   The new topic string
  570.  
  571. FUNCTION:
  572.  
  573.     Changes the topic on <channel> to <topic>
  574.  
  575. NOTES:
  576.  
  577.     If the channel mode is set to '+t' (topic protection) then you must have
  578.     channel operator status (+o) to change the topic.
  579.  
  580. @endnode
  581.  
  582. @node time "Command: /TIME"
  583.  
  584. COMMAND:
  585.  
  586. /TIME [<server>]
  587.  
  588. PARAMETERS:
  589.  
  590.     <server> If not specified, the TIME command is sent to the current
  591.              server.
  592.  
  593. FUNCTION:
  594.  
  595.     Returns the current time on <server>
  596.  
  597. @endnode
  598.  
  599. @node trace "Command: /TRACE"
  600.  
  601. COMMAND:
  602.  
  603. /TRACE [<server>]
  604.  
  605. PARAMETERS:
  606.  
  607.     <server> server to trace the route to
  608.  
  609. FUNCTION:
  610.  
  611.     TRACE is used to find the route to <server>
  612.  
  613. @endnode
  614.  
  615. @node server "Command: /SERVER"
  616.  
  617. COMMAND:
  618.  
  619. /SERVER [<server>]
  620.  
  621. PARAMETERS:
  622.  
  623.     <server> server to connect to, if not specified the current server
  624.              name is returned.
  625.  
  626. FUNCTION:
  627.  
  628.     To connect to a server.  Upon reconnect, all active channels are rejoined.
  629.  
  630. @endnode
  631.  
  632. @node signoff "Commands: /SIGNOFF, /SIGN, /QUIT"
  633.  
  634. COMMAND:
  635.  
  636. /SIGNOFF [<comment>]
  637. /QUIT [<comment>]
  638.  
  639. PARAMETERS:
  640.  
  641.     <comment> An optional comment, if not specified then "Leaving." is used.
  642.  
  643. FUNCTION:
  644.  
  645.     To QUIT IRC, and to quit ChatBox.
  646.  
  647. @endnode
  648.  
  649. @node stats "Command: /STATS"
  650.  
  651. COMMAND:
  652.  
  653. /STATS [<query> [<server>]]
  654.  
  655. PARAMETERS:
  656.  
  657.     <query>  type of "c,h,i,k,l,m,o,y,u"
  658.  
  659.     <server> server to get STATS on
  660.  
  661. FUNCTION:
  662.  
  663.     To obtain information about a server about <query>  See the IRC RFC
  664.     for more information on STATS
  665.  
  666. @endnode
  667.  
  668. @node who "Command: /WHO"
  669.  
  670. COMMAND:
  671.  
  672. /WHO [<name> [<o>]] [FULL]
  673.  
  674. PARAMETERS:
  675.  
  676.     <name> A nickname, user address, channel or pattern to query
  677.  
  678.     <o>    If specified then only IRCops are listed.
  679.  
  680. FUNCTION:
  681.  
  682.     Generates a query which returns a list of information matching the
  683.     <name> pattern.  Wildcards are permitted.
  684.  
  685.     If FULL is specified, then the full whois information is displayed,
  686.     otherwise just the channel, status, and address are displayed.
  687.  
  688. @endnode
  689.  
  690. @node whois "Command: /WHOIS"
  691.  
  692. COMMAND:
  693.  
  694. /WHOIS [<server>] <nickmask>[,<nickmask>[,...]]
  695.  
  696. PARAMETERS:
  697.  
  698.     <server>   if specified, checks only <server>
  699.  
  700.     <nickmask> a wildcard to match, or a known nickname
  701.  
  702. FUNCTION:
  703.  
  704.     Returns info about <nickmask>
  705.  
  706. @endnode
  707.  
  708. @node whowas "Command: /WHOWAS"
  709.  
  710. COMMAND:
  711.  
  712. /WHOWAS <nick> [<count> [<server>]]
  713.  
  714. PARAMETERS:
  715.  
  716.     <nick>   a <nick> that no longer exists (because of a QUIT or NICK
  717.              change)
  718.  
  719.     <count>  if specified, then only <count> replies will be returned
  720.              if not specified, then all replies are sent.
  721.  
  722.     <server> server to query
  723.  
  724. FUNCTION:
  725.  
  726.     Returns info about a <nick> that no longer exists.
  727.  
  728. @endnode
  729.  
  730. @node join "Command: /JOIN"
  731.  
  732. COMMAND:
  733.  
  734. /JOIN <channel>
  735.  
  736. PARAMETERS:
  737.  
  738.     <channel> name of channel to join
  739.  
  740. FUNCTION:
  741.  
  742.     To JOIN a channel.  If the channel does not exist then you are given
  743.     operator status on the newly created channel.
  744.  
  745. @endnode
  746.  
  747. @node ping "Command: /PING"
  748.  
  749. COMMAND:
  750.  
  751. /PING <nick>|<channel>
  752.  
  753. PARAMETERS:
  754.  
  755.     <nick>    a nick to PING
  756.  
  757.     <channel> a channel to ping.  All users on <channel> will be sent a
  758.               PING to reply to.
  759.  
  760. FUNCTION:
  761.  
  762.     Sends a CTCP of type PING to <nick> or <channel>.
  763.  
  764. @endnode
  765.  
  766. @node leave "Commands: /LEAVE, /L, /PART"
  767.  
  768. COMMAND:
  769.  
  770. /LEAVE [<channel>]
  771. /L [<channel>]
  772. /PART [<channel>]
  773.  
  774. PARAMETERS:
  775.  
  776.     <channel> channel to leave, if not specified the current channel is
  777.               left
  778.  
  779. FUNCTION:
  780.  
  781.     To exit from <channel>
  782.  
  783. @endnode
  784.  
  785. @node list "Command: /LIST"
  786.  
  787. COMMAND:
  788.  
  789. /LIST [<pattern>]|[<channel>{,<channel>}] [<server>] [MAX <max>] [MIN <min>]
  790.  
  791. PARAMETERS:
  792.  
  793.     <pattern> list channels matching <pattern>
  794.  
  795.     <channel> channel to list
  796.  
  797.     <server>  server to query
  798.  
  799.     MAX <max> list only channels that have less than or equal to 'max' number of
  800.               people
  801.     MIN <min> list only channels that have more than or equal to 'min' number of
  802.               people
  803.  
  804. FUNCTION:
  805.  
  806.     Lists channels and their topics.  If <pattern> is specified then only
  807.     channels that match the pattern and that are not secret or private (+s or
  808.     +p) are listed.
  809.  
  810. @endnode
  811.  
  812. @node links "Command: /LINKS"
  813.  
  814. COMMAND:
  815.  
  816. /LINKS [[<remote server>] <server masg>]
  817.  
  818. PARAMETERS:
  819.  
  820.     See IRC RFC for more information.
  821.  
  822. @endnode
  823.  
  824. @node nick "Command: /NICK"
  825.  
  826. COMMAND:
  827.  
  828. /NICK <nick>
  829.  
  830. PARAMETERS:
  831.  
  832.     <nick> New nickname.
  833.  
  834. FUNCTION:
  835.  
  836.     Change current nickname to <nick>
  837.  
  838. @endnode
  839.  
  840. @node notice "Command: /NOTICE"
  841.  
  842. COMMAND:
  843.  
  844. /NOTICE <nick>|<channel> <message>
  845.  
  846. PARAMETERS:
  847.  
  848.     <nick>|<channel>  the nick or channel to send <message> to.
  849.  
  850. FUNCTION:
  851.  
  852.     Sends a notice (similar to a /msg) to <nick>, or <channel>
  853.  
  854. @endnode
  855.  
  856. @node names "Command: /NAMES"
  857.  
  858. COMMAND:
  859.  
  860. /NAMES [ON/OFF]|[<channel>{,<channel>}]
  861.  
  862. PARAMETERS:
  863.  
  864.     ON/OFF    to turn the names list ON or OFF.  The names list splits the
  865.               current window on the right hand side.  It sports a scroll gadget,
  866.               and two arrows. *** SEE NOTE BELOW ***
  867.     <channel> to get the members names from.
  868.  
  869. FUNCTION:
  870.  
  871.     Lists the names for <channel>.  Assuming you are a> on the channel, or
  872.     b> off the channel AND the +p/+s mode is not set.
  873.  
  874. NOTES:
  875.  
  876.     The names list can be used to supply nicks/names for commands that require a
  877.     nick/name as input.  If a double-click is made on a nick/name, a /WHOIS will
  878.     be issued.  /KICK also works, but only with the first name selected so as to
  879.     avoid mass kick abuse that is certain to occur.
  880.  
  881. *** NOTE ***  THIS IS IMPORTANT!!!
  882.     I keep getting 'bug reports' about how ChatBox does NOT sort the names list
  883.     correctly.  I assure you, and I reassure you, and I stress, and I point out
  884.     that I want to make it so VERY completely and utterly unmistakeably CLEAR
  885.     that this is NOT a bug... I repeat, it is NOT A BUG.  I don't CARE if one
  886.     thinks it IS a bug because it 'appears' to become 'unsorted'.  Here is the
  887.     VERY BOTTOM LINE on ChatBox's sorting method, so READ IT, UNDERSTAND IT,
  888.     and DON'T REPORT "BUGS" ABOUT IT!!!
  889.  
  890.     Here is how it works, and how it will ALWAYS work, if it BUGS you SOOOO
  891.     much that it works this way, use GV, it's a VERY nice client, I hear.
  892.  
  893.     ChatBox SORTS the names upon YOUR entry into a channel, it also sorts NEW
  894.     joins (when OTHER people join the channel).  It DOES NOT take goofy lead
  895.     characters into consideration (like "_", "[", etc.)  It DOES NOT sort on
  896.     nick changes, nor will it EVER (get that?  EVER!!!)
  897.  
  898.     SO, in conclusion, IF the names APPEAR to be out of sort, THEY ARE, and it
  899.     is probably due to a NICK CHANGE.  OR, the person has a 'goofy' lead
  900.     character in their nick.
  901.  
  902.     MY reasons (which are reasons enough):  In EARLY development of ChatBox I
  903.     was sitting quietly on #Amiga, minding my own business, when suddenly about
  904.     4 idiots joined the channel (1 idiot, with 4 crapbots, actually), they
  905.     began NICK flooding.  NEEDLESS TO SAY, this created a TREMENDOUS load on
  906.     the CPU, and on ChatBox.  I couldn't kick this person, I could do nothing
  907.     but watch while everything on my machine slowed to a crawl.  Why did the
  908.     CPU get so loaded down?  Well, let's see, could it have been the SORT
  909.     ROUTINES???  Indeed, it was, hence, the nick change sorting WAS REMOVED,
  910.     it IS NOT A BUG!
  911.  
  912.     Done.  Sorry for the flame, but the very same people are 'reminding' me of
  913.     this bug every time they run across me, or remember I have an E-Mail
  914.     address.  I guess I wasn't being clear enough. The above should pretty much
  915.     set things straight.
  916.  
  917. @endnode
  918.  
  919. @node me "Command: /ME"
  920.  
  921. COMMAND:
  922.  
  923. /ME <action>
  924.  
  925. PARAMETERS:
  926.  
  927.     <action> a personal action.  i.e., if your nick is ChatBox and you entered:
  928.         '/me washes behind his ears.'
  929.      You'd see:  (and so would all others on the channel)
  930.         [ACTION] ChatBox washes behind his ears.
  931.  
  932. FUNCTION:
  933.  
  934.     For creative expression...  A toy.  A way to talk in the third person...
  935.  
  936. @endnode
  937.  
  938. @node dcc_chat "DCC.CHAT.AS225"
  939.  
  940. SPECIAL NOTES ON DCC.CHAT.AS225
  941.  
  942.     The DCC.CHAT executable included with ChatBox is NOT compatible with any
  943. other IRC Client.  It was written with ChatBox, specifically, in mind.
  944.  
  945.     One important feature of IRC is the ability to secure a CHAT transaction
  946. with any party connected to IRC.  In designing ChatBox it was decided that
  947. having a separate 'DCC CHAT' window that used some other GUI was not
  948. acceptable.
  949.  
  950.     DCC Chat uses ChatBox's GUI system.  So, it will feel as though you are
  951. still using ChatBox IRC.
  952.  
  953.     The design goal was met.  Simplicity was the goal.
  954.  
  955.     The advantage of having text send to a ChatBox window is clear.  Why have
  956. a different type of GUI to have to get used to?
  957.  
  958.     Osma "Tau" Ahvenlampi should be given GREAT credit for his contribution of
  959. DCC.CHAT.AS225 to the Amiga IRC community.  It is an extraordinary alternative.
  960.  
  961.     ChatBox's DCC.CHAT is based on his code.  He offered the framework, and is
  962. given credit for designing the connection code (of which I know little about).
  963.  
  964.     However, if you prefer having a separate, and distinct DCC client, then by
  965. all means you should use Tau's original version of DCC.CHAT.AS225.
  966.  
  967. @endnode
  968.  
  969. @node msg "Command: /MSG"
  970.  
  971. COMMAND:
  972.  
  973. /MSG <nick>|<channel>[,<nick>|<channel>[,...]] <message>
  974.  
  975. PARAMETERS:
  976.  
  977.     <nick>|<channel>|[<,><.>] are the recipient(s) of <message>
  978.  
  979. FUNCTION:
  980.  
  981.     To send a message to a user or channel.
  982.  
  983. NOTE:  If an '=' is placed before the <nick>, then ChatBox sends the text to
  984.        the appropriate DCC Chat session.  i.e.:  /msg =SkyGuy <message>  would
  985.        send <message> to SkyGuy over a DCC Chat connection (see section on
  986.        "DCC.CHAT.AS225" in ChatBox.guide for more information).  Also, if a ','
  987.        is placed in the <nick> position, then the last person to send you a
  988.        message is replied to.  If a '.' is placed there, then the last person
  989.        you sent a message to is sent the current message.
  990.  
  991. @endnode
  992.  
  993. @node mode "Command: /MODE"
  994.  
  995. COMMAND:
  996.  
  997. /MODE [<nick>|<channel>] {[+/-]<modes>} [<limit>] [<user>] [<ban mask>]
  998.  
  999. PARAMETERS:
  1000.  
  1001.     <nick>     Personal <nick> for user mode changes (i,o,w, etc)
  1002.     <channel>  for channel modes, or o,b,v, etc.
  1003.     [+/-]      + sets a flag ON, - sets it OFF
  1004.     <modes>    mode characters (i.e. i,o,b,v,t,n,s,p,l, etc.)
  1005.     <limit>    for mode +l (limit users), an ASCII number setting the limit of
  1006.                users on <channel>
  1007.     <user>     for modes: o,b,v
  1008.     <ban mask> ban address with wildcards for +/-b mode
  1009.  
  1010. FUNCTION:
  1011.  
  1012.     To change personal user modes, or channel modes.  Or to op/voice,
  1013.     deop/unvoice other users on a channel where you have ops.
  1014.  
  1015. NOTES:
  1016.  
  1017.     See the IRC-RFC for a full description of the modes, and their usage.
  1018.  
  1019. @endnode
  1020.  
  1021. @node invite "Command: /INVITE"
  1022.  
  1023. COMMAND:
  1024.  
  1025. /INVITE <nick> [<channel>]
  1026.  
  1027. PARAMETERS:
  1028.  
  1029.     <nick>    The user to invite
  1030.     <channel> the channel to invite them to.  You do not have to be on <channel>
  1031.               to invite a user there.  If <channel> is not specified, then the
  1032.               current channel is assumed.
  1033.  
  1034. FUNCTION:
  1035.  
  1036.     To send an invitation to another user to indicate you'd like them to join
  1037.     <channel>
  1038.  
  1039. @endnode
  1040.  
  1041. @node info "Command: /INFO"
  1042.  
  1043. COMMAND:
  1044.  
  1045. /INFO [<server>]
  1046.  
  1047. PARAMETERS:
  1048.  
  1049.     <server> server to query information from, if not specified then current
  1050.              server joined is assumed.
  1051.  
  1052. FUNCTION:
  1053.  
  1054.     To obtain further information on <server>.
  1055.  
  1056. NOTES:
  1057.  
  1058.     See the IRC-RFC for more info on this command.
  1059.  
  1060. @endnode
  1061.  
  1062. @node away "Command: /AWAY"
  1063.  
  1064. COMMAND:
  1065.  
  1066. /AWAY [<comment>]
  1067.  
  1068. PARAMETERS:
  1069.  
  1070.     <comment> message to appear when you are marked away.  If not specified then
  1071.               the 'away' tag will be removed.
  1072.  
  1073. FUNCTION:
  1074.  
  1075.     To notify others that you are away from keyboard (AFK) or not watching, etc.
  1076.  
  1077. @endnode
  1078.  
  1079. @node admin "Command: /ADMIN"
  1080.  
  1081. COMMAND:
  1082.  
  1083. /ADMIN [<server>]
  1084.  
  1085. PARAMETERS:
  1086.  
  1087.     <server> server to query information about it's administrat[ion]/[or]
  1088.  
  1089. FUNCTION:
  1090.  
  1091.     To obtain more information on about a server's adminitration
  1092.  
  1093. @endnode
  1094.  
  1095. @node alias "Command: /ALIAS"
  1096.  
  1097. COMMAND:
  1098.  
  1099. /ALIAS [<alias> [<command> [<parameters>]]]
  1100.  
  1101. PARAMETERS:
  1102.  
  1103.     <alias> the name to give this alias
  1104.     <command> the actual ChatBox command you'd like executed
  1105.     <parameters> the parameters appropriate for <command>
  1106.  
  1107.     If none of the parameters are specified, then all current aliases are
  1108.     listed.
  1109.  
  1110. FUNCTION:
  1111.  
  1112.     To supply shortcut aliases to a ChatBox IRC session.
  1113.  
  1114. EXAMPLES:
  1115.  
  1116. Example 1:  /ALIAS bye quit I'm OUTTA here!
  1117. Example 2:  /ALIAS test msg $C Useless Alias being tested.
  1118. Example 3:  /ALIAS umode mode $N
  1119. Example 4:  /ALIAS chop add +c *!*$1 $0
  1120. Example 5:  /ALIAS chg stat * $0 $1
  1121.  
  1122. For Example 1, if '/bye' was typed it would be the same as typing:
  1123.                /QUIT I'm OUTTA here!
  1124. For Example 2, if you were currently on #amiga, and typed '/test' it would be
  1125.                the same as entering:
  1126.                '/msg #amiga Useless Alias being tested'
  1127.                #amiga is substituted for $C
  1128. For Example 3, if your nick were 'ChatBox', and you typed '/umode +i', it would
  1129.                be the same as entering:
  1130.                '/mode ChatBox +i'   ChatBox is substituted for $N
  1131. For Example 4, if the following was entered:
  1132.                '/chop SASCMan jweb@*.phx.primenet.com'
  1133.                this would be the 'real' command:
  1134.                '/add +c *!*jweb@*.phx.primenet.com SASCMan'
  1135. For Example 5, if the following were entered:
  1136.                '/chg SASCMan +ckb'
  1137.                the actual command issued would be:
  1138.                '/stat * SASCMan +ckb'
  1139.  
  1140. $0-$9 are parsed as follows:
  1141.  
  1142.          $0   $1   $2   $3   $4       $9
  1143. /cmdname arg0 arg1 arg2 arg3 arg4 ... arg9
  1144.  
  1145. NOTES:
  1146.  
  1147.     $N    -  Substitution variable for current nickname
  1148.     $C    -  Substitution variable for current channel
  1149.     $0-$9 -  Substitution variables for arguments in command entered
  1150.     []    -  Substitute the rest of line.  This should always be specifed
  1151.              if an alias has any parameters.  If $0-$9 are used, then the
  1152.              rest of line is all arguments after the highest '$' token
  1153.              used.  i.e.:  if $3 was the highest used, then '[]' consists
  1154.              of all arguments from $4 to the last argument.
  1155.  
  1156.     An Alias file is automatically loaded at startup if it exists as
  1157.     "S:ircrc.als".  If the file does not exist as such, you can use
  1158.     "/LOAD alias.filename".
  1159.  
  1160. SEE ALSO:
  1161.  
  1162.     "Format for Alias file (ircrc.als)" (in ChatBox.guide)
  1163.     "/LOAD"
  1164.  
  1165. @endnode
  1166.  
  1167. @node version "Command: /VERSION"
  1168.  
  1169. COMMAND:
  1170.  
  1171. /VERSION [<server>]
  1172.  
  1173. PARAMETERS:
  1174.  
  1175.     <server>  server to query version information from
  1176.  
  1177. FUNCTION:
  1178.  
  1179.     To obtain version info on <server>
  1180.  
  1181. @endnode
  1182.  
  1183. @node voice "Command: /VOICE"
  1184.  
  1185. COMMAND:
  1186.  
  1187. /VOICE [<channel>] <user> [<user> [<user>]]
  1188. /UNVOICE [<channel>] <user> [<user> [<user>]]
  1189.  
  1190. PARAMETERS:
  1191.  
  1192.     <channel> Channel to send /VOICE or /UNVOICE change to
  1193.     <user> user to give/remove +v (VOICE) status to.
  1194.  
  1195. FUNCTION:
  1196.  
  1197.     To give/remove voice status to/from <user>'s.  Allows/disallows users on a
  1198.     moderated channel (/mode +m) to speak.  Users without +v (voice) cannot
  1199.     send text to the channel, if +m is set.
  1200.  
  1201. @endnode
  1202.  
  1203. @node connect "Command: /CONNECT"
  1204.  
  1205. COMMAND:
  1206.  
  1207. /CONNECT <target server> [<port> [<remote server>]]
  1208.  
  1209. PARAMETERS:
  1210.  
  1211.     <target server> server to CONNECT to
  1212.     <port>          port on <target server> to use
  1213.     <remote server> server to CONNECT to <target server>
  1214.  
  1215. FUNCTION:
  1216.  
  1217.     To (re)establish a connection between servers.  If <remote server> is
  1218.     specified, then an attempt is made to connect it to <target server>.
  1219.  
  1220. NOTES:
  1221.  
  1222.     See IRC-RFC for more information on CONNECT.  It is a restricted command,
  1223.     availble only to IRC operators.
  1224.  
  1225. @endnode
  1226.  
  1227. @node ctcp "Command: /CTCP"
  1228.  
  1229. COMMAND:
  1230.  
  1231. /CTCP <nick>|<channel> <type> [<parameters>]
  1232.  
  1233. PARAMETERS:
  1234.  
  1235.     <nick>|<channel>  recipient of the CTCP msg
  1236.     <type>  type of CTCP (i.e.  PING, VERSION, CLIENTINFO, PID, etc.)
  1237.     <parameters> parameters specific to <type>
  1238.  
  1239. FUNCTION:
  1240.  
  1241.     To send query type msgs to <nick>|<channel>.  Responses usually provide more
  1242.     info, or access to functions available via <nick>.
  1243.  
  1244. @endnode
  1245.  
  1246. @node op "Commands: /OP, /DEOP"
  1247.  
  1248. COMMANDS:
  1249.  
  1250. /OP [<channel>] <user> [<user> [<user>]]
  1251. /DEOP [<channel>] <user> [<user> [<user>]]
  1252.  
  1253. PARAMETERS:
  1254.  
  1255.     <channel> if specified, then the mode change is sent to <channel>, otherwise
  1256.               current channel is assumed
  1257.     <user>    user to give/remove channel operator status to/from
  1258.  
  1259. FUNCTION:
  1260.  
  1261.     Gives/removes user +/-o (ops/deop) on <channel>.
  1262.     Same as /mode <channel> +/-o <user>.
  1263.  
  1264. @endnode
  1265.  
  1266. @node ban "Commands:  /BAN, /UNBAN"
  1267.  
  1268. COMMAND:
  1269.  
  1270. /BAN [<channel>] <user> [<user> [<user>]]
  1271. /UNBAN [<channel>] <user> [<user> [<user>]]
  1272.  
  1273. PARAMETERS:
  1274.  
  1275.     <channel> if specified, then the mode change is sent to <channel>, otherwise
  1276.               current channel is assumed
  1277.     <user>    user to set/remove ban on/from
  1278.  
  1279. FUNCTION:
  1280.  
  1281.     Sets/removes user +/-b (ban) on <channel>.
  1282.     Same as /mode <channel> +/-b <user>.
  1283.  
  1284. NOTES:
  1285.  
  1286.     ChatBox maintains an internal banlist, if a 'mode #channel +b' is requested
  1287.     (a banlist request).  To view the internal banlist:
  1288.  
  1289.     /ban $list
  1290.  
  1291.     To remove a ban from the list:
  1292.  
  1293.     /ban $rem #
  1294.  
  1295.     Where the '#' is not the pound sign, but the number of the ban you'd like
  1296.     to remove.
  1297.  
  1298.     See also:  /FRIENDS ON  for information on a special function of /ban and
  1299.                /unban
  1300.  
  1301. @endnode
  1302.  
  1303. @node help "Command: /HELP"
  1304.  
  1305. COMMAND:
  1306.  
  1307. /HELP [<command>] [FULL]
  1308.  
  1309. PARAMETERS:
  1310.  
  1311.     <command>  command to get /HELP on, if not specified, then all commands are
  1312.                listed.
  1313.  
  1314. FUNCTION
  1315.  
  1316.     To provide template help on <command>.  If FULL is specified, then the full
  1317.     help text will be displayed from cb.help, if the .help file is in the
  1318.     current directory.
  1319.  
  1320. @endnode
  1321.  
  1322. @node exec "Command: /EXEC"
  1323.  
  1324. COMMAND:
  1325.  
  1326. /EXEC <arexxscript>
  1327.  
  1328. PARAMETERS:
  1329.  
  1330.     <arexxscript>  an ARexx script/macro to invoke.
  1331.  
  1332. FUNCTION
  1333.  
  1334.     To start an ARexx script.
  1335.     See the section on "ChatBox's ARexx Port" (in ChatBox.guide
  1336.  
  1337. @endnode
  1338.  
  1339. @node query "Command: /QUERY"
  1340.  
  1341. COMMAND:
  1342.  
  1343. /QUERY [<nick>|<channel>]
  1344.  
  1345. PARAMETERS:
  1346.  
  1347.     <nick>|<channel>  Recipient of the query.  Causes all undirected input to be
  1348.                       sent to <nick> or <channel>.  If not specified, then the
  1349.                       /QUERY is cleared for that window.
  1350.  
  1351. FUNCTION:
  1352.  
  1353.     To allow a private/public conversation with <nick>/<channel> respectively
  1354.     without having to type /msg <nick>|<channel> each time.
  1355.  
  1356. NOTE:  If an '=' is placed before <nick>, then the query will be on the
  1357.        specified DCC Chat session specified by <nick>.  See the section on
  1358.        "DCC.CHAT.AS225" for more information.
  1359.  
  1360. @endnode
  1361.  
  1362. @node newwin "Command: /NEWWIN"
  1363.  
  1364. COMMAND:
  1365.  
  1366. /NEWWIN
  1367.  
  1368. PARAMETERS:
  1369.  
  1370.     None.
  1371.  
  1372. FUNCTION:
  1373.  
  1374.     To open a new ChatBox channel window, without joining a channel.  To use as
  1375.     a query/msg/crap window, for example.
  1376.  
  1377. @endnode
  1378.  
  1379. @node msgwin "Command: /MSGWIN"
  1380.  
  1381. COMMAND:
  1382.  
  1383. /MSGWIN
  1384.  
  1385. PARAMETERS:
  1386.  
  1387.     None.
  1388.  
  1389. FUNCTION:
  1390.  
  1391.     To direct private messages/notifications to window in which /MSGWIN was
  1392.     executed.
  1393.  
  1394. @endnode
  1395.  
  1396. @node errwin "Command: /ERRWIN"
  1397.  
  1398. COMMAND:
  1399.  
  1400. /ERRWIN
  1401.  
  1402. PARAMETERS:
  1403.  
  1404.     None.
  1405.  
  1406. FUNCTION:
  1407.  
  1408.     To direct error messages/notifications to window in which /ERRWIN was
  1409.     executed.
  1410.  
  1411. @endnode
  1412.  
  1413. @node add "Command: /ADD"
  1414.  
  1415. COMMAND:
  1416.  
  1417. /ADD <flags> <address> [<nick>]
  1418.  
  1419. PARAMETERS:
  1420.  
  1421.     <flags>   flags to set/unset (+/-)  or ALL (see NOTES below)
  1422.     <address> address of the 'friend', wildcards are permitted.  (standard IRC
  1423.               address format)
  1424.     <nick>    if specified allows easier access to the /FRIENDS list
  1425.  
  1426. FUNCTION:
  1427.  
  1428.     To 'add' a friend to the '/FRIENDS' list.  Giving them access to certain
  1429.     ChatBox features in the friends architecture.
  1430.  
  1431. NOTES:
  1432.  
  1433.     Flags and there uses:
  1434.  
  1435.         c  -  CHOPS, or channel operator status on /FRIENDS list.  With this
  1436.               flag set on a friend, they will be auto-opped when they join a
  1437.               channel with /FRIENDS ON
  1438.         k  -  KICK, or KICK status.  With this flag set on a friend they can
  1439.               use ChatBox's kick to remove a user from the current channel (bot
  1440.               like function)
  1441.         b  -  BAN, or ban status.  With this flag set on a friend they can use
  1442.               ChatBox's smart ban facilities (see notes on bans below)
  1443.         o  -  OPS, or op status, with this flag set this user can give OPs to
  1444.               other users that are on the friends list.  But will not allow
  1445.               OP'ing non-friends (good for when no ops are live, and more ops
  1446.               are needed. for example, when the chatbox session is started with
  1447.               no ops in channel, and no one is paying attention except for a
  1448.               user who has +o on his friend status.)
  1449.         a  -  ADD, or add status.  With this flag set this user can /ADD more
  1450.               friends to the ChatBox list (remotely)
  1451.         r  -  REMOVE, or remove status.  With this flag set for a friend, they
  1452.               can remove a user from the ChatBox friends list (remotely)
  1453.         l  -  LIST, or list status.  Allows a friend with this flag set to list
  1454.               out the current friends list (this requires MEGA bandwidth, and
  1455.               usually results in FLOOD kills when friends lists are large)
  1456.         s  -  STAT, with this flag set a user can query ChatBox for info on a
  1457.               friend (to modify)
  1458.  
  1459. FRIENDS COMMANDS:
  1460.  
  1461.     %chop                                   - no parameters
  1462.     %kick <nick> <comment>                  - same as /kick, except no channel
  1463.                                               is specified
  1464.     %ban <nick>|<ban mask>                  - same as /ban
  1465.     %op <nick>                              - same as /op
  1466.     %add <flags> <address> <nick>           - same as /add
  1467.     %remove <*>|<address> <*>|<nick>        - same as /remove
  1468.     %list                                   - no parameters
  1469.     %stat <*>|<address> <*>|<nick> <flags>  - same as /stat
  1470.  
  1471. EXAMPLE:
  1472.  
  1473.     /ADD +ckbo *!jweb@*primenet.com SASCMan
  1474.     The above adds SASCMan (jweb@primenet.com) to the friends list (this is not
  1475.     saved to disk) with flags of +ckbo
  1476.  
  1477.     /ADD ALL *!ding@*.silly.world.com SillyMan
  1478.     The above adds SillyMan to the friends list with ALL flags set
  1479.  
  1480. SEE ALSO:
  1481.  
  1482.     /FRIENDS, /STAT, /REM, /FREE
  1483.  
  1484. @endnode
  1485.  
  1486. @node rem "Command: /REM"
  1487.  
  1488. COMMAND:
  1489.  
  1490. /REM <*>|<address> <*>|<nick>
  1491.  
  1492. PARAMETERS:
  1493.  
  1494.     <address> address specification of friend to remove
  1495.     <nick>    irc name of friend to remove.
  1496.     <*>       place holder.  If address is not specified, a '*' should be used
  1497.               as a place holder.  (note, do not edit ARexx scripts to conform
  1498.               to this, as it will most certainly change as soon as I devise a
  1499.               more intuitive way of handling this)
  1500.  
  1501. FUNCTION:
  1502.  
  1503.     Removes a friend from the current, in memory, friends list.  Does not remove
  1504.     it from the friends file
  1505.  
  1506. EXAMPLE:
  1507.  
  1508.     /REM #?!jweb@#?.phx.primenet.com   - removes address (friend) from current
  1509.                                          list in memory
  1510.     /REM * SASCMan                     - removes SASCMan from the current list
  1511.  
  1512. @endnode
  1513.  
  1514. @node stat "Command: /STAT"
  1515.  
  1516. COMMAND:
  1517.  
  1518. /STAT <*>|<address> [<nick>] [<flags>]
  1519.  
  1520. PARAMETERS:
  1521.  
  1522.     <address> address of friend to get info on or change status of
  1523.     <nick> nick of friend, if <address> is not used (with '*' as a place holder)
  1524.     <flags> new flags to set/unset for friend specified.
  1525.     <*) a place holder for <address> in case <nick> is used to find the friend.
  1526.     IF no parameters are given, then the current friends list will be output to
  1527.     the window.
  1528.  
  1529. FUNCTION:
  1530.  
  1531.     To list/change/query info/status of a friend.
  1532.  
  1533. EXAMPLE:
  1534.  
  1535.     /STAT * SASCMan                     - Shows current status info on
  1536.                                           SASCMan
  1537.     /STAT #?!root@#?.slip.uiuc.edu      - Lists current status info on
  1538.                                           specified address
  1539.     /STAT #?!silly@#?.corny.edu * +c-k  - Sets status to +c, -k for address
  1540.                                           specified
  1541.     /STAT * SASCMan +ck-b-o             - Sets status +c, +k, -b, -o for
  1542.                                           SASCMan
  1543.     /STAT                               - Lists out current Friends list.
  1544.  
  1545. @endnode
  1546.  
  1547. @node friends "Command: /FRIENDS"
  1548.  
  1549. COMMAND:
  1550.  
  1551. /FRIENDS <ON/OFF/WHO>
  1552.  
  1553. PARAMETERS:
  1554.  
  1555.     <ON/OFF/WHO> to activate or deactivate the friends list for the window in
  1556.                  which ON/OFF was specified
  1557.  
  1558. FUNCTION:
  1559.  
  1560.     To make a friends list active or non-active.
  1561.  
  1562. NOTES:
  1563.  
  1564.     If 'WHO' is specified, the friends list is left OFF, but the WHO list
  1565.     is loaded so that smart banning can be used.
  1566.  
  1567.     When a friends list is turned 'ON' a /WHO #channel is done to grab the
  1568.     address of all users currently on the channel, so there may be a slight
  1569.     delay and then an "End of WHO" message.  With /FRIENDS ON, a special
  1570.     ChatBox feature is enabled (regardless of whether the list actually
  1571.     has any 'friends' in it or not).  /BAN becomes 'smart'.  For example:
  1572.  
  1573.     A user is DorkMan (~dork@slip34.ding.dong.com).
  1574.     And '/ban DorkMan' is entered...  ChatBox will set the ban as follows:
  1575.     /mode #channel +b *!*dork@*.ding.dong.com
  1576.  
  1577. SEE ALSO:
  1578.  
  1579.     /ADD, /REM, /STAT, /FREE,
  1580.     "Format for FRIENDS files" (in ChatBox.guide)
  1581.  
  1582. @endnode
  1583.  
  1584. @node free "Command: /FREE"
  1585.  
  1586. COMMAND:
  1587.  
  1588. /FREE ALIAS|FRIENDS
  1589.  
  1590. PARAMETERS:
  1591.  
  1592.     ALIAS   the keyword ALIAS when used (ie: /free ALIAS) free's the alias list
  1593.             from memory
  1594.     FRIENDS the keyword FRIENDS when used (ie: /free FRIENDS) free's the friends
  1595.             list from memory
  1596.  
  1597. FUNCTION:
  1598.  
  1599.     To free up memory resources by eliminating /ALIAS and /FRIENDS lists.
  1600.  
  1601. @endnode
  1602.  
  1603. @node log "Command: /LOG"
  1604.  
  1605. COMMAND:
  1606.  
  1607. /LOG [<file>] [<channel>] [CLOSE|OPEN]
  1608.  
  1609. PARAMETERS:
  1610.  
  1611.     <file>       file to create to keep logs (if not specified, <channel> name
  1612.                  is used as file name)
  1613.     <channel>    channel to creat log file for  (if not specified, current
  1614.                  channel is assumed)
  1615.     [CLOSE|OPEN] Keyword to OPEN or CLOSE the file for <channel>
  1616.  
  1617. FUNCTION:
  1618.  
  1619.     To create a log file for <channel> or the current channel.
  1620.  
  1621. @endnode
  1622.  
  1623. @node format_friends "Example /FRIENDS file"
  1624.  
  1625. The format for a /FRIENDS file is VERY simple.  All lines beginning with a
  1626. command starter are executed by ChatBox's interpreter.  An example file:
  1627.  
  1628. --------------------> cut here <----------------------
  1629.  
  1630. Comment line
  1631. # or another way for a comment line
  1632. ! or another
  1633. /add +ckbo #?!silly@#?.willy.wong.edu DingDong
  1634. /add +c #?!jweb@#?.phx.primenet.com SASCMan
  1635. /add ALL #?!root@#?.this.that.com Lost
  1636.  
  1637. #another comment
  1638.  
  1639. /add +ck #?!joe@#?.blo.com JoeBlo
  1640.  
  1641. ------------------------->end<------------------------
  1642.  
  1643. Any questions?
  1644.  
  1645. Save this file anywhere, and load it with:
  1646.  
  1647. /FRIENDS PATH:<friends.file>
  1648.  
  1649. Don't forget to activate the friends list with:
  1650.  
  1651. /FRIENDS ON
  1652.  
  1653. @endnode
  1654.  
  1655. @node format_alias "Example /ALIAS file"
  1656.  
  1657. The format for an /ALIAS file is VERY simple.  All lines beginning with a
  1658. command starter are executed by ChatBox's interpreter.  An example file:
  1659.  
  1660. --------------------> cut here <----------------------
  1661.  
  1662. Comment line
  1663. # or another way for a comment line
  1664. ! or another
  1665. /alias banlist mode $0 +b
  1666. /alias chop add +c *!*$1 $0
  1667. /alias tops add ALL *!*$1 $0
  1668. /alias umode mode $N []
  1669. /alias pme describe $0 []
  1670.  
  1671. #another comment
  1672. /alias vers ctcp $0 VERSION
  1673. /alias finger ctcp $0 FINGER
  1674. /alias send dcc send $0 $1
  1675. /alias move dcc move $0 $1
  1676. /alias chat dcc chat $0
  1677. /alias dmsg =$0 []
  1678. /alias dclose dcc $0 CLOSE
  1679.  
  1680. ------------------------->end<------------------------
  1681.  
  1682. Ez nuff?
  1683.  
  1684. NOTE:  Only /ALIAS commands will be parsed.
  1685.  
  1686. @endnode
  1687.  
  1688. @node load "Command: /LOAD"
  1689.  
  1690. COMMAND:
  1691.  
  1692. /LOAD <cmdfile>
  1693.  
  1694. PARAMETERS:
  1695.  
  1696.     <cmdfile> a file consisting of ChatBox command lines (i.e.:  alias file,
  1697.               'friends' file)
  1698.  
  1699. FUNCTION:
  1700.  
  1701.     To load and execute a ChatBox command file.
  1702.  
  1703. NOTES:
  1704.  
  1705.     Not all commands can be issued in a command file.  Currently, only
  1706.     the following commands are available:
  1707.  
  1708.     /ADD
  1709.     /ALIAS
  1710.     /AWAY
  1711.     /BAN     /UNBAN
  1712.     /FRIENDS
  1713.     /JOIN
  1714.     /MODE
  1715.     /NICK
  1716.     /OP      /DEOP
  1717.     /VOICE   /UNVOICE
  1718.     /NEWWIN
  1719.  
  1720. @endnode
  1721.  
  1722. @node dcc "Command: /DCC"
  1723.  
  1724. COMMAND:
  1725.  
  1726. /DCC <type> <nick> [<parameters>]
  1727.  
  1728. PARAMETERS:
  1729.  
  1730.     <type>       CHAT/SEND/MOVE, currently none of these are built in and
  1731.                  require DCC.send and DCC.chat to be installed in DCC:
  1732.     <nick>       recipient of DCC
  1733.     <parameters> filename for SEND/MOVE
  1734.  
  1735. FUNCTION:
  1736.  
  1737.     To establish a direct socket connection with <nick> for a more secure
  1738.     transaction.
  1739.  
  1740. SPECIAL NOTES:
  1741.  
  1742.     DCC Chat has now been 'personalized' for ChatBox.  The version included with
  1743.     ChatBox (DCC.CHAT.AS225) will only work with ChatBox.  Do not try to use it
  1744.     with other IRC clients, it is futile. ;)
  1745.  
  1746.     ChatBox's DCC system behaves in a fashion similar to IrcII.  When you wish
  1747.     to 'send' text to a connected party you prepend his/her nickname with '='
  1748.     to tell ChatBox that this message is intended for the recipient via a DCC
  1749.     Chat connection.
  1750.  
  1751.     The recommended method is to open a clear window with /NEWWIN, and use
  1752.     "/QUERY =nick" to carry on the transaction.  However, you may use ChatBox's
  1753.     /ALIAS system, or more simply use "/MSG =nick <message>".
  1754.  
  1755.     Example /ALIAS for using DCC:
  1756.  
  1757.     /ALIAS DMSG MSG =$0 []
  1758.  
  1759.     With the above alias you can type:  /dmsg SkyD00d Hey!
  1760.     And the text will be sent to =SkyD00d.
  1761.  
  1762.     To close a DCC Chat session:  /DCC <nick> CLOSE
  1763.  
  1764. @endnode
  1765.