1.5 KiB
1.5 KiB
MUC Component
This is a MUC component implementation in Rust. The primary goal was to be able to write a gaming chat room for the Hanabi game, but I may also just want to implement parts of standard MUC.
License
This project is available under the AGPL-3.0-or-later license. See the LICENSE file.
Checklist
XMPP
- Join
- Normal sessions
- MSN
- [-] Presence
- Resync
- Updates
- [-] Probes (storing updates to answer probes)
- Storing presences but not answering when they're being queried, yet.
- Nick changes
- [-] Iq
- [-] Ping answers
- Ping component (always succeeds)
- [-] Ping room (always fails. Awaiting affiliation support)
- Ping participant (0410)
- Ping probes?
- Routing Public PEP?
- Default "service-unavailable"
- [-] Ping answers
- Messages
- Broadcast
- History?
- MAM?
- [?] Leave
- Affiliations / roles
- Configuration
- Modes
- Non-anon
- Semi-anon
- Full-anon? (with some kind of occupant-id (0421)?)
- Modes
- Mediated invites
- Room state
- Locked
- Destroyed / Tombstoned?
- Private Messages?
- Possible optimisations
- Presence versioning (0436)
- Room Activity Indicator (0437)
- Affiliation versioning (0463)
- Caching participant caps
Storage
- Persistent storage of room data
Component Configuration
- Interface
- File?
- Adhoc?
- Options?
- Host
- Secret
- Admins?
- ...?