7 Commits

Author SHA1 Message Date
contact
522becbe30 Implement CHATHISTORY TARGETS
References: https://github.com/ircv3/ircv3-specifications/pull/450

git-svn-id: file:///srv/svn/repo/suika/trunk@549 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-02 18:32:11 +00:00
hubert
84c329faff Implement CHATHISTORY BETWEEN
git-svn-id: file:///srv/svn/repo/suika/trunk@516 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-18 08:44:10 +00:00
contact
00fbbb9d0d Use BARE for internal message IDs
This allows to have shorter and more future-proof IDs. This also
guarantees the IDs will only use reasonable ASCII characters (no
spaces), removing the need to encode them for PING/PONG tokens.

git-svn-id: file:///srv/svn/repo/suika/trunk@488 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-03-31 15:57:24 +00:00
contact
c94290b989 Make chat history operations optional in messageStore
Some stores may want not to implement chat history operations.

git-svn-id: file:///srv/svn/repo/suika/trunk@441 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-01-04 16:17:35 +00:00
contact
c1308993f8 Add store-agnostic message ID format
Allow to query the network ID and entity from the message ID regardless
of the underlying store used.

git-svn-id: file:///srv/svn/repo/suika/trunk@440 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-01-04 15:26:30 +00:00
contact
ee6517993f Turn messageStore into an interface
This allows for other implementations that aren't based on a filesystem.

git-svn-id: file:///srv/svn/repo/suika/trunk@439 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-01-04 13:24:00 +00:00
contact
2010feb337 Add message store abstraction
Introduce a messageStore type, which will allow for multiple
implementations (e.g. in the DB or in-memory instead of on-disk).

The message store is per-user so that we don't need to deal with locking
and it's easier to implement per-user limits.

git-svn-id: file:///srv/svn/repo/suika/trunk@423 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2020-10-25 16:47:38 +00:00