~emersion/soju#12: 
CHATHISTORY extension support

Upcoming IRCv3 extension: https://github.com/ircv3/ircv3-specifications/pull/393

TODO

  • LATEST
  • BETWEEN
  • AROUND
  • * target
  • msgid criteria (depends on #72)

Done:

  • BEFORE
  • AFTER
Status
REPORTED
Submitter
~emersion
Assigned to
No-one
Submitted
8 months ago
Updated
3 months ago
Labels
downstream enhancement

~taiite 8 months ago

It could be used by downstream clients to request history from the bouncer and by the bouncer to request history from the upstream servers (eiither when relaying clients' requests or when the bouncer has had downtime).

Though implementing CHATHISTORY is a lot of work, and it requires support for message-tags, server-time and batch. For the moment, no known software has support for that command.

For the moment, I suggest only implementing the chathistory batch type, already defined by IRCv3: https://ircv3.net/specs/extensions/batch/chathistory-3.3. It would allow clients to properly display the history when connecting. With server-time, I think you can have pretty good UX already.

~emersion 6 months ago

The chathistory batch type is now implemented. Keeping this issue open for CHATHISTORY command support.

~taiite 6 months ago

Though implementing CHATHISTORY is a lot of work, and it requires support for message-tags, server-time and batch. For the moment, no known software has support for that command.

Oragono supports it now. testnet.oragono.io can be used to test upstream CHATHISTORY support.

~taiite closed duplicate ticket #70 4 months ago

~taiite 4 months ago

Implemented so far: support for messages like CHATHISTORY BEFORE nickOR#channel timestamp=... 42

Still to do:

  • AFTER, LATEST, BETWEEN, AROUND sub-commands
  • msgid=.. criteria
  • * criteria (explanation in #70, seems to be the hardest item in this list)

~emersion 4 months ago

Opened https://todo.sr.ht/~emersion/soju/72 for message-ids.

~emersion 3 months ago

AFTER added in dcfe206bdac2.

Register here or Log in to comment, or comment via email.