What is CR-Avatar?
A tiny open protocol that lets IRC networks show one emoji next to a nickname.
CR-AVATAR lets a registered person pick one emoji (from a fixed list of 184) to stand next to their name. It is text only: no pictures, no URLs, no uploads. On ConferenceRooms you see it in the Web Chat, and in IRC programs that support the protocol, such as Textce on Mac, iPhone and Windows. Everywhere else the emoji still shows as one line in /whois.
Four parts, four jobs
person types /avatar fox
|
[ IRC services ] keep the emoji with the registered account -> services authors
| server link: a services tag (SVSTAG)
[ ircd ] knows each user's avatar and tells clients about it -> ircd authors
| 005 token + capability + AVATAR messages (and the /whois line, always)
[ IRC client ] shows the emoji in the user list, in chat, in /whois -> client authors- Services are the source of truth. Clients never talk to services about avatars.
- Only the ircd can put new lines on a client's connection. So detection, the capability and the
AVATARmessages are ircd work, and need no change in services that already send the avatar tag. - Clients that do not know CR-AVATAR notice nothing, except the
/whoisline.
What goes over the wire
| What | Form |
|---|---|
| Support | 005 token CR-AVATAR=1 (the number is the emoji list version); -CR-AVATAR if services leave. |
| Bulk and live | Capability conferencerooms.org/avatar; then :nick!user@host AVATAR <emoji> [<name>] after the channel's NAMES reply, after a JOIN, and on every change; AVATAR * means none. |
| Fallback | /whois shows <nick> has an avatar set: <emoji> :<name>: (numeric 320). |
Clients behind a bouncer
A bouncer only passes what it understands. ZNC passes the CR-AVATAR=1 token but does not offer the capability, so a client behind ZNC falls back to polite, quiet /whois lookups (about one every three seconds, silent, only when the network supports CR-AVATAR). That is slower but works.
Where next
ircd-hybrid module (download, install, tests), services authors, client authors, and the full specification.
More in I'm a developer
- CR-Avatar for ircd-hybridOne page: get the open-source module, install it on ircd-hybrid 8.2.47, check it works, and run its 74 automated tests.
- CR-Avatar for services authorsWhat your services must store, send and avoid so ircds can announce avatars.
- CR-Avatar for IRC client authorsA short checklist for showing avatars without flooding anyone.
- I'm a developerBuild IRC software that works with ConferenceRooms features: protocols, modules and test tools.