Add support for MONITOR
This commit is contained in:
parent
dd67e0789e
commit
e283d9c7ab
4 changed files with 82 additions and 2 deletions
26
state.js
26
state.js
|
@ -293,7 +293,7 @@ export const State = {
|
|||
return;
|
||||
}
|
||||
|
||||
let target, channel, topic;
|
||||
let target, channel, topic, targets;
|
||||
switch (msg.command) {
|
||||
case irc.RPL_MYINFO:
|
||||
// TODO: parse available modes
|
||||
|
@ -437,6 +437,30 @@ export const State = {
|
|||
|
||||
return { members };
|
||||
});
|
||||
case irc.RPL_MONONLINE:
|
||||
targets = msg.params[1].split(",");
|
||||
|
||||
for (let target of targets) {
|
||||
let prefix = irc.parsePrefix(target);
|
||||
let update = updateBuffer(prefix.name, (buf) => {
|
||||
return { offline: false };
|
||||
});
|
||||
state = { ...state, ...update };
|
||||
}
|
||||
|
||||
return state;
|
||||
case irc.RPL_MONOFFLINE:
|
||||
targets = msg.params[1].split(",");
|
||||
|
||||
for (let target of targets) {
|
||||
let prefix = irc.parsePrefix(target);
|
||||
let update = updateBuffer(prefix.name, (buf) => {
|
||||
return { offline: true };
|
||||
});
|
||||
state = { ...state, ...update };
|
||||
}
|
||||
|
||||
return state;
|
||||
}
|
||||
},
|
||||
addMessage(state, msg, bufID) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue