revolution-irc icon indicating copy to clipboard operation
revolution-irc copied to clipboard

Alert when someone is online

Open Hauffmann opened this issue 5 years ago • 5 comments

Hauffmann avatar Dec 13 '19 05:12 Hauffmann

Do you have an example of another IRC client that does this? I ask because the IRC protocol does not include a method for being notified when someone is online; rather, one would have to infer this from join/part messages.

Added to that, ZNC by default suppresses joins & quits while you yourself are disconnected, and it all becomes a nightmare mess.

kurahaupo avatar Dec 13 '19 14:12 kurahaupo

@kurahaupo This is commonly done using the IRCv3 MONITOR extension, which lets a client specify a list of nicks to be notified when they go online/offline/etc. It's supported by Charybdis, InspIRCd and a quite a few clients. HexChat for example calls this feature a "Friends List".

jlu5 avatar Dec 15 '19 03:12 jlu5

@kurahaupo In addition to @jlu5's comment, there's also the ISON message [RFC 1459] [RFC 2812]. Clients configured to watch for when nicks come online typically have done so by periodically sending an ISON message with those nicks.

However, ISON and that typical implementation is extremely inefficient, and it would be a good idea to use MONITOR on servers that support it (which can be gleaned from RPL_ISUPPORT), and fall back to the ISON method on servers that don't.

[EDIT]

In addition to ISON, clients like KVIrc and possibly mIRC also leverage USERHOST in order to check for users that match a specific hostmask, as ISON only checks nicknames per spec. Furthermore, both mIRC and KVIrc can leverage the WATCH extension for their notify commands if the server supports it (WATCH is present in RPL_ISUPPORT).

ZeroKnight avatar Dec 20 '19 22:12 ZeroKnight

@kurahaupo, In addition to both @jlu5's & @ZeroKnight's response there is also the /notify command... Now I myself have not used it in the revolution-irc client but here is a quick rundown.

"You can add/remove nicknames from the notify list by using the /notify command.

/notify [-shrln] <on|off|nickname> [network|address] [note]

You can turn notify on and off by typing /notify on or off respectively.

The -sh switches can be used to show or hide the notify list window respectively

The -r switch removes the specified nickname from your notify list.

The -l switch displays your notify list.

The -n switch indicates that the network or server address has been specified.

The note is optional and allows you to specify a little note for each nickname."

theworm4002 avatar Mar 16 '20 10:03 theworm4002

@theworm4002 That's a feature of the mIRC client (and KVIrc, but a bit different), not the IRC protocol. Under the hood, notify leverages the ISON and possibly the USERHOST commands and WATCH extension to do its work; refer to my previous comment and edit for details.

ZeroKnight avatar Mar 22 '20 09:03 ZeroKnight