    #
    # Socket event
    #
    LINK_ESTABLISHING=-1
    LINK_ESTABLISHED=-2
    LINK_FAILED=-3
    LINK_CLOSING=-4
    LINK_CLOSED=-5

    #
    # Low level Irc event
    #
    RECV_MESSAGE=10000
    RECV_MESSAGE_BROKEN=10000
    RECV_MESSAGE_KILL=10001
    RECV_MESSAGE_PING=10002
    RECV_MESSAGE_PONG=10003
    RECV_MESSAGE_ERROR=10004

    #
    # RFC1459 messages
    #
    RECV_RPL_INIT=1 # Not listed in RFC1459, but many servers say
    RECV_RPL_TRACELINK=200
    RECV_RPL_TRACECONNECTING=201
    RECV_RPL_TRACEHANDSHAKE=202
    RECV_RPL_TRACEUNKNOWN=203
    RECV_RPL_TRACEOPERATOR=204
    RECV_RPL_TRACEUSER=205
    RECV_RPL_TRACESERVER=206
    RECV_RPL_TRACENEWTYPE=208
    RECV_RPL_STATSLINKINF=211
    RECV_RPL_STATSCOMMANDS=212
    RECV_RPL_STATSCLINE=213
    RECV_RPL_STATSNLINE=214
    RECV_RPL_STATSILINE=215
    RECV_RPL_STATSKLINE=216
    RECV_RPL_STATSYLINE=218
    RECV_RPL_ENDOFSTATS=219
    RECV_RPL_UMODEIS=221
    RECV_RPL_STATSLLINE=241
    RECV_RPL_STATSUPTIME=242
    RECV_RPL_STATSOLINE=243
    RECV_RPL_STATSHLINE=244
    RECV_RPL_LUSERCLIENT=251
    RECV_RPL_LUSEROP=252
    RECV_RPL_LUSERUNKNOWN=253
    RECV_RPL_LUSERCHANNELS=254
    RECV_RPL_LUSERME=255
    RECV_RPL_ADMINME=256
    RECV_RPL_ADMINLOC1=257
    RECV_RPL_ADMINLOC2=258
    RECV_RPL_ADMINEMAIL=259
    RECV_RPL_TRACELOG=261
    RECV_RPL_NONE=300
    RECV_RPL_AWAY=301
    RECV_RPL_USERHOST=302
    RECV_RPL_ISON=303
    RECV_RPL_UNAWAY=305
    RECV_RPL_NOWAWAY=306
    RECV_RPL_WHOISUSER=311
    RECV_RPL_WHOISSERVER=312
    RECV_RPL_WHOISOPERATOR=313
    RECV_RPL_WHOWASUSER=314
    RECV_RPL_ENDOFWHO=315
    RECV_RPL_WHOISIDLE=317
    RECV_RPL_ENDOFWHOIS=318
    RECV_RPL_WHOISCHANNELS=319
    RECV_RPL_LISTSTART=321
    RECV_RPL_LIST=322
    RECV_RPL_LISTEND=323
    RECV_RPL_CHANNELMODEIS=324
    RECV_RPL_NOTOPIC=331
    RECV_RPL_TOPIC=332
    RECV_RPL_INVITING=341
    RECV_RPL_SUMMONING=342
    RECV_RPL_VERSION=351
    RECV_RPL_WHOREPLY=352
    RECV_RPL_NAMREPLY=353
    RECV_RPL_LINKS=364
    RECV_RPL_ENDOFLINKS=365
    RECV_RPL_ENDOFNAME=366
    RECV_RPL_BANLIST=367
    RECV_RPL_ENDOFBANLIST=368
    RECV_RPL_ENDOFWHOWAS=369
    RECV_RPL_INFO=371
    RECV_RPL_MOTD=372
    RECV_RPL_ENDOFINFO=374
    RECV_RPL_MOTDSTART=375
    RECV_RPL_ENDOFMOTD=376
    RECV_RPL_YOUREOPER=381
    RECV_RPL_REHASHING=382
    RECV_RPL_TIME=391
    RECV_RPL_USERS=393
    RECV_RPL_ENDOFUSERS=394
    RECV_RPL_NOUSERS=395
    RECV_ERR_NOSUCHNICK=401
    RECV_ERR_NOSUCHSERVE=402
    RECV_ERR_NOSUCHCHANNEL=403
    RECV_ERR_CANNOTSENDTOCHAN=404
    RECV_ERR_TOOMANYCHANNELS=405
    RECV_ERR_WASNOSUCHNICK=406
    RECV_ERR_TOOMANYTARGETS=407
    RECV_ERR_NOORIGIN=409
    RECV_ERR_NORECIPIENT=411
    RECV_ERR_NOTEXTTOSEND=412
    RECV_ERR_NOTOPLEVE=413
    RECV_ERR_WILDTOPLEVEL=414
    RECV_ERR_UNKNOWNCOMMAND=421
    RECV_ERR_NOMOTD=422
    RECV_ERR_NOADMININFO=423
    RECV_ERR_FILEERROR=424
    RECV_ERR_NONICKNAMEGIVEN=431
    RECV_ERR_ERRONEUSNICKNAME=432
    RECV_ERR_NICKNAMEINUSE=433
    RECV_ERR_NICKCOLLISION=436
    RECV_ERR_USERNOTINCHANNEL=441
    RECV_ERR_NOTONCHANNE=442
    RECV_ERR_USERONCHANNEL=443
    RECV_ERR_NOLOGIN=444
    RECV_ERR_SUMMONDISABLED=445
    RECV_ERR_USERSDISABLED=446
    RECV_ERR_NOTREGISTERED=451
    RECV_ERR_NEEDMOREPARAM=461
    RECV_ERR_ALREADYREGISTRE=462
    RECV_ERR_NOPERMFORHOST=463
    RECV_ERR_PASSWDMISMATCH=464
    RECV_ERR_YOUREBANNEDCREEP=465
    RECV_ERR_KEYSET=467
    RECV_ERR_CHANNELISFULL=471
    RECV_ERR_UNKNOWNMODE=472
    RECV_ERR_INVITEONLYCHAN=473
    RECV_ERR_BANNEDFROMCHAN=474
    RECV_ERR_BADCHANNELKEY=475
    RECV_ERR_NOPRIVILEGES=481
    RECV_ERR_CHANOPRIVSNEEDED=482
    RECV_ERR_CANTKILLSERVER=483
    RECV_ERR_NOOPERHOST=491
    RECV_ERR_UMODEUNKNOWNFLAG=501
    RECV_ERR_USERSDONTMATCH=502

    RECV_CMND=1000

    #
    # RFC1459 Commands (include optional)
    #
    CMND_UNKNOWN=0
    CMND_PASSWD=1
    CMND_NICK=2
    CMND_USER=3
    CMND_SERVER=4
    CMND_OPER=5
    CMND_QUIT=6
    CMND_SQUIT=7
    CMND_JOIN=8
    CMND_PART=9
    CMND_MODE=10
    CMND_TOPIC=11
    CMND_NAMES=12
    CMND_LIST=13
    CMND_INVITE=14
    CMND_KICK=15
    CMND_VERSION=16
    CMND_STATAS=17
    CMND_LINK=18
    CMND_TIME=19
    CMND_CONNECT=20
    CMND_TRACE=21
    CMND_ADMIN=22
    CMND_INFO=23
    CMND_PRIVMSG=24
    CMND_NOTICE=25
    CMND_WHO=26
    CMND_WHOIS=27
    CMND_WHOWAS=28
    CMND_AWAY=29
    CMND_REHASH=30
    CMND_RESTART=31
    CMND_SUMMON=32
    CMND_USERS=33
    CMND_WALLOPS=34
    CMND_USERHOST=35
    CMND_ISON=36

    #
    # CTCP Messages
    #
    CMND_CTCP_QUERY=100
    CMND_CTCP_ANSWER=200
    CMND_CTCP_UNKNOWN=0
    CMND_CTCP_PING=1
    CMND_CTCP_ECHO=2
    CMND_CTCP_TIME=3
    CMND_CTCP_VERSION=4
    CMND_CTCP_CLIENTINFO=5
    CMND_CTCP_USERINFO=6
    CMND_CTCP_ACTION=7

    RECV_CMND_UNKNOWN=RECV_CMND+CMND_UNKNOWN
    RECV_CMND_PASSWD=RECV_CMND+CMND_PASSWD
    RECV_CMND_NICK=RECV_CMND+CMND_NICK
    RECV_CMND_USER=RECV_CMND+CMND_USER
    RECV_CMND_SERVER=RECV_CMND+CMND_SERVER
    RECV_CMND_OPER=RECV_CMND+CMND_OPER
    RECV_CMND_QUIT=RECV_CMND+CMND_QUIT
    RECV_CMND_SQUIT=RECV_CMND+CMND_SQUIT
    RECV_CMND_JOIN=RECV_CMND+CMND_JOIN
    RECV_CMND_PART=RECV_CMND+CMND_PART
    RECV_CMND_MODE=RECV_CMND+CMND_MODE
    RECV_CMND_TOPIC=RECV_CMND+CMND_TOPIC
    RECV_CMND_NAMES=RECV_CMND+CMND_NAMES
    RECV_CMND_LIST=RECV_CMND+CMND_LIST
    RECV_CMND_INVITE=RECV_CMND+CMND_INVITE
    RECV_CMND_KICK=RECV_CMND+CMND_KICK
    RECV_CMND_VERSION=RECV_CMND+CMND_VERSION
    RECV_CMND_STATAS=RECV_CMND+CMND_STATAS
    RECV_CMND_LINK=RECV_CMND+CMND_LINK
    RECV_CMND_TIME=RECV_CMND+CMND_TIME
    RECV_CMND_CONNECT=RECV_CMND+CMND_CONNECT
    RECV_CMND_TRACE=RECV_CMND+CMND_TRACE
    RECV_CMND_ADMIN=RECV_CMND+CMND_ADMIN
    RECV_CMND_INFO=RECV_CMND+CMND_INFO
    RECV_CMND_PRIVMSG=RECV_CMND+CMND_PRIVMSG
    RECV_CMND_NOTICE=RECV_CMND+CMND_NOTICE
    RECV_CMND_WHO=RECV_CMND+CMND_WHO
    RECV_CMND_WHOIS=RECV_CMND+CMND_WHOIS
    RECV_CMND_WHOWAS=RECV_CMND+CMND_WHOWAS
    RECV_CMND_AWAY=RECV_CMND+CMND_AWAY
    RECV_CMND_REHASH=RECV_CMND+CMND_REHASH
    RECV_CMND_RESTART=RECV_CMND+CMND_RESTART
    RECV_CMND_SUMMON=RECV_CMND+CMND_SUMMON
    RECV_CMND_USERS=RECV_CMND+CMND_USERS
    RECV_CMND_WALLOPS=RECV_CMND+CMND_WALLOPS
    RECV_CMND_USERHOST=RECV_CMND+CMND_USERHOST
    RECV_CMND_ISON=RECV_CMND+CMND_ISON

    RECV_CMND_CTCP_QUERY=RECV_CMND+CMND_CTCP_QUERY
    RECV_CMND_CTCP_QUERY_UNKNOWN=RECV_CMND_CTCP_QUERY+CMND_CTCP_UNKNOWN
    RECV_CMND_CTCP_QUERY_PING=RECV_CMND_CTCP_QUERY+CMND_CTCP_PING
    RECV_CMND_CTCP_QUERY_ECHO=RECV_CMND_CTCP_QUERY+CMND_CTCP_ECHO
    RECV_CMND_CTCP_QUERY_TIME=RECV_CMND_CTCP_QUERY+CMND_CTCP_TIME
    RECV_CMND_CTCP_QUERY_VERSION=RECV_CMND_CTCP_QUERY+CMND_CTCP_VERSION
    RECV_CMND_CTCP_QUERY_CLIENTINFO=RECV_CMND_CTCP_QUERY+CMND_CTCP_CLIENTINFO
    RECV_CMND_CTCP_QUERY_USERINFO=RECV_CMND_CTCP_QUERY+CMND_CTCP_USERINFO
    RECV_CMND_CTCP_QUERY_ACTION=RECV_CMND_CTCP_QUERY+CMND_CTCP_ACTION

    RECV_CMND_CTCP_ANSWER=RECV_CMND+CMND_CTCP_ANSWER
    RECV_CMND_CTCP_ANSWER_UNKNOWN=RECV_CMND_CTCP_ANSWER+CMND_CTCP_UNKNOWN
    RECV_CMND_CTCP_ANSWER_PING=RECV_CMND_CTCP_ANSWER+CMND_CTCP_PING
    RECV_CMND_CTCP_ANSWER_ECHO=RECV_CMND_CTCP_ANSWER+CMND_CTCP_ECHO
    RECV_CMND_CTCP_ANSWER_TIME=RECV_CMND_CTCP_ANSWER+CMND_CTCP_TIME
    RECV_CMND_CTCP_ANSWER_VERSION=RECV_CMND_CTCP_ANSWER+CMND_CTCP_VERSION
    RECV_CMND_CTCP_ANSWER_CLIENTINFO=RECV_CMND_CTCP_ANSWER+CMND_CTCP_CLIENTINFO
    RECV_CMND_CTCP_ANSWER_USERINFO=RECV_CMND_CTCP_ANSWER+CMND_CTCP_USERINFO
    RECV_CMND_CTCP_ANSWER_ACTION=RECV_CMND_CTCP_ANSWER+CMND_CTCP_ACTION
