NAME
irc - Create IRC connection and interface.
SYNOPSIS
package require TTccll package require iirrcc ??00..44?? ::::iirrcc::::ccoonnffiigg key value ::::iirrcc::::ccoonnnneeccttiioonn ::::iirrcc::::ccoonnnneeccttiioonnss ::::iirrcc::::ddeessttrrooyy net net rreeggiisstteerreevveenntt event script net ggeetteevveenntt event script net eevveenntteexxiissttss event script net ccoonnnneecctt hostname ?port? net ccoonnnneecctteedd net ssoocckknnaammee net ppeeeerrnnaammee net uusseerr username localhostname localdomainname userinfo net nniicckk nick net ppiinngg target net sseerrvveerrppiinngg net jjooiinn channel ?key? net ppaarrtt channel ?message? net qquuiitt ?message? net pprriivvmmssgg target message net nnoottiiccee target message net ccttccpp target message net kkiicckk channel target ?message? net mmooddee target args net ttooppiicc channel message net iinnvviittee channel target net sseenndd text wwhhoo ?aaddddrreessss? aaccttiioonn ttaarrggeett aaddddiittiioonnaall hheeaaddeerr mmssggDESCRIPTION
This package provides low-level commands to deal with the IRC protocol
(Internet Relay Chat) for immediate and interactive multi-cast communi-
cation. ::::iirrcc::::ccoonnffiigg key valueSets configuration key to value. Currently, the only configura-
tion key defined is the boolean flag ddeebbuugg which, when turned on, makes iirrcc print more information about what is going on. ::::iirrcc::::ccoonnnneeccttiioonn The command creates a new object to deal with an IRC connection.Creating this IRC object does not automatically create the net-
work connection. It returns a new irc namespace command which
can be used to interact with the new IRC connection. NOTE: the
old form of the connection command, which took a hostname andport as arguments, is deprecated. Use ccoonnnneecctt instead to spec-
ify this information. ::::iirrcc::::ccoonnnneeccttiioonnss Returns a list of all the current connections that were created with ccoonnnneeccttiioonn ::::iirrcc::::ddeessttrrooyy netDeletes a connection and its associated namespace and informa-
tion.PPeerr-ccoonnnneeccttiioonn CCoommmmaannddss
In the following list of available connection methods net represents a connection command as returned by ::::iirrcc::::ccoonnnneeccttiioonn. net rreeggiisstteerreevveenntt event script Registers a callback handler for the specific event. Eventsavailable are those described in RFC 1459 http://www.rfc-edi-
tor.org/rfc/rfc1459.txt. In addition, there are several other events defined. ddeeffaauullttccmmdd adds a command that is called if noother callback is present. EEOOFF is called if the connection sig-
nals an End of File condition. The events ddeeffaauullttccmmdd, ddeeffaauullttnnuu-
mmeerriicc, and ddeeffaauulltteevveenntt are required. script is executed in theconnection namespace, which can take advantage of several com-
mands (see CCaallllbbaacckk CCoommmmaannddss below) to aid in the parsing of data. net ggeetteevveenntt event scriptReturns the current handler for the event if one exists. Other-
wise an empty string is returned. net eevveenntteexxiissttss event script Returns a boolean value indicating the existence of the event handler. net ccoonnnneecctt hostname ?port? This causes the socket to be established. ::::iirrcc::::ccoonnnneeccttiioonn created the namespace and the commands to be used, but did notactually open the socket. This is done here. NOTE: the older
form of which were specified with 'connection'. That form is deprecated. net ccoonnnneecctteeddReturns a boolean value indicating if this connection is con-
nected to a server. net ssoocckknnaammeeReturns a 3 element list consisting of the ip address, the host-
name, and the port of the local end of the connection, if cur-
rently connected. net ppeeeerrnnaammeeReturns a 3 element list consisting of the ip address, the host-
name, and the port of the remote end of the connection, if cur-
rently connected. net uusseerr username localhostname localdomainname userinfo Sends USER command to server. username is the username you want to appear. localhostname is the host portion of your hostname, localdomainname is your domain name, and userinfo is a shortdescription of who you are. The 2nd and 3rd arguments are nor-
mally ignored by the IRC server. net nniicckk nickNICK command. nick is the nickname you wish to use for the par-
ticular connection. net ppiinngg target Send a CTCP PING to target. net sseerrvveerrppiinngg PING the server. net jjooiinn channel ?key? channel is the IRC channel to join. IRC channels typicallybegin with a hashmark ("#") or ampersand ("&").
net ppaarrtt channel ?message? Makes the client leave channel. Some networks may support the optional argument message net qquuiitt ?message? Instructs the IRC server to close the current connection. The package will use a generic default if no message was specified. net pprriivvmmssgg target message Sends message to target, which can be either a channel, or another user, in which case their nick is used. net nnoottiiccee target message Sends a nnoottiiccee with message message to target, which can be either a channel, or another user, in which case their nick is used. net ccttccpp target message Sends a CTCP of type message to target net kkiicckk channel target ?message? Kicks the user target from the channel channel with a message. The latter can be left out. net mmooddee target argsSets the mode args on the target target. target may be a chan-
nel, a channel user, or yourself. net ttooppiicc channel message Sets the topic on channel to message specifying an empty string will remove the topic. net iinnvviittee channel target Invites target to join the channel channel net sseenndd text Sends text to the IRC server. CCaallllbbaacckk CCoommmmaannddss These commands can be used within callbacks wwhhoo ?aaddddrreessss? Returns the nick of the user who performed a command. The optional keyword aaddddrreessss causes the command to return the user in the format "username@address". aaccttiioonn Returns the action performed, such as KICK, PRIVMSG, MODE,etc... Normally not useful, as callbacks are bound to a partic-
ular event. ttaarrggeett Returns the target of a particular command, such as the channel or user to whom a PRIVMSG is sent. aaddddiittiioonnaall Returns a list of any additional arguments after the target. hheeaaddeerr Returns the entire event header (everything up to the :) as a proper list. mmssgg Returns the message portion of the command (the part after the :).SEE ALSO
rfc 1459 KKEEYYWWOORRDDSSchat, irc
irc 0.4 irc(n)