home *** CD-ROM | disk | FTP | other *** search
Text File | 1978-03-06 | 44.7 KB | 1,765 lines |
- @node read "Command: /READ"
-
- COMMAND:
-
- /READ [<textfile>]
-
- PARAMETERS:
-
- <textfile> Textfile to /READ, must be ASCII, and less than 20k in size.
- If no file is specified, an ASL File Requester will be opened.
-
- FUNCTION:
-
- For online reading of textfiles.
-
- @endnode
-
- @node on "Command: /ON"
-
- COMMAND:
-
- /ON <type> <mask1> [<mask2>] </action> [<args>]
-
- PARAMETERS:
-
- <type> Type of /ON hook to install
- <mask1> Pattern to match, varies with each <type>
- <mask2> Secondary pattern to match, also varies with <type>
- </action> ChatBox slash command, or ARexx script to execute upon activation
- of this hook
- <args> Any arguments that apply to </action>
-
- FUNCTION:
-
- Installs, or REMOVES an /ON hook. /ON hooks allow for trapping of certain
- stream events (like public messages, private message, channel operations,
- etc.) Upon receiving an event that matches the criteria of an /ON hook,
- ChatBox will execute the </action> command with ChatBox's command parser.
-
- OTHER PARAMETERS:
-
- If you type /ON with no parameters, you will get a list of all /ON hooks
- that are currently installed. Indicated in the list are the /ON # (for
- referencing), the ACTIVE or INACTIVE state, and the /ON hook type and
- format.
-
- REMOVE <on #>
-
- <on #> is the # you'd like to delete from the /ON hook list
-
- ACTIVATE <on #> [<life>]
-
- <on #> is the # you'd like to activate
- [<life>] specifies the number of times to execute this hook, until it
- deactivates itself. If [<life>] is omitted, the previous life
- length is used (which may very well be 0). If life is set to
- 0, then it will never deactivate itself.
-
- DEACTIVATE <on #>
-
- <on #> is the # you'd like to deactivate
-
- ***NOTE: If the <on #> is omitted for ACTIVATE and DEACTIVATE, then the
- last /ON entered is assumed. This is mainly useful in the
- 'Alias File' for deactivating /ON hooks immediately after
- creating them.
-
- DEACTIVATEd /ON hooks are bypassed. If you install a hook with a <life>
- parameter, it will only be executed that number of times before it
- deactivates itself. Good for when you'd like an event to happen only a
- limited number of times.
-
- ***NOTE: To set the <life> at /ON hook creation time, merely prepend the
- life limit to the TYPE. i.e.:
- /ON 2/PUBLIC * /msg $C this is a limited /ON, it will run 2 times
-
- or...
-
- /ON 2PUBLIC * /msg $C '/' is an optional separator (see above)
-
- NOTES:
-
- Types of /ON hooks:
-
- PUBLIC - Hook that responds to PUBLIC channel messages.
- MSG - Hook that responds to PRIVATE messages
- CTCP - Responds to CTCP events/commands
- JOIN - Responds to JOIN events
- LEAVE - Responds to channel PARTS
- QUIT - Responds to signoffs/QUITs
- NICKNAME - Responds to NICKNAME changes
- KICK - Responds to KICK events
- MODE - Responds to MODE changes
- TOPIC - Responds to TOPIC changes
-
- A response from the server must satisfy some criteria in an /ON hook before
- it is activated. First, the TYPE must be matched. If it is, then <mask1>
- is checked, and then <mask2> (if applicable). If all criteria are met,
- then the </action> is executed. <mask1> applies to all TYPES of hooks,
- whereas <mask2> may not need to be specified at all. It all depends on
- what you wish to respond to. The various types, and what the masks mean to
- them is specified below:
-
- PUBLIC - <mask1> is to match the address of the user that sent the
- MSG PUBLIC, MSG, or CTCP message. <mask2> is applied to the
- CTCP actual text sent.
-
- JOIN - <mask1> is applied to the address of the person joining the
- LEAVE channel, <mask2> matches the channel name on which the join
- occurred.
-
- KICK - <mask1> is applied to the nick of the person being kicked,
- <mask2> is applied to the channel name on which the kick
- occurred.
-
- TOPIC - <mask1> is applied to the address of the user that changed the
- topic, and <mask2> is applied to the channel on which the topic
- was changed.
-
- QUIT - <mask1> is applied to the address of the user that quit,
- <mask2> is ignored.
-
- NICKNAME - <mask1> is applied to the address of the person that changed
- their nick (their original nick can be extracted from this),
- <mask2> is applied to the new nickname.
-
- The </action> takes a form similar to ChatBox's alias, supports the $x
- variables. It also adds a new set of variables that apply only to PUBLIC,
- MSG, CTCP, and TOPIC.
-
- Variables that apply to the server command lines:
-
- $0 - $9 are the respective tokens of the server command issued, but only
- up to the 'text to send' portion (see notes below).
- $0 is typically the nickname of the sender
- $1 is the command name (raw irc server command)
- $2 is often the channel or recipient
-
- $C is used to extract the channel, or recipient of this command (if
- applicable)
-
- $N is used to extract the Nickname of the user from which the server
- command originated.
-
- $T is used to extract the type of /ON hook that was activated (only
- to the ARexx interface)
-
- $U is used to extract the full address of the user from which the
- server command originated
-
- [] is used to extract the 'rest of line', starting from the highest
- variable ($0 - $9) addressed (see notes below)
-
- Variables that apply to the "text sent":
-
- ^0 - ^9 are the respective words of the "text sent", useful for tokenizing
- a line word by word (separated by spaces, see notes below)
- ^0 is the CTCP type for a CTCP /ON
-
- {} used to extract the 'rest of line', starting from the highest
- variable (^0 - ^9) addressed (see notes below)
-
- {x} used to extract from 'x' to end. ( i.e.: {4} = ^4 {} )
- {-} same as {}
- {x-y} used to extract from 'x' to 'y'.
- {-y} used to extract from highest variable address previously (^0 - ^9)
- up to 'y'
- {x-} used to extract from 'x' to end. (same as {x})
-
-
- Format of a Server Command:
-
- :nick!user@host COMMAND argument [argument1 ...] :text to send
-
- All normal server commands and replies are issued in this format,
- varying based on the type of command/reply.
-
- The tokens ($0 - $9 and []) apply to the portion BEFORE the second ':' in
- the server reply. Here is a sample PUBLIC command:
-
- :sascman!jweb@primenet.com PRIVMSG #Amiga :This text is seen on #Amiga
- ^- 0 -^ ^- 1 -^ ^- 2-^ ^- text to send -^
-
- If a PUBLIC /ON hook was activated, and the </action> was specified as:
-
- (i.e.: "/ON PUBLIC * /msg $C $U {}")
-
- /msg $C $U {}
-
- Then the parsed command would look like:
-
- /msg #Amiga sascman!jweb@primenet.com This text is seen on #Amiga
-
- Which would send (to #Amiga):
-
- sascman!jweb@primenet.com This text is seen on #Amiga
-
- NOTE: You will need the IRC-RFC to use the /ON command fully.
-
- Standard UNIX pattern matching is used, case is ignored:
-
- "*" matches an arbitrary number of characters.
- "?" matches exactly ONE character.
-
- Variables for "text to send":
-
- In the above server command example, the variables would return the
- following:
-
- ^0 This
- ^1 text
- ^2 is
- ^3 seen
- ^4 on
- ^5 #Amiga
-
- But, if you specifed something like:
-
- /action ^1 {}
-
- The {} would be replaced with tokens ^2 through to the end of the line,
- make the above '/action' parse out to:
-
- /action text is seen on #Amiga
-
- {} is all text after the highest token address (in this case ^1)
-
-
- EXAMPLES:
-
- /ON PUBLIC * @find * /find ^1 {}
-
- Whenever a user sends '@find' to the channel, the /ON hook will be
- activated, send a /find command to the parser. The ^1 refers to the
- second word (^0 is the first) of the 'text to send'.
-
- @endnode
-
- @node rawwin "Command: /RAWWIN"
-
- COMMAND:
-
- /RAWWIN
-
- PARAMETERS:
-
- None.
-
- FUNCTION:
-
- Sets a window to RAW mode, showing RAW server messages.
-
- NOTES:
-
- This function of ChatBox is only useful for those that may be developing
- ARexx scripts. It shows what the server is sending, and may aid in
- debugging scripts that rely on server communication command formats.
-
- @endnode
-
- @node echo "Command: /ECHO"
-
- COMMAND:
-
- /ECHO <text>
-
- PARAMETERS:
-
- <text> Text to display locally in text window of active window.
-
- FUNCTION:
-
- Displays text locally.
-
- EXAMPLES:
-
- /ECHO This is a test of the /ECHO command.
-
- Yields:
- [Echo] | This is a test of the /ECHO command.
-
- @endnode
-
- @node notify "Command: /NOTIFY"
-
- COMMAND:
-
- /NOTIFY [-]<nick> [[-]<nick> [...]]
-
- PARAMETERS:
-
- <nick> User you'd like a notify on (for signon/signoff) If '-' precedes
- the <nick> then <nick> is removed if it is on the list of
- notifies.
-
- FUNCTION:
-
- Adds/Removes a notify. Notify uses ISON to detect when someone has joined
- or left IRC.
-
- EXAMPLES:
-
- /notify SkyGuy Tau Fastlane Adds nicks to the notify list
- /notify -SkyGuy -Fastlane Removes nicks from the notify list
-
- NOTES:
-
- If ChatBox should fail to open the timer.device it will fall back to using
- Intuition's 'Ticking' system. The drawback to using Intuition is that the
- window MUST be active for these 'Ticks' to be sent. So, if the window is
- not active (at least ONE window) then /NOTIFY will not be polled...
-
- Silent Use of /NOTIFY:
-
- The /NOTIFY command uses the ISON server command to obtain it's information.
- This will result in seeing ISON replies from the server, if you wish to ignore
- these messages, set the menu item in the Prefs menu "Show ISON" so that it does
- not have a check mark next to it.
-
- @endnode
-
- @node search "Command: /SEARCH"
-
- COMMAND:
-
- /SEARCH <string> [BEGIN|MIDDLE|CONTINUE]
-
- PARAMETERS:
-
- <string> A string of characters to be searched for in the channel
- scrollback buffer. If multi-word strings are being searched
- for, they should be enclosed in quotes.
- BEGIN Search from BEGINning of buffer, if BEGIN is specified
- MIDDLE Search from MIDDLE of buffer
- CONTINUE Search from last position [default]
-
- FUNCTION:
-
- Searches channel scrollback buffers for a specified string
-
- EXAMPLES:
-
- /SEARCH "Hello World!" BEGIN - Searches for "Hello World!" starting
- from beginning of buffer.
-
- /SEARCH A4000 - Searches from last position
- (CONTINUE) for the string "A4000"
-
- @endnode
-
- @node ignore "Command: /IGNORE"
-
- COMMAND:
-
- /IGNORE <user | #> <type | option> [<type> [...]]
-
- PARAMETERS:
-
- <user> If <user> is specified then the <types> must follow. This
- is the usermask (pattern) to 'ignore'.
- <#> If a <#> is specifed (as #1, #2, etc) then an <option> must
- follow. This allows operations on a particular ignore.
- <option> An <option> is only valid when a <#> is given. Otherwise
- option names are just ignored.
- <type> Type of incoming msg/cmd to ignore from <user>
-
- See Below for OPTIONS and TYPES
-
-
- FUNCTION:
-
- Adds/Removes/Alters an ignore in the ignore list.
-
- OPTIONS and TYPES:
-
- Current ignore types supported are:
-
- PRV Ignore private messages from <user>
- PUB Ignore public (to channel) messages from <user>
- NOTP Ignore private notices from <user>
- NOT Ignore public notices from <user>
- CTCP Ignore CTCP's from <user> (will not reply to PINGs, etc.)
-
-
- Current options supported are:
-
- SET Set new types for ignore #x
- UNSET Unset types from ignore #x
- REM Remove ignore #x
-
- EXAMPLES:
-
- /ignore SASC* PRV PUB (ignores Private and Public messages from any
- user who's NICK starts with SASC)
- /ignore *.primenet.com PRV (ignores all private messages from any user whose
- address ends in ".primenet.com")
-
- <user> is the usual IRC type of address mask of the form: nick!user@host
-
- /ignore (displays HELP for ignore, and lists all ignores
- currently in memory)
- /ignore #2 SET PUB (set ignore #2 to also ignore PUB messages)
- /ignore #3 UNSET PRV (unsets PRV from ignore #3)
- /ignore #0 REM (removes ignore #0)
-
- @endnode
-
- @node describe "Command: /DESCRIBE"
-
- COMMAND:
-
- /DESCRIBE <nick> <action>
-
- PARAMETERS:
-
- <nick> This is the <nick> for the <action> to be sent to.
- <action> The action to 'perform'
-
- FUNCTION:
-
- Sends an action message (similar to /ME, only it is privately sent)
-
- @endnode
-
- @node raw "Command: /RAW"
-
- COMMAND:
-
- /RAW <raw_irc_cmd>
-
- PARAMETERS:
-
- <raw_irc_cmd> a VALID command line to send to current server.
-
- FUNCTION:
-
- Sends <raw_irc_cmd> to the server. See the IRC RFC for more information.
- RAW IRC commands are beyond the scope of this document.
-
- @endnode
-
- @node wait "Command: /WAIT"
-
- COMMAND:
-
- /WAIT ON|OFF
-
- PARAMETERS:
-
- ON|OFF
-
- FUNCTION:
-
- To activate/deactivate the ARexx WAIT queue. If /WAIT is ON, then lines
- received are queued (up to 256). If "/WAIT ON" is again executed while
- line queueing is already ON, the 'buffer' is flushed of all pending lines.
- If a "/WAIT OFF" is executed then line queueing is deactivated, and the
- 'buffer is flushed.
-
- NOTES:
-
- This command has NO value except to those using ARexx and ChatBox's WAIT
- command inside of an ARexx script. It is meant for consistant flow
- control.
-
- It is recommended that you issue a "/WAIT ON" command at the beginning of
- every ARexx script that has a WAIT loop (i.e. a BOT).
-
- Definitely issue a "/WAIT OFF" command before exiting ANY script that uses
- the WAIT command. No harm is done if this step is forgotten... However,
- if line queueing is not turned off between the execution of scripts,
- unpredictable results can be expected from the WAIT command, as the queue
- buffer must be emptied of all pending stored lines (and only 256 can be
- stored).
-
- Leaving the /WAIT in the ON "position" with no script running, merely
- wastes valuable CPU and Memory resources.
-
- Example:
-
- -------------->snip<--------------
-
- /* sample WAIT loop */
-
- HOST = address() /* get the calling host name */
- address value HOST
-
- CMD '/wait on' /* turn the LINE queue on */
-
- irc.CMD = 'NONE'
-
- do while irc.CMD != '/endrexx'
- say 'Command for this line: ' || irc.CMD
- say 'Channel for this line: ' || irc.CHANNEL
- say 'Message for this line: ' || irc.LINE
- end
-
- CMD '/wait off' /* turn the LINE queue off */
-
- exit 0
-
- -------------->snip<--------------
-
- @endnode
-
- @node kick "Command: /KICK"
-
- COMMAND:
-
- /KICK [<channel>] <user> [<comment>]|[$]
-
- PARAMETERS:
-
- <channel> You must be on <channel> to kick, if <channel> is not
- specified, then the kick is automatically sent to the
- current channel.
-
- <user> This must be specified, and the <user> must be on the
- <channel> that the KICK is being sent to.
-
- <comment> Not required, but recommended.
-
- $ If a '$' is specified instead of comment, ChatBox will select a
- random kick message from 'cb.kick' if it is present.
-
- FUNCTION:
-
- KICK's <user> off of <channel>
-
- NOTES:
-
- You must have '+o' status on the channel to KICK.
-
- @endnode
-
- @node kill "Command: /KILL"
-
- COMMAND:
-
- /KILL <nick> <comment>
-
- PARAMETERS:
-
- <nick> Nick of the user to KILL off of IRC (forced QUIT)
-
- <comment> Required comment clarifying the reason
-
- FUNCTION:
-
- KILL's <nick> from server, causing a forced QUIT
-
- NOTES:
-
- You must be an IRCop to use the KILL command.
-
- @endnode
-
- @node topic "Command: /TOPIC"
-
- COMMAND:
-
- /TOPIC [<channel>] [<topic>]
-
- PARAMETERS:
-
- <channel> Channel to change the topic on, if not specified then the
- command is sent to the current channel
-
- <topic> The new topic string
-
- FUNCTION:
-
- Changes the topic on <channel> to <topic>
-
- NOTES:
-
- If the channel mode is set to '+t' (topic protection) then you must have
- channel operator status (+o) to change the topic.
-
- @endnode
-
- @node time "Command: /TIME"
-
- COMMAND:
-
- /TIME [<server>]
-
- PARAMETERS:
-
- <server> If not specified, the TIME command is sent to the current
- server.
-
- FUNCTION:
-
- Returns the current time on <server>
-
- @endnode
-
- @node trace "Command: /TRACE"
-
- COMMAND:
-
- /TRACE [<server>]
-
- PARAMETERS:
-
- <server> server to trace the route to
-
- FUNCTION:
-
- TRACE is used to find the route to <server>
-
- @endnode
-
- @node server "Command: /SERVER"
-
- COMMAND:
-
- /SERVER [<server>]
-
- PARAMETERS:
-
- <server> server to connect to, if not specified the current server
- name is returned.
-
- FUNCTION:
-
- To connect to a server. Upon reconnect, all active channels are rejoined.
-
- @endnode
-
- @node signoff "Commands: /SIGNOFF, /SIGN, /QUIT"
-
- COMMAND:
-
- /SIGNOFF [<comment>]
- /QUIT [<comment>]
-
- PARAMETERS:
-
- <comment> An optional comment, if not specified then "Leaving." is used.
-
- FUNCTION:
-
- To QUIT IRC, and to quit ChatBox.
-
- @endnode
-
- @node stats "Command: /STATS"
-
- COMMAND:
-
- /STATS [<query> [<server>]]
-
- PARAMETERS:
-
- <query> type of "c,h,i,k,l,m,o,y,u"
-
- <server> server to get STATS on
-
- FUNCTION:
-
- To obtain information about a server about <query> See the IRC RFC
- for more information on STATS
-
- @endnode
-
- @node who "Command: /WHO"
-
- COMMAND:
-
- /WHO [<name> [<o>]] [FULL]
-
- PARAMETERS:
-
- <name> A nickname, user address, channel or pattern to query
-
- <o> If specified then only IRCops are listed.
-
- FUNCTION:
-
- Generates a query which returns a list of information matching the
- <name> pattern. Wildcards are permitted.
-
- If FULL is specified, then the full whois information is displayed,
- otherwise just the channel, status, and address are displayed.
-
- @endnode
-
- @node whois "Command: /WHOIS"
-
- COMMAND:
-
- /WHOIS [<server>] <nickmask>[,<nickmask>[,...]]
-
- PARAMETERS:
-
- <server> if specified, checks only <server>
-
- <nickmask> a wildcard to match, or a known nickname
-
- FUNCTION:
-
- Returns info about <nickmask>
-
- @endnode
-
- @node whowas "Command: /WHOWAS"
-
- COMMAND:
-
- /WHOWAS <nick> [<count> [<server>]]
-
- PARAMETERS:
-
- <nick> a <nick> that no longer exists (because of a QUIT or NICK
- change)
-
- <count> if specified, then only <count> replies will be returned
- if not specified, then all replies are sent.
-
- <server> server to query
-
- FUNCTION:
-
- Returns info about a <nick> that no longer exists.
-
- @endnode
-
- @node join "Command: /JOIN"
-
- COMMAND:
-
- /JOIN <channel>
-
- PARAMETERS:
-
- <channel> name of channel to join
-
- FUNCTION:
-
- To JOIN a channel. If the channel does not exist then you are given
- operator status on the newly created channel.
-
- @endnode
-
- @node ping "Command: /PING"
-
- COMMAND:
-
- /PING <nick>|<channel>
-
- PARAMETERS:
-
- <nick> a nick to PING
-
- <channel> a channel to ping. All users on <channel> will be sent a
- PING to reply to.
-
- FUNCTION:
-
- Sends a CTCP of type PING to <nick> or <channel>.
-
- @endnode
-
- @node leave "Commands: /LEAVE, /L, /PART"
-
- COMMAND:
-
- /LEAVE [<channel>]
- /L [<channel>]
- /PART [<channel>]
-
- PARAMETERS:
-
- <channel> channel to leave, if not specified the current channel is
- left
-
- FUNCTION:
-
- To exit from <channel>
-
- @endnode
-
- @node list "Command: /LIST"
-
- COMMAND:
-
- /LIST [<pattern>]|[<channel>{,<channel>}] [<server>] [MAX <max>] [MIN <min>]
-
- PARAMETERS:
-
- <pattern> list channels matching <pattern>
-
- <channel> channel to list
-
- <server> server to query
-
- MAX <max> list only channels that have less than or equal to 'max' number of
- people
- MIN <min> list only channels that have more than or equal to 'min' number of
- people
-
- FUNCTION:
-
- Lists channels and their topics. If <pattern> is specified then only
- channels that match the pattern and that are not secret or private (+s or
- +p) are listed.
-
- @endnode
-
- @node links "Command: /LINKS"
-
- COMMAND:
-
- /LINKS [[<remote server>] <server masg>]
-
- PARAMETERS:
-
- See IRC RFC for more information.
-
- @endnode
-
- @node nick "Command: /NICK"
-
- COMMAND:
-
- /NICK <nick>
-
- PARAMETERS:
-
- <nick> New nickname.
-
- FUNCTION:
-
- Change current nickname to <nick>
-
- @endnode
-
- @node notice "Command: /NOTICE"
-
- COMMAND:
-
- /NOTICE <nick>|<channel> <message>
-
- PARAMETERS:
-
- <nick>|<channel> the nick or channel to send <message> to.
-
- FUNCTION:
-
- Sends a notice (similar to a /msg) to <nick>, or <channel>
-
- @endnode
-
- @node names "Command: /NAMES"
-
- COMMAND:
-
- /NAMES [ON/OFF]|[<channel>{,<channel>}]
-
- PARAMETERS:
-
- ON/OFF to turn the names list ON or OFF. The names list splits the
- current window on the right hand side. It sports a scroll gadget,
- and two arrows. *** SEE NOTE BELOW ***
- <channel> to get the members names from.
-
- FUNCTION:
-
- Lists the names for <channel>. Assuming you are a> on the channel, or
- b> off the channel AND the +p/+s mode is not set.
-
- NOTES:
-
- The names list can be used to supply nicks/names for commands that require a
- nick/name as input. If a double-click is made on a nick/name, a /WHOIS will
- be issued. /KICK also works, but only with the first name selected so as to
- avoid mass kick abuse that is certain to occur.
-
- *** NOTE *** THIS IS IMPORTANT!!!
- I keep getting 'bug reports' about how ChatBox does NOT sort the names list
- correctly. I assure you, and I reassure you, and I stress, and I point out
- that I want to make it so VERY completely and utterly unmistakeably CLEAR
- that this is NOT a bug... I repeat, it is NOT A BUG. I don't CARE if one
- thinks it IS a bug because it 'appears' to become 'unsorted'. Here is the
- VERY BOTTOM LINE on ChatBox's sorting method, so READ IT, UNDERSTAND IT,
- and DON'T REPORT "BUGS" ABOUT IT!!!
-
- Here is how it works, and how it will ALWAYS work, if it BUGS you SOOOO
- much that it works this way, use GV, it's a VERY nice client, I hear.
-
- ChatBox SORTS the names upon YOUR entry into a channel, it also sorts NEW
- joins (when OTHER people join the channel). It DOES NOT take goofy lead
- characters into consideration (like "_", "[", etc.) It DOES NOT sort on
- nick changes, nor will it EVER (get that? EVER!!!)
-
- SO, in conclusion, IF the names APPEAR to be out of sort, THEY ARE, and it
- is probably due to a NICK CHANGE. OR, the person has a 'goofy' lead
- character in their nick.
-
- MY reasons (which are reasons enough): In EARLY development of ChatBox I
- was sitting quietly on #Amiga, minding my own business, when suddenly about
- 4 idiots joined the channel (1 idiot, with 4 crapbots, actually), they
- began NICK flooding. NEEDLESS TO SAY, this created a TREMENDOUS load on
- the CPU, and on ChatBox. I couldn't kick this person, I could do nothing
- but watch while everything on my machine slowed to a crawl. Why did the
- CPU get so loaded down? Well, let's see, could it have been the SORT
- ROUTINES??? Indeed, it was, hence, the nick change sorting WAS REMOVED,
- it IS NOT A BUG!
-
- Done. Sorry for the flame, but the very same people are 'reminding' me of
- this bug every time they run across me, or remember I have an E-Mail
- address. I guess I wasn't being clear enough. The above should pretty much
- set things straight.
-
- @endnode
-
- @node me "Command: /ME"
-
- COMMAND:
-
- /ME <action>
-
- PARAMETERS:
-
- <action> a personal action. i.e., if your nick is ChatBox and you entered:
- '/me washes behind his ears.'
- You'd see: (and so would all others on the channel)
- [ACTION] ChatBox washes behind his ears.
-
- FUNCTION:
-
- For creative expression... A toy. A way to talk in the third person...
-
- @endnode
-
- @node dcc_chat "DCC.CHAT.AS225"
-
- SPECIAL NOTES ON DCC.CHAT.AS225
-
- The DCC.CHAT executable included with ChatBox is NOT compatible with any
- other IRC Client. It was written with ChatBox, specifically, in mind.
-
- One important feature of IRC is the ability to secure a CHAT transaction
- with any party connected to IRC. In designing ChatBox it was decided that
- having a separate 'DCC CHAT' window that used some other GUI was not
- acceptable.
-
- DCC Chat uses ChatBox's GUI system. So, it will feel as though you are
- still using ChatBox IRC.
-
- The design goal was met. Simplicity was the goal.
-
- The advantage of having text send to a ChatBox window is clear. Why have
- a different type of GUI to have to get used to?
-
- Osma "Tau" Ahvenlampi should be given GREAT credit for his contribution of
- DCC.CHAT.AS225 to the Amiga IRC community. It is an extraordinary alternative.
-
- ChatBox's DCC.CHAT is based on his code. He offered the framework, and is
- given credit for designing the connection code (of which I know little about).
-
- However, if you prefer having a separate, and distinct DCC client, then by
- all means you should use Tau's original version of DCC.CHAT.AS225.
-
- @endnode
-
- @node msg "Command: /MSG"
-
- COMMAND:
-
- /MSG <nick>|<channel>[,<nick>|<channel>[,...]] <message>
-
- PARAMETERS:
-
- <nick>|<channel>|[<,><.>] are the recipient(s) of <message>
-
- FUNCTION:
-
- To send a message to a user or channel.
-
- NOTE: If an '=' is placed before the <nick>, then ChatBox sends the text to
- the appropriate DCC Chat session. i.e.: /msg =SkyGuy <message> would
- send <message> to SkyGuy over a DCC Chat connection (see section on
- "DCC.CHAT.AS225" in ChatBox.guide for more information). Also, if a ','
- is placed in the <nick> position, then the last person to send you a
- message is replied to. If a '.' is placed there, then the last person
- you sent a message to is sent the current message.
-
- @endnode
-
- @node mode "Command: /MODE"
-
- COMMAND:
-
- /MODE [<nick>|<channel>] {[+/-]<modes>} [<limit>] [<user>] [<ban mask>]
-
- PARAMETERS:
-
- <nick> Personal <nick> for user mode changes (i,o,w, etc)
- <channel> for channel modes, or o,b,v, etc.
- [+/-] + sets a flag ON, - sets it OFF
- <modes> mode characters (i.e. i,o,b,v,t,n,s,p,l, etc.)
- <limit> for mode +l (limit users), an ASCII number setting the limit of
- users on <channel>
- <user> for modes: o,b,v
- <ban mask> ban address with wildcards for +/-b mode
-
- FUNCTION:
-
- To change personal user modes, or channel modes. Or to op/voice,
- deop/unvoice other users on a channel where you have ops.
-
- NOTES:
-
- See the IRC-RFC for a full description of the modes, and their usage.
-
- @endnode
-
- @node invite "Command: /INVITE"
-
- COMMAND:
-
- /INVITE <nick> [<channel>]
-
- PARAMETERS:
-
- <nick> The user to invite
- <channel> the channel to invite them to. You do not have to be on <channel>
- to invite a user there. If <channel> is not specified, then the
- current channel is assumed.
-
- FUNCTION:
-
- To send an invitation to another user to indicate you'd like them to join
- <channel>
-
- @endnode
-
- @node info "Command: /INFO"
-
- COMMAND:
-
- /INFO [<server>]
-
- PARAMETERS:
-
- <server> server to query information from, if not specified then current
- server joined is assumed.
-
- FUNCTION:
-
- To obtain further information on <server>.
-
- NOTES:
-
- See the IRC-RFC for more info on this command.
-
- @endnode
-
- @node away "Command: /AWAY"
-
- COMMAND:
-
- /AWAY [<comment>]
-
- PARAMETERS:
-
- <comment> message to appear when you are marked away. If not specified then
- the 'away' tag will be removed.
-
- FUNCTION:
-
- To notify others that you are away from keyboard (AFK) or not watching, etc.
-
- @endnode
-
- @node admin "Command: /ADMIN"
-
- COMMAND:
-
- /ADMIN [<server>]
-
- PARAMETERS:
-
- <server> server to query information about it's administrat[ion]/[or]
-
- FUNCTION:
-
- To obtain more information on about a server's adminitration
-
- @endnode
-
- @node alias "Command: /ALIAS"
-
- COMMAND:
-
- /ALIAS [<alias> [<command> [<parameters>]]]
-
- PARAMETERS:
-
- <alias> the name to give this alias
- <command> the actual ChatBox command you'd like executed
- <parameters> the parameters appropriate for <command>
-
- If none of the parameters are specified, then all current aliases are
- listed.
-
- FUNCTION:
-
- To supply shortcut aliases to a ChatBox IRC session.
-
- EXAMPLES:
-
- Example 1: /ALIAS bye quit I'm OUTTA here!
- Example 2: /ALIAS test msg $C Useless Alias being tested.
- Example 3: /ALIAS umode mode $N
- Example 4: /ALIAS chop add +c *!*$1 $0
- Example 5: /ALIAS chg stat * $0 $1
-
- For Example 1, if '/bye' was typed it would be the same as typing:
- /QUIT I'm OUTTA here!
- For Example 2, if you were currently on #amiga, and typed '/test' it would be
- the same as entering:
- '/msg #amiga Useless Alias being tested'
- #amiga is substituted for $C
- For Example 3, if your nick were 'ChatBox', and you typed '/umode +i', it would
- be the same as entering:
- '/mode ChatBox +i' ChatBox is substituted for $N
- For Example 4, if the following was entered:
- '/chop SASCMan jweb@*.phx.primenet.com'
- this would be the 'real' command:
- '/add +c *!*jweb@*.phx.primenet.com SASCMan'
- For Example 5, if the following were entered:
- '/chg SASCMan +ckb'
- the actual command issued would be:
- '/stat * SASCMan +ckb'
-
- $0-$9 are parsed as follows:
-
- $0 $1 $2 $3 $4 $9
- /cmdname arg0 arg1 arg2 arg3 arg4 ... arg9
-
- NOTES:
-
- $N - Substitution variable for current nickname
- $C - Substitution variable for current channel
- $0-$9 - Substitution variables for arguments in command entered
- [] - Substitute the rest of line. This should always be specifed
- if an alias has any parameters. If $0-$9 are used, then the
- rest of line is all arguments after the highest '$' token
- used. i.e.: if $3 was the highest used, then '[]' consists
- of all arguments from $4 to the last argument.
-
- An Alias file is automatically loaded at startup if it exists as
- "S:ircrc.als". If the file does not exist as such, you can use
- "/LOAD alias.filename".
-
- SEE ALSO:
-
- "Format for Alias file (ircrc.als)" (in ChatBox.guide)
- "/LOAD"
-
- @endnode
-
- @node version "Command: /VERSION"
-
- COMMAND:
-
- /VERSION [<server>]
-
- PARAMETERS:
-
- <server> server to query version information from
-
- FUNCTION:
-
- To obtain version info on <server>
-
- @endnode
-
- @node voice "Command: /VOICE"
-
- COMMAND:
-
- /VOICE [<channel>] <user> [<user> [<user>]]
- /UNVOICE [<channel>] <user> [<user> [<user>]]
-
- PARAMETERS:
-
- <channel> Channel to send /VOICE or /UNVOICE change to
- <user> user to give/remove +v (VOICE) status to.
-
- FUNCTION:
-
- To give/remove voice status to/from <user>'s. Allows/disallows users on a
- moderated channel (/mode +m) to speak. Users without +v (voice) cannot
- send text to the channel, if +m is set.
-
- @endnode
-
- @node connect "Command: /CONNECT"
-
- COMMAND:
-
- /CONNECT <target server> [<port> [<remote server>]]
-
- PARAMETERS:
-
- <target server> server to CONNECT to
- <port> port on <target server> to use
- <remote server> server to CONNECT to <target server>
-
- FUNCTION:
-
- To (re)establish a connection between servers. If <remote server> is
- specified, then an attempt is made to connect it to <target server>.
-
- NOTES:
-
- See IRC-RFC for more information on CONNECT. It is a restricted command,
- availble only to IRC operators.
-
- @endnode
-
- @node ctcp "Command: /CTCP"
-
- COMMAND:
-
- /CTCP <nick>|<channel> <type> [<parameters>]
-
- PARAMETERS:
-
- <nick>|<channel> recipient of the CTCP msg
- <type> type of CTCP (i.e. PING, VERSION, CLIENTINFO, PID, etc.)
- <parameters> parameters specific to <type>
-
- FUNCTION:
-
- To send query type msgs to <nick>|<channel>. Responses usually provide more
- info, or access to functions available via <nick>.
-
- @endnode
-
- @node op "Commands: /OP, /DEOP"
-
- COMMANDS:
-
- /OP [<channel>] <user> [<user> [<user>]]
- /DEOP [<channel>] <user> [<user> [<user>]]
-
- PARAMETERS:
-
- <channel> if specified, then the mode change is sent to <channel>, otherwise
- current channel is assumed
- <user> user to give/remove channel operator status to/from
-
- FUNCTION:
-
- Gives/removes user +/-o (ops/deop) on <channel>.
- Same as /mode <channel> +/-o <user>.
-
- @endnode
-
- @node ban "Commands: /BAN, /UNBAN"
-
- COMMAND:
-
- /BAN [<channel>] <user> [<user> [<user>]]
- /UNBAN [<channel>] <user> [<user> [<user>]]
-
- PARAMETERS:
-
- <channel> if specified, then the mode change is sent to <channel>, otherwise
- current channel is assumed
- <user> user to set/remove ban on/from
-
- FUNCTION:
-
- Sets/removes user +/-b (ban) on <channel>.
- Same as /mode <channel> +/-b <user>.
-
- NOTES:
-
- ChatBox maintains an internal banlist, if a 'mode #channel +b' is requested
- (a banlist request). To view the internal banlist:
-
- /ban $list
-
- To remove a ban from the list:
-
- /ban $rem #
-
- Where the '#' is not the pound sign, but the number of the ban you'd like
- to remove.
-
- See also: /FRIENDS ON for information on a special function of /ban and
- /unban
-
- @endnode
-
- @node help "Command: /HELP"
-
- COMMAND:
-
- /HELP [<command>] [FULL]
-
- PARAMETERS:
-
- <command> command to get /HELP on, if not specified, then all commands are
- listed.
-
- FUNCTION
-
- To provide template help on <command>. If FULL is specified, then the full
- help text will be displayed from cb.help, if the .help file is in the
- current directory.
-
- @endnode
-
- @node exec "Command: /EXEC"
-
- COMMAND:
-
- /EXEC <arexxscript>
-
- PARAMETERS:
-
- <arexxscript> an ARexx script/macro to invoke.
-
- FUNCTION
-
- To start an ARexx script.
- See the section on "ChatBox's ARexx Port" (in ChatBox.guide
-
- @endnode
-
- @node query "Command: /QUERY"
-
- COMMAND:
-
- /QUERY [<nick>|<channel>]
-
- PARAMETERS:
-
- <nick>|<channel> Recipient of the query. Causes all undirected input to be
- sent to <nick> or <channel>. If not specified, then the
- /QUERY is cleared for that window.
-
- FUNCTION:
-
- To allow a private/public conversation with <nick>/<channel> respectively
- without having to type /msg <nick>|<channel> each time.
-
- NOTE: If an '=' is placed before <nick>, then the query will be on the
- specified DCC Chat session specified by <nick>. See the section on
- "DCC.CHAT.AS225" for more information.
-
- @endnode
-
- @node newwin "Command: /NEWWIN"
-
- COMMAND:
-
- /NEWWIN
-
- PARAMETERS:
-
- None.
-
- FUNCTION:
-
- To open a new ChatBox channel window, without joining a channel. To use as
- a query/msg/crap window, for example.
-
- @endnode
-
- @node msgwin "Command: /MSGWIN"
-
- COMMAND:
-
- /MSGWIN
-
- PARAMETERS:
-
- None.
-
- FUNCTION:
-
- To direct private messages/notifications to window in which /MSGWIN was
- executed.
-
- @endnode
-
- @node errwin "Command: /ERRWIN"
-
- COMMAND:
-
- /ERRWIN
-
- PARAMETERS:
-
- None.
-
- FUNCTION:
-
- To direct error messages/notifications to window in which /ERRWIN was
- executed.
-
- @endnode
-
- @node add "Command: /ADD"
-
- COMMAND:
-
- /ADD <flags> <address> [<nick>]
-
- PARAMETERS:
-
- <flags> flags to set/unset (+/-) or ALL (see NOTES below)
- <address> address of the 'friend', wildcards are permitted. (standard IRC
- address format)
- <nick> if specified allows easier access to the /FRIENDS list
-
- FUNCTION:
-
- To 'add' a friend to the '/FRIENDS' list. Giving them access to certain
- ChatBox features in the friends architecture.
-
- NOTES:
-
- Flags and there uses:
-
- c - CHOPS, or channel operator status on /FRIENDS list. With this
- flag set on a friend, they will be auto-opped when they join a
- channel with /FRIENDS ON
- k - KICK, or KICK status. With this flag set on a friend they can
- use ChatBox's kick to remove a user from the current channel (bot
- like function)
- b - BAN, or ban status. With this flag set on a friend they can use
- ChatBox's smart ban facilities (see notes on bans below)
- o - OPS, or op status, with this flag set this user can give OPs to
- other users that are on the friends list. But will not allow
- OP'ing non-friends (good for when no ops are live, and more ops
- are needed. for example, when the chatbox session is started with
- no ops in channel, and no one is paying attention except for a
- user who has +o on his friend status.)
- a - ADD, or add status. With this flag set this user can /ADD more
- friends to the ChatBox list (remotely)
- r - REMOVE, or remove status. With this flag set for a friend, they
- can remove a user from the ChatBox friends list (remotely)
- l - LIST, or list status. Allows a friend with this flag set to list
- out the current friends list (this requires MEGA bandwidth, and
- usually results in FLOOD kills when friends lists are large)
- s - STAT, with this flag set a user can query ChatBox for info on a
- friend (to modify)
-
- FRIENDS COMMANDS:
-
- %chop - no parameters
- %kick <nick> <comment> - same as /kick, except no channel
- is specified
- %ban <nick>|<ban mask> - same as /ban
- %op <nick> - same as /op
- %add <flags> <address> <nick> - same as /add
- %remove <*>|<address> <*>|<nick> - same as /remove
- %list - no parameters
- %stat <*>|<address> <*>|<nick> <flags> - same as /stat
-
- EXAMPLE:
-
- /ADD +ckbo *!jweb@*primenet.com SASCMan
- The above adds SASCMan (jweb@primenet.com) to the friends list (this is not
- saved to disk) with flags of +ckbo
-
- /ADD ALL *!ding@*.silly.world.com SillyMan
- The above adds SillyMan to the friends list with ALL flags set
-
- SEE ALSO:
-
- /FRIENDS, /STAT, /REM, /FREE
-
- @endnode
-
- @node rem "Command: /REM"
-
- COMMAND:
-
- /REM <*>|<address> <*>|<nick>
-
- PARAMETERS:
-
- <address> address specification of friend to remove
- <nick> irc name of friend to remove.
- <*> place holder. If address is not specified, a '*' should be used
- as a place holder. (note, do not edit ARexx scripts to conform
- to this, as it will most certainly change as soon as I devise a
- more intuitive way of handling this)
-
- FUNCTION:
-
- Removes a friend from the current, in memory, friends list. Does not remove
- it from the friends file
-
- EXAMPLE:
-
- /REM #?!jweb@#?.phx.primenet.com - removes address (friend) from current
- list in memory
- /REM * SASCMan - removes SASCMan from the current list
-
- @endnode
-
- @node stat "Command: /STAT"
-
- COMMAND:
-
- /STAT <*>|<address> [<nick>] [<flags>]
-
- PARAMETERS:
-
- <address> address of friend to get info on or change status of
- <nick> nick of friend, if <address> is not used (with '*' as a place holder)
- <flags> new flags to set/unset for friend specified.
- <*) a place holder for <address> in case <nick> is used to find the friend.
- IF no parameters are given, then the current friends list will be output to
- the window.
-
- FUNCTION:
-
- To list/change/query info/status of a friend.
-
- EXAMPLE:
-
- /STAT * SASCMan - Shows current status info on
- SASCMan
- /STAT #?!root@#?.slip.uiuc.edu - Lists current status info on
- specified address
- /STAT #?!silly@#?.corny.edu * +c-k - Sets status to +c, -k for address
- specified
- /STAT * SASCMan +ck-b-o - Sets status +c, +k, -b, -o for
- SASCMan
- /STAT - Lists out current Friends list.
-
- @endnode
-
- @node friends "Command: /FRIENDS"
-
- COMMAND:
-
- /FRIENDS <ON/OFF/WHO>
-
- PARAMETERS:
-
- <ON/OFF/WHO> to activate or deactivate the friends list for the window in
- which ON/OFF was specified
-
- FUNCTION:
-
- To make a friends list active or non-active.
-
- NOTES:
-
- If 'WHO' is specified, the friends list is left OFF, but the WHO list
- is loaded so that smart banning can be used.
-
- When a friends list is turned 'ON' a /WHO #channel is done to grab the
- address of all users currently on the channel, so there may be a slight
- delay and then an "End of WHO" message. With /FRIENDS ON, a special
- ChatBox feature is enabled (regardless of whether the list actually
- has any 'friends' in it or not). /BAN becomes 'smart'. For example:
-
- A user is DorkMan (~dork@slip34.ding.dong.com).
- And '/ban DorkMan' is entered... ChatBox will set the ban as follows:
- /mode #channel +b *!*dork@*.ding.dong.com
-
- SEE ALSO:
-
- /ADD, /REM, /STAT, /FREE,
- "Format for FRIENDS files" (in ChatBox.guide)
-
- @endnode
-
- @node free "Command: /FREE"
-
- COMMAND:
-
- /FREE ALIAS|FRIENDS
-
- PARAMETERS:
-
- ALIAS the keyword ALIAS when used (ie: /free ALIAS) free's the alias list
- from memory
- FRIENDS the keyword FRIENDS when used (ie: /free FRIENDS) free's the friends
- list from memory
-
- FUNCTION:
-
- To free up memory resources by eliminating /ALIAS and /FRIENDS lists.
-
- @endnode
-
- @node log "Command: /LOG"
-
- COMMAND:
-
- /LOG [<file>] [<channel>] [CLOSE|OPEN]
-
- PARAMETERS:
-
- <file> file to create to keep logs (if not specified, <channel> name
- is used as file name)
- <channel> channel to creat log file for (if not specified, current
- channel is assumed)
- [CLOSE|OPEN] Keyword to OPEN or CLOSE the file for <channel>
-
- FUNCTION:
-
- To create a log file for <channel> or the current channel.
-
- @endnode
-
- @node format_friends "Example /FRIENDS file"
-
- The format for a /FRIENDS file is VERY simple. All lines beginning with a
- command starter are executed by ChatBox's interpreter. An example file:
-
- --------------------> cut here <----------------------
-
- Comment line
- # or another way for a comment line
- ! or another
- /add +ckbo #?!silly@#?.willy.wong.edu DingDong
- /add +c #?!jweb@#?.phx.primenet.com SASCMan
- /add ALL #?!root@#?.this.that.com Lost
-
- #another comment
-
- /add +ck #?!joe@#?.blo.com JoeBlo
-
- ------------------------->end<------------------------
-
- Any questions?
-
- Save this file anywhere, and load it with:
-
- /FRIENDS PATH:<friends.file>
-
- Don't forget to activate the friends list with:
-
- /FRIENDS ON
-
- @endnode
-
- @node format_alias "Example /ALIAS file"
-
- The format for an /ALIAS file is VERY simple. All lines beginning with a
- command starter are executed by ChatBox's interpreter. An example file:
-
- --------------------> cut here <----------------------
-
- Comment line
- # or another way for a comment line
- ! or another
- /alias banlist mode $0 +b
- /alias chop add +c *!*$1 $0
- /alias tops add ALL *!*$1 $0
- /alias umode mode $N []
- /alias pme describe $0 []
-
- #another comment
- /alias vers ctcp $0 VERSION
- /alias finger ctcp $0 FINGER
- /alias send dcc send $0 $1
- /alias move dcc move $0 $1
- /alias chat dcc chat $0
- /alias dmsg =$0 []
- /alias dclose dcc $0 CLOSE
-
- ------------------------->end<------------------------
-
- Ez nuff?
-
- NOTE: Only /ALIAS commands will be parsed.
-
- @endnode
-
- @node load "Command: /LOAD"
-
- COMMAND:
-
- /LOAD <cmdfile>
-
- PARAMETERS:
-
- <cmdfile> a file consisting of ChatBox command lines (i.e.: alias file,
- 'friends' file)
-
- FUNCTION:
-
- To load and execute a ChatBox command file.
-
- NOTES:
-
- Not all commands can be issued in a command file. Currently, only
- the following commands are available:
-
- /ADD
- /ALIAS
- /AWAY
- /BAN /UNBAN
- /FRIENDS
- /JOIN
- /MODE
- /NICK
- /OP /DEOP
- /VOICE /UNVOICE
- /NEWWIN
-
- @endnode
-
- @node dcc "Command: /DCC"
-
- COMMAND:
-
- /DCC <type> <nick> [<parameters>]
-
- PARAMETERS:
-
- <type> CHAT/SEND/MOVE, currently none of these are built in and
- require DCC.send and DCC.chat to be installed in DCC:
- <nick> recipient of DCC
- <parameters> filename for SEND/MOVE
-
- FUNCTION:
-
- To establish a direct socket connection with <nick> for a more secure
- transaction.
-
- SPECIAL NOTES:
-
- DCC Chat has now been 'personalized' for ChatBox. The version included with
- ChatBox (DCC.CHAT.AS225) will only work with ChatBox. Do not try to use it
- with other IRC clients, it is futile. ;)
-
- ChatBox's DCC system behaves in a fashion similar to IrcII. When you wish
- to 'send' text to a connected party you prepend his/her nickname with '='
- to tell ChatBox that this message is intended for the recipient via a DCC
- Chat connection.
-
- The recommended method is to open a clear window with /NEWWIN, and use
- "/QUERY =nick" to carry on the transaction. However, you may use ChatBox's
- /ALIAS system, or more simply use "/MSG =nick <message>".
-
- Example /ALIAS for using DCC:
-
- /ALIAS DMSG MSG =$0 []
-
- With the above alias you can type: /dmsg SkyD00d Hey!
- And the text will be sent to =SkyD00d.
-
- To close a DCC Chat session: /DCC <nick> CLOSE
-
- @endnode
-