From 3a325d3914e75bd079ad8df31ca4f39197519386 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Wed, 12 Feb 2020 00:17:28 -0500 Subject: Handle RPL_AWAY --- handle.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'handle.c') diff --git a/handle.c b/handle.c index 4e498e9..0db362b 100644 --- a/handle.c +++ b/handle.c @@ -508,6 +508,22 @@ static void handleReplyEndOfWhois(struct Message *msg) { replies.whois--; } +static void handleReplyAway(struct Message *msg) { + require(msg, false, 3); + // Might be part of a WHOIS response. + size_t id; + if (completeColor(Network, msg->params[1]) != Default) { + id = Network; + } else { + id = idFor(msg->params[1]); + } + uiFormat( + id, Warm, tagTime(msg), + "\3%02d%s\3\tis away: %s", + completeColor(id, msg->params[1]), msg->params[1], msg->params[2] + ); +} + static bool isAction(struct Message *msg) { if (strncmp(msg->params[1], "\1ACTION ", 8)) return false; msg->params[1] += 8; @@ -633,6 +649,7 @@ static const struct Handler { { "001", handleReplyWelcome }, { "005", handleReplyISupport }, { "276", handleReplyWhoisGeneric }, + { "301", handleReplyAway }, { "307", handleReplyWhoisGeneric }, { "311", handleReplyWhoisUser }, { "312", handleReplyWhoisServer }, -- cgit 1.4.0