|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.objexcel.irc.Sender
Sender provides some useful methods for performing common IRC functions There is one sender for the IRC connection and one for each dcc connection. It implements client side flood protection (i.e. you can send lots of messages through it and it slows down the throughput so it shouldn't cause the client to get kicked.) Turned off (not needed) on dcc connections. There are a bunch of methods to make it easier sending standard commands. If that is not your cup of tea, use the sendMsg method with a raw version of your command
Inner Class Summary | |
static interface |
Sender.OutputStreamLocator
an interface that allows us to get the output stream regardless whether it is the irc controller or a dcc connection |
static interface |
Sender.SentDataListener
an interface so anyone can listen in on what sender is sending |
Field Summary | |
static int |
BANMASK_DOMAIN
|
static int |
BANMASK_HOST
|
static int |
BANMASK_MIRC_0
*!user@host.domain |
static int |
BANMASK_MIRC_1
*!*user@host.domain |
static int |
BANMASK_MIRC_2
*!*@host.domain |
static int |
BANMASK_MIRC_3
*!*user@*.domain |
static int |
BANMASK_MIRC_4
*!*@*.domain |
static int |
BANMASK_MIRC_5
nick!user@host.domain |
static int |
BANMASK_MIRC_6
nick!*user@host.domain |
static int |
BANMASK_MIRC_7
nick!*@host.domain |
static int |
BANMASK_MIRC_8
nick!*user@*.domain |
static int |
BANMASK_MIRC_9
nick!*@*.domain |
static int |
BANMASK_NICK
the masks to apply to addresses. |
static int |
BANMASK_SIMUSER
|
static int |
BANMASK_USER
|
static char |
CTCP_CHAR
the character that marks a ctcp command |
Constructor Summary | |
Sender(IRCController controller,
Sender.OutputStreamLocator output)
OutputStreamLocator's job is to provide a stream to send things too (be it DCC or a connection with an IRC server) |
Method Summary | |
void |
addSentDataListener(Sender.SentDataListener listener)
currently only handles one listener |
void |
doMaskedBanWithOptionalTime(java.lang.String nick,
java.lang.String room,
int _mask,
int banTimeInSeconds)
this message bans the given nick. |
static java.lang.String |
getMaskedAddress(java.lang.String nick,
java.lang.String user,
java.lang.String host,
int mask)
returns a masked address. |
void |
joinServer(java.lang.String ircServer,
int ircServerPort,
boolean showWarningIfConnected,
java.lang.String proxyServer,
int proxyServerPort,
java.io.File serverMessages,
java.lang.String localHost)
joins the given server but only after gracefully terminating the currenct connections |
void |
partRoom(java.lang.String sRoom)
leave the room |
void |
removeSentDataListener(Sender.SentDataListener listener)
currently only handles one listener |
void |
sendAway(java.lang.String sMsg)
set user away. |
void |
sendBan(boolean isBanned,
java.lang.String sRoom,
java.lang.String address)
send a ban. |
void |
sendCtcp(boolean asNotice,
java.lang.String victim,
java.lang.String sMsg)
send some ctcp command |
void |
sendCtcpAction(boolean asNotice,
java.lang.String victim,
java.lang.String msg)
send a ctcp action (aka the bit after a /me) |
void |
sendCtcpClientInfoReply(boolean asNotice,
java.lang.String victim,
java.lang.String supportedCommands)
send a ctcp client info reply |
void |
sendCtcpErrMsg(boolean asNotice,
java.lang.String victim,
java.lang.String msg)
send a ctcp error message (aka huh?) |
void |
sendCtcpFingerReply(boolean asNotice,
java.lang.String victim,
long lastUserSendTime)
send a ctcp finger reply (actually sends an idle time reply) |
void |
sendCtcpPingReply(boolean asNotice,
java.lang.String victim,
java.lang.String data)
send a ctcp ping reply |
void |
sendCtcpSourceReply(boolean asNotice,
java.lang.String victim)
send a ctcp client source reply |
void |
sendCtcpTimeReply(boolean asNotice,
java.lang.String victim)
send a ctcp time reply (aka on the 3 pip the time will be...) |
void |
sendCtcpUserInfoReply(boolean asNotice,
java.lang.String victim,
java.lang.String msg)
send a ctcp user info reply |
void |
sendCtcpVersionReply(boolean asNotice,
java.lang.String victim,
java.lang.String version)
send a ctcp version reply |
void |
sendGetInfo(java.lang.String victim)
send a whois and a who |
void |
sendJoin(java.lang.String sRoom)
send a join |
void |
sendJoinWithPassword(java.lang.String sRoom,
java.lang.String password)
send a join and key/password |
void |
sendList(java.lang.String room,
int min,
int max)
request a list of rooms from the server. |
void |
sendLogin(java.lang.String nick,
java.lang.String password,
java.lang.String sServer,
java.lang.String name)
send the password, nick and user commands |
void |
sendMsg(java.lang.String s)
|
void |
sendNick(java.lang.String nick)
send a nick change |
void |
sendNotice(java.lang.String sRoom,
java.lang.String sMsg)
send a notice |
void |
sendPart(java.lang.String sRoom)
send a part |
void |
sendPong()
sent in reply to any pings |
void |
sendPongWithForward(java.lang.String OptForwardTo)
sent in reply to any pings, forward to another server |
void |
sendPrivMsg(java.lang.String sTarget,
java.lang.String sMsg)
send a private message to target |
void |
sendQuit()
send quit with the default message |
void |
sendQuit(java.lang.String Msg)
send a quit |
void |
setIsDCC(boolean isDCC)
true if this is a dcc connection. |
Methods inherited from class java.lang.Object |
equals,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
public static final char CTCP_CHAR
public static int BANMASK_NICK
public static int BANMASK_USER
public static int BANMASK_SIMUSER
public static int BANMASK_HOST
public static int BANMASK_DOMAIN
public static int BANMASK_MIRC_0
public static int BANMASK_MIRC_1
public static int BANMASK_MIRC_2
public static int BANMASK_MIRC_3
public static int BANMASK_MIRC_4
public static int BANMASK_MIRC_5
public static int BANMASK_MIRC_6
public static int BANMASK_MIRC_7
public static int BANMASK_MIRC_8
public static int BANMASK_MIRC_9
Constructor Detail |
public Sender(IRCController controller, Sender.OutputStreamLocator output)
Method Detail |
public void setIsDCC(boolean isDCC)
public void addSentDataListener(Sender.SentDataListener listener)
public void removeSentDataListener(Sender.SentDataListener listener)
public void partRoom(java.lang.String sRoom)
public void sendPrivMsg(java.lang.String sTarget, java.lang.String sMsg)
public void sendAway(java.lang.String sMsg)
public void sendNotice(java.lang.String sRoom, java.lang.String sMsg)
public void sendPart(java.lang.String sRoom)
public void sendQuit(java.lang.String Msg)
public void sendQuit()
public void sendJoin(java.lang.String sRoom)
public void sendJoinWithPassword(java.lang.String sRoom, java.lang.String password)
public void sendBan(boolean isBanned, java.lang.String sRoom, java.lang.String address)
getMaskedAddress
public void sendNick(java.lang.String nick)
public void sendLogin(java.lang.String nick, java.lang.String password, java.lang.String sServer, java.lang.String name)
public void sendCtcp(boolean asNotice, java.lang.String victim, java.lang.String sMsg)
public void sendGetInfo(java.lang.String victim)
public void sendCtcpAction(boolean asNotice, java.lang.String victim, java.lang.String msg)
public void sendCtcpErrMsg(boolean asNotice, java.lang.String victim, java.lang.String msg)
public void sendCtcpTimeReply(boolean asNotice, java.lang.String victim)
public void sendCtcpUserInfoReply(boolean asNotice, java.lang.String victim, java.lang.String msg)
public void sendCtcpClientInfoReply(boolean asNotice, java.lang.String victim, java.lang.String supportedCommands)
public void sendCtcpFingerReply(boolean asNotice, java.lang.String victim, long lastUserSendTime)
is
- the System.currentTimeMillis() when the user last sent somethingpublic void sendCtcpVersionReply(boolean asNotice, java.lang.String victim, java.lang.String version)
public void sendCtcpSourceReply(boolean asNotice, java.lang.String victim)
public void sendCtcpPingReply(boolean asNotice, java.lang.String victim, java.lang.String data)
public void sendList(java.lang.String room, int min, int max)
public void sendPong()
public void sendPongWithForward(java.lang.String OptForwardTo)
public void joinServer(java.lang.String ircServer, int ircServerPort, boolean showWarningIfConnected, java.lang.String proxyServer, int proxyServerPort, java.io.File serverMessages, java.lang.String localHost)
public void doMaskedBanWithOptionalTime(java.lang.String nick, java.lang.String room, int _mask, int banTimeInSeconds)
banTimeInSeconds
- has a time in seconds when the ban is lifted. <1 if permanentpublic static java.lang.String getMaskedAddress(java.lang.String nick, java.lang.String user, java.lang.String host, int mask)
public void sendMsg(java.lang.String s)
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |