irclink.py
The irclink module handles interaction with an IRC
server on the protocol level. The implementation is based on
the RFCs 2811 and 2812 and the ircd 2.10.3 source.
This module is only intended for building clients, it misses
functionality needed for servers.
Interface
Separate functions are defined for all types of messages from
the server the irclink knows. This is the easiest
way to obtain information embedded in plain text messages
from the server.
Symbols
These symbols are mostly used for communicating states in
messages generated by the irclink class. «Magic
characters» are never returned.
User modes
-
away
-
User is away.
-
invisible
-
User is invisible.
-
local_oper
-
User is local operator.
-
op
-
User is channel operator
-
oper
-
User is IRC operator.
-
restricted
-
Restricted client.
-
serv_note
-
User receives server notices.
-
voice
-
User has voice.
-
wallops
-
User receives WALLOPS.
-
UMODES
-
A dictionary mapping the mode characters in for instance
RPL_UMODEIS messages to the symbols defined in the module.
Channel modes
-
anonymous
-
invite
-
moderated
-
nomsg
-
quiet
-
private
-
public
-
server_reop
-
topic
-
key
-
limit
-
secret
-
CHANNELMODES
-
Dictionary mapping between mode characters used in
MODE-messages and symbold.
-
CHANNELMODES_wParams
-
List of modes that take parameters.
Ident
-
ident
-
Client has ident.
-
other_ident
-
Client has ident of type «other».
-
no_ident
-
Client has no ident.
-
i_line
-
Restricted line.
-
I_line
-
Normal line.
-
ident_types
-
Dictionary mapping between single character tokens in front
of user names in prefixes and the items above.
Other
-
protocol
-
A dictionary mapping between msghandler-objects and
command-strings.
-
LostConnectionError
-
Raised when having lost connection with server.
Classes
-
msghandler
-
msghandler-objects are wrapper-objects for parse-functions,
they contain a given message's name.
-
re_tokens
-
re_tokens-objects are initialized with a regular expression
and return the text matching the groups in the regular
expression when called with a string as an argument.
-
irclink
-
Objects to wrap traffic to and from an IRC-server. Parses
messages from it and contains methods to create and send
well formed messages to the server.
-
throttler
-
throttler-objects serve to slow down the traffic from a
program to the IRC-server to keep the traffic below the
threshold for the client being disconnected. ircd
implements more mechanisms for avoiding flooding than
implemented in throttler, so even if the chance of a
program being disconnected is low, it is there.
Functions
-
splitparams
-
Splits the parameters in an IRC-message into a list.
-
prefixsplit
-
Splits the prefix in an IRC-message into a list.
-
Too many individual parse functions
-
Most different things the server can throw at a client has
individual parse functions. Hopefully it shouldn't be
necessaru to touch these.
Last updated 2000-07-05.