RICA Reference Manual

Last update: Aug.29.2001.

Overview

RICA consists of one basis module, five basis classes, two sub classes (which could be useful samples) and one method. The objects communicate by the "event message".

Six basis module and classes are,
Rica::Event, Rica::Message, Rica::Connector, Rica::ConnectionManager, Rica::MessageDistributor and Rica::MessageProcessor.

The first -Rica::Event- module contains definitions of irc events and commands, and has methods those match each event. The event definitions in this module are used for the communications between the classes.

The second one -Rica::Message class- works as a capcellized irc message which contains sender's irc-server name, the timestamp when this message is issued, sender's nick, and all other informations concerning the irc message. This class includes a message parser, too.
When your client processes irc messages, it will access these messages through this class's instance.

Another three classes -Rica::Connector, Rica::ConnectionManager and Rica::MessageDistributor-, are assistants of Rica::MessageProcessor class. Each class supports connection to irc server, management of connection and message distribution.
You SHOULD NOT access to these assistant classes's instance directly, but SHOULD access through Rica::MessageProcessor class, because Rica::MessageProcessor class wraps or delegates them.

The last one -Rica::MessageProcessor class-, is the core of this library. She provides many methods to access irc messages and servers for your client processes. If you want to add your original functions, you would better create class by inheriting Rica::MesssageProcessor class, and adding your own code.

Figures below show the message flow block diagram and these classes' relationship diagram.


RICA's classes and messages flow
RICA's classes and messages flow


RICA's classes relationship
RICA's classes relationship


Rica::Event Module

#
# Socket event
#
LINK_ESTABLISHING
LINK_ESTABLISHED
LINK_FAILED
LINK_CLOSING
LINK_CLOSED

#
# RFC1459 Commands (include optional)
#
CMND_UNKNOWN
CMND_PASS
CMND_NICK
CMND_USER
CMND_SERVER
CMND_OPER
CMND_QUIT
CMND_SQUIT
CMND_JOIN
CMND_PART
CMND_MODE
CMND_TOPIC
CMND_NAMES
CMND_LIST
CMND_INVITE
CMND_KICK
CMND_VERSION
CMND_STATAS
CMND_LINK
CMND_TIME
CMND_CONNECT
CMND_TRACE
CMND_ADMIN
CMND_INFO
CMND_PRIVMSG
CMND_NOTICE
CMND_WHO
CMND_WHOIS
CMND_WHOWAS

CMND_KILL
CMND_PING
CMND_PONG
CMND_ERROR

CMND_AWAY
CMND_REHASH
CMND_RESTART
CMND_SUMMON
CMND_USERS
CMND_WALLOPS
CMND_USERHOST
CMND_ISON

#
# CTCP Messages
#
CMND_CTCP_QUERY
CMND_CTCP_ANSWER
CMND_CTCP_UNKNOWN
CMND_CTCP_PING
CMND_CTCP_ECHO
CMND_CTCP_TIME
CMND_CTCP_VERSION
CMND_CTCP_CLIENTINFO
CMND_CTCP_USERINFO
CMND_CTCP_ACTION

#
# Low level Irc event
#
RECV_MESSAGE
RECV_MESSAGE_BROKEN
RECV_MESSAGE_KILL
RECV_MESSAGE_PING
RECV_MESSAGE_PONG
RECV_MESSAGE_ERROR

#
# RFC1459 messages
#
RECV_RPL_INIT
RECV_RPL_TRACELINK
RECV_RPL_TRACECONNECTING
RECV_RPL_TRACEHANDSHAKE
RECV_RPL_TRACEUNKNOWN
RECV_RPL_TRACEOPERATOR
RECV_RPL_TRACEUSER
RECV_RPL_TRACESERVER
RECV_RPL_TRACENEWTYPE
RECV_RPL_STATSLINKINF
RECV_RPL_STATSCOMMANDS
RECV_RPL_STATSCLINE
RECV_RPL_STATSNLINE
RECV_RPL_STATSILINE
RECV_RPL_STATSKLINE
RECV_RPL_STATSYLINE
RECV_RPL_ENDOFSTATS
RECV_RPL_UMODEIS
RECV_RPL_STATSLLINE
RECV_RPL_STATSUPTIME
RECV_RPL_STATSOLINE
RECV_RPL_STATSHLINE
RECV_RPL_LUSERCLIENT
RECV_RPL_LUSEROP
RECV_RPL_LUSERUNKNOWN
RECV_RPL_LUSERCHANNELS
RECV_RPL_LUSERME
RECV_RPL_ADMINME
RECV_RPL_ADMINLOC1
RECV_RPL_ADMINLOC2
RECV_RPL_ADMINEMAIL
RECV_RPL_TRACELOG
RECV_RPL_NONE
RECV_RPL_AWAY
RECV_RPL_USERHOST
RECV_RPL_ISON
RECV_RPL_UNAWAY
RECV_RPL_NOWAWAY
RECV_RPL_WHOISUSER
RECV_RPL_WHOISSERVER
RECV_RPL_WHOISOPERATOR
RECV_RPL_WHOWASUSER
RECV_RPL_ENDOFWHO
RECV_RPL_WHOISIDLE
RECV_RPL_ENDOFWHOIS
RECV_RPL_WHOISCHANNELS
RECV_RPL_LISTSTART
RECV_RPL_LIST
RECV_RPL_LISTEND
RECV_RPL_CHANNELMODEIS
RECV_RPL_NOTOPIC
RECV_RPL_TOPIC
RECV_RPL_INVITING
RECV_RPL_SUMMONING
RECV_RPL_VERSION
RECV_RPL_WHOREPLY
RECV_RPL_NAMREPLY
RECV_RPL_LINKS
RECV_RPL_ENDOFLINKS
RECV_RPL_ENDOFNAME
RECV_RPL_BANLIST
RECV_RPL_ENDOFBANLIST
RECV_RPL_ENDOFWHOWAS
RECV_RPL_INFO
RECV_RPL_MOTD
RECV_RPL_ENDOFINFO
RECV_RPL_MOTDSTART
RECV_RPL_ENDOFMOTD
RECV_RPL_YOUREOPER
RECV_RPL_REHASHING
RECV_RPL_TIME
RECV_RPL_USERS
RECV_RPL_ENDOFUSERS
RECV_RPL_NOUSERS

RECV_ERR_NOSUCHNICK
RECV_ERR_NOSUCHSERVE
RECV_ERR_NOSUCHCHANNEL
RECV_ERR_CANNOTSENDTOCHAN
RECV_ERR_TOOMANYCHANNELS
RECV_ERR_WASNOSUCHNICK
RECV_ERR_TOOMANYTARGETS
RECV_ERR_NOORIGIN
RECV_ERR_NORECIPIENT
RECV_ERR_NOTEXTTOSEND
RECV_ERR_NOTOPLEVE
RECV_ERR_WILDTOPLEVEL
RECV_ERR_UNKNOWNCOMMAND
RECV_ERR_NOMOTD
RECV_ERR_NOADMININFO
RECV_ERR_FILEERROR
RECV_ERR_NONICKNAMEGIVEN
RECV_ERR_ERRONEUSNICKNAME
RECV_ERR_NICKNAMEINUSE
RECV_ERR_NICKCOLLISION
RECV_ERR_USERNOTINCHANNEL
RECV_ERR_NOTONCHANNE
RECV_ERR_USERONCHANNEL
RECV_ERR_NOLOGIN
RECV_ERR_SUMMONDISABLED
RECV_ERR_USERSDISABLED
RECV_ERR_NOTREGISTERED
RECV_ERR_NEEDMOREPARAM
RECV_ERR_ALREADYREGISTRE
RECV_ERR_NOPERMFORHOST
RECV_ERR_PASSWDMISMATCH
RECV_ERR_YOUREBANNEDCREEP
RECV_ERR_KEYSET
RECV_ERR_CHANNELISFULL
RECV_ERR_UNKNOWNMODE
RECV_ERR_INVITEONLYCHAN
RECV_ERR_BANNEDFROMCHAN
RECV_ERR_BADCHANNELKEY
RECV_ERR_NOPRIVILEGES
RECV_ERR_CHANOPRIVSNEEDED
RECV_ERR_CANTKILLSERVER
RECV_ERR_NOOPERHOST
RECV_ERR_UMODEUNKNOWNFLAG
RECV_ERR_USERSDONTMATCH

RECV_CMND

RECV_CMND_UNKNOWN
RECV_CMND_PASS
RECV_CMND_NICK
RECV_CMND_USER
RECV_CMND_SERVER
RECV_CMND_OPER
RECV_CMND_QUIT
RECV_CMND_SQUIT
RECV_CMND_JOIN
RECV_CMND_PART
RECV_CMND_MODE
RECV_CMND_TOPIC
RECV_CMND_NAMES
RECV_CMND_LIST
RECV_CMND_INVITE
RECV_CMND_KICK
RECV_CMND_VERSION
RECV_CMND_STATAS
RECV_CMND_LINK
RECV_CMND_TIME
RECV_CMND_CONNECT
RECV_CMND_TRACE
RECV_CMND_ADMIN
RECV_CMND_INFO
RECV_CMND_PRIVMSG
RECV_CMND_NOTICE
RECV_CMND_WHO
RECV_CMND_WHOIS
RECV_CMND_WHOWAS

RECV_CMND_KILL
RECV_CMND_PING
RECV_CMND_PONG
RECV_CMND_ERROR

RECV_CMND_AWAY
RECV_CMND_REHASH
RECV_CMND_RESTART
RECV_CMND_SUMMON
RECV_CMND_USERS
RECV_CMND_WALLOPS
RECV_CMND_USERHOST
RECV_CMND_ISON

RECV_CMND_CTCP_QUERY
RECV_CMND_CTCP_QUERY_UNKNOWN
RECV_CMND_CTCP_QUERY_PING
RECV_CMND_CTCP_QUERY_ECHO
RECV_CMND_CTCP_QUERY_TIME
RECV_CMND_CTCP_QUERY_VERSION
RECV_CMND_CTCP_QUERY_CLIENTINFO
RECV_CMND_CTCP_QUERY_USERINFO
RECV_CMND_CTCP_QUERY_ACTION

RECV_CMND_CTCP_ANSWER
RECV_CMND_CTCP_ANSWER_UNKNOWN
RECV_CMND_CTCP_ANSWER_PING
RECV_CMND_CTCP_ANSWER_ECHO
RECV_CMND_CTCP_ANSWER_TIME
RECV_CMND_CTCP_ANSWER_VERSION
RECV_CMND_CTCP_ANSWER_CLIENTINFO
RECV_CMND_CTCP_ANSWER_USERINFO
RECV_CMND_CTCP_ANSWER_ACTION

def dispatch(msg)
def default_action(msg)
def on_link(msg)
alias on_link_establishing on_link
alias on_link_established on_link
alias on_link_failed on_link
alias on_link_closed on_link
def on_recv(msg)
alias on_recv_message on_recv
alias on_recv_message_broken on_recv_message
alias on_recv_message_kill on_recv_message
alias on_recv_message_ping on_recv_message
alias on_recv_message_pong on_recv_message
alias on_recv_message_error on_recv_message
alias on_recv_message_notice on_recv_message
alias on_recv_rpl on_recv
alias on_recv_rpl_init on_recv_rpl
alias on_recv_rpl_tracelink on_recv_rpl
alias on_recv_rpl_traceconnecting on_recv_rpl
alias on_recv_rpl_tracehandshake on_recv_rpl
alias on_recv_rpl_traceunknown on_recv_rpl
alias on_recv_rpl_traceoperator on_recv_rpl
alias on_recv_rpl_traceuser on_recv_rpl
alias on_recv_rpl_traceserver on_recv_rpl
alias on_recv_rpl_tracenewtype on_recv_rpl
alias on_recv_rpl_statslinkinf on_recv_rpl
alias on_recv_rpl_statscommands on_recv_rpl
alias on_recv_rpl_statscline on_recv_rpl
alias on_recv_rpl_statsnline on_recv_rpl
alias on_recv_rpl_statsiline on_recv_rpl
alias on_recv_rpl_statskline on_recv_rpl
alias on_recv_rpl_statsyline on_recv_rpl
alias on_recv_rpl_endofstats on_recv_rpl
alias on_recv_rpl_umodeis on_recv_rpl
alias on_recv_rpl_statslline on_recv_rpl
alias on_recv_rpl_statsuptime on_recv_rpl
alias on_recv_rpl_statsoline on_recv_rpl
alias on_recv_rpl_statshline on_recv_rpl
alias on_recv_rpl_luserclient on_recv_rpl
alias on_recv_rpl_luserop on_recv_rpl
alias on_recv_rpl_luserunknown on_recv_rpl
alias on_recv_rpl_luserchannels on_recv_rpl
alias on_recv_rpl_luserme on_recv_rpl
alias on_recv_rpl_adminme on_recv_rpl
alias on_recv_rpl_adminloc1 on_recv_rpl
alias on_recv_rpl_adminloc2 on_recv_rpl
alias on_recv_rpl_adminemail on_recv_rpl
alias on_recv_rpl_tracelog on_recv_rpl
alias on_recv_rpl_none on_recv_rpl
alias on_recv_rpl_away on_recv_rpl
alias on_recv_rpl_userhost on_recv_rpl
alias on_recv_rpl_ison on_recv_rpl
alias on_recv_rpl_unaway on_recv_rpl
alias on_recv_rpl_nowaway on_recv_rpl
alias on_recv_rpl_whoisuser on_recv_rpl
alias on_recv_rpl_whoisserver on_recv_rpl
alias on_recv_rpl_whoisoperator on_recv_rpl
alias on_recv_rpl_whowasuser on_recv_rpl
alias on_recv_rpl_endofwho on_recv_rpl
alias on_recv_rpl_whoisidle on_recv_rpl
alias on_recv_rpl_endofwhois on_recv_rpl
alias on_recv_rpl_whoischannels on_recv_rpl
alias on_recv_rpl_liststart on_recv_rpl
alias on_recv_rpl_list on_recv_rpl
alias on_recv_rpl_listend on_recv_rpl
alias on_recv_rpl_channelmodeis on_recv_rpl
alias on_recv_rpl_notopic on_recv_rpl
alias on_recv_rpl_topic on_recv_rpl
alias on_recv_rpl_inviting on_recv_rpl
alias on_recv_rpl_summoning on_recv_rpl
alias on_recv_rpl_version on_recv_rpl
alias on_recv_rpl_whoreply on_recv_rpl
alias on_recv_rpl_namreply on_recv_rpl
alias on_recv_rpl_links on_recv_rpl
alias on_recv_rpl_endoflinks on_recv_rpl
alias on_recv_rpl_endofname on_recv_rpl
alias on_recv_rpl_banlist on_recv_rpl
alias on_recv_rpl_endofbanlist on_recv_rpl
alias on_recv_rpl_endofwhowas on_recv_rpl
alias on_recv_rpl_info on_recv_rpl
alias on_recv_rpl_motd on_recv_rpl
alias on_recv_rpl_endofinfo on_recv_rpl
alias on_recv_rpl_motdstart on_recv_rpl
alias on_recv_rpl_endofmotd on_recv_rpl
alias on_recv_rpl_youreoper on_recv_rpl
alias on_recv_rpl_rehashing on_recv_rpl
alias on_recv_rpl_time on_recv_rpl
alias on_recv_rpl_users on_recv_rpl
alias on_recv_rpl_endofusers on_recv_rpl
alias on_recv_rpl_nousers on_recv_rpl
alias on_recv_err on_recv
alias on_recv_err_nosuchnick on_recv_err
alias on_recv_err_nosuchserve on_recv_err
alias on_recv_err_nosuchchannel on_recv_err
alias on_recv_err_cannotsendtochan on_recv_err
alias on_recv_err_toomanychannels on_recv_err
alias on_recv_err_wasnosuchnick on_recv_err
alias on_recv_err_toomanytargets on_recv_err
alias on_recv_err_noorigin on_recv_err
alias on_recv_err_norecipient on_recv_err
alias on_recv_err_notexttosend on_recv_err
alias on_recv_err_notopleve on_recv_err
alias on_recv_err_wildtoplevel on_recv_err
alias on_recv_err_unknowncommand on_recv_err
alias on_recv_err_nomotd on_recv_err
alias on_recv_err_noadmininfo on_recv_err
alias on_recv_err_fileerror on_recv_err
alias on_recv_err_nonicknamegiven on_recv_err
alias on_recv_err_erroneusnickname on_recv_err
alias on_recv_err_nicknameinuse on_recv_err
alias on_recv_err_nickcollision on_recv_err
alias on_recv_err_usernotinchannel on_recv_err
alias on_recv_err_notonchanne on_recv_err
alias on_recv_err_useronchannel on_recv_err
alias on_recv_err_nologin on_recv_err
alias on_recv_err_summondisabled on_recv_err
alias on_recv_err_usersdisabled on_recv_err
alias on_recv_err_notregistered on_recv_err
alias on_recv_err_needmoreparam on_recv_err
alias on_recv_err_alreadyregistre on_recv_err
alias on_recv_err_nopermforhost on_recv_err
alias on_recv_err_passwdmismatch on_recv_err
alias on_recv_err_yourebannedcreep on_recv_err
alias on_recv_err_keyset on_recv_err
alias on_recv_err_channelisfull on_recv_err
alias on_recv_err_unknownmode on_recv_err
alias on_recv_err_inviteonlychan on_recv_err
alias on_recv_err_bannedfromchan on_recv_err
alias on_recv_err_badchannelkey on_recv_err
alias on_recv_err_noprivileges on_recv_err
alias on_recv_err_chanoprivsneeded on_recv_err
alias on_recv_err_cantkillserver on_recv_err
alias on_recv_err_nooperhost on_recv_err
alias on_recv_err_umodeunknownflag on_recv_err
alias on_recv_err_usersdontmatch on_recv_err
alias on_recv_cmnd on_recv
alias on_recv_cmnd_unknown on_recv_cmnd
alias on_recv_cmnd_pass on_recv_cmnd
alias on_recv_cmnd_nick on_recv_cmnd
alias on_recv_cmnd_user on_recv_cmnd
alias on_recv_cmnd_server on_recv_cmnd
alias on_recv_cmnd_oper on_recv_cmnd
alias on_recv_cmnd_quit on_recv_cmnd
alias on_recv_cmnd_squit on_recv_cmnd
alias on_recv_cmnd_join on_recv_cmnd
alias on_recv_cmnd_part on_recv_cmnd
alias on_recv_cmnd_mode on_recv_cmnd
alias on_recv_cmnd_topic on_recv_cmnd
alias on_recv_cmnd_names on_recv_cmnd
alias on_recv_cmnd_list on_recv_cmnd
alias on_recv_cmnd_invite on_recv_cmnd
alias on_recv_cmnd_kick on_recv_cmnd
alias on_recv_cmnd_version on_recv_cmnd
alias on_recv_cmnd_statas on_recv_cmnd
alias on_recv_cmnd_link on_recv_cmnd
alias on_recv_cmnd_time on_recv_cmnd
alias on_recv_cmnd_connect on_recv_cmnd
alias on_recv_cmnd_trace on_recv_cmnd
alias on_recv_cmnd_admin on_recv_cmnd
alias on_recv_cmnd_info on_recv_cmnd
alias on_recv_cmnd_privmsg on_recv_cmnd
alias on_recv_cmnd_notice on_recv_cmnd
alias on_recv_cmnd_who on_recv_cmnd
alias on_recv_cmnd_whois on_recv_cmnd
alias on_recv_cmnd_whowas on_recv_cmnd
alias on_recv_cmnd_kill on_recv_cmnd
alias on_recv_cmnd_ping on_recv_cmnd
alias on_recv_cmnd_pong on_recv_cmnd
alias on_recv_cmnd_error on_recv_cmnd
alias on_recv_cmnd_away on_recv_cmnd
alias on_recv_cmnd_rehash on_recv_cmnd
alias on_recv_cmnd_restart on_recv_cmnd
alias on_recv_cmnd_summon on_recv_cmnd
alias on_recv_cmnd_users on_recv_cmnd
alias on_recv_cmnd_wallops on_recv_cmnd
alias on_recv_cmnd_userhost on_recv_cmnd
alias on_recv_cmnd_ison on_recv_cmnd
alias on_recv_cmnd_ctcp on_recv_cmnd
alias on_recv_cmnd_ctcp_query on_recv_cmnd_ctcp
alias on_recv_cmnd_ctcp_query_unknown on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_ping on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_echo on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_time on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_version on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_clientinfo on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_userinfo on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_action on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_query_dcc on_recv_cmnd_ctcp_query
alias on_recv_cmnd_ctcp_answer on_recv_cmnd_ctcp
alias on_recv_cmnd_ctcp_answer_unknown on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_ping on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_echo on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_time on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_version on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_clientinfo on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_userinfo on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_action on_recv_cmnd_ctcp_answer
alias on_recv_cmnd_ctcp_answer_dcc on_recv_cmnd_ctcp_answer

Rica::Message Class

attr_reader :timestamp
attr_reader :server
attr_reader :selfNick
attr_reader :from
attr_reader :fromNick
attr_reader :command
attr_reader :cmndstr
attr_reader :to
attr_reader :args
attr_reader :origin
def initialize(msg,*option)
def isCtcp?
def isCtcpQuery?
def isCtcpAnswer?
def isSelfMessage?
def isPriv?
def string(*format)
def parse(msg)

Rica::Connector Class

attr_reader :server
attr_reader :port
attr_reader :passwd
attr_reader :serveralias
attr_reader :user
attr_reader :realname
attr_accessor :nick
attr_reader :stat
attr_accessor :kcode
def initialize(serverinfo,userinfo,nick,kcode="jis")
def open
def close
def alive?
def write(msg,*option)
def read

Rica::ConnectionManager Class

attr_reader :connectors
def initialize
def update(event,timestamp,nick,server)
def open(serverinfo,userinfo,nick,kcode="jis")
def close(server,purge=false)
def reopen(server)
def closeAll(purge=false)
def eachConnector
def [](server)
def alive?(server)
def connections
def setNick(server,nick)
def write(server,msg,*option)
def writeAll(msg,*option)
def read

Rica::MessageDistributor Class

def initialize
def update(event,timestamp,nick,server)
def open(serverinfo,userinfo,nick,kcode="jis")
def reopen(server)
def close(server,purge=true)
def closeAll(purge=true)
def connections
def cmnd_pass(server,passwd)
def cmnd_nick(server,nickname)
def cmnd_user(server,username,realname)
def cmnd_server(server)
def cmnd_oper(server)
def cmnd_quit(server,*msg)
def cmnd_squit(server)
def cmnd_join(server,chnl,*key)
def cmnd_part(server,chnl,*msg)
def cmnd_mode(server,chnl,*arg)
def cmnd_topic(server,chnl,*arg)
def cmnd_names(server,*chnl)
def cmnd_list(server)
def cmnd_invite(server,chnl,nickname)
def cmnd_kick(server,chnl,nickname,*reason)
def cmnd_version(server)
def cmnd_statas(server)
def cmnd_link(server)
def cmnd_time(server)
def cmnd_connect(server)
def cmnd_trace(server)
def cmnd_admin(server)
def cmnd_info(server)
def cmnd_privmsg(server,to,msg)
def cmnd_notice(server,msg)
def cmnd_who(server,nickname)
def cmnd_whois(server,nickname)
def cmnd_whowas(server,nickname)
def cmnd_kill(server)
def cmnd_ping(server,arg)
def cmnd_pong(server,arg)
def cmnd_error(server)
def cmnd_away(server,*msg)
def cmnd_rehash(server)
def cmnd_restart(server)
def cmnd_summon(server)
def cmnd_users(server)
def cmnd_wallops(server)
def cmnd_userhost(server)
def cmnd_ison(server,nickname)
def ctcp_query(server,to,msg)
def ctcp_answer(server,to,msg)
def ctcp_query_ping(server,to)
def ctcp_query_echo(server,to,str)
def ctcp_query_time(server,to)
def ctcp_query_version(server,to)
def ctcp_query_clientinfo(server,to,*option)
def ctcp_query_userinfo(server,to)
def ctcp_answer_ping(server,to,arg)
def ctcp_answer_echo(server,to,arg)
def ctcp_answer_time(server,to)
def ctcp_answer_version(server,to,arg)
def ctcp_answer_clientinfo(server,to,msg)
def ctcp_answer_userinfo(server,to,msg)
def directcommand(server,msg)
def talkback(server,msg)
def login(server)
def setAway(server,msg)
def unsetAway(server)
def getTopic(server,chnl)
def setTopic(server,chnl,str)
def getMode(server,chnl)
def setMode(server,chnl,str)
def add_observer(observer)
def delete_observer(observer)
def delete_observers
def notify_observers(*arg)
def observer_thread(observer)

Rica::MessageProcessor Class

def initialize
def thread
def update(msg)

Rica::CtcpResponder Class

attr_accessor :userinfo
attr_accessor :version
def initialize
def on_recv_cmnd_ctcp_query_clientinfo(msg)
def on_recv_cmnd_ctcp_query_echo(msg)
def on_recv_cmnd_ctcp_query_ping(msg)
def on_recv_cmnd_ctcp_query_time(msg)
def on_recv_cmnd_ctcp_query_userinfo(msg)
def on_recv_cmnd_ctcp_query_version(msg)