Update 'Roadmap'

projectmoon 2020-11-30 20:22:54 +00:00
parent 93aec5ed34
commit 7640f238d6
1 changed files with 36 additions and 52 deletions

@ -7,24 +7,8 @@ What is currently upcoming.
| Feature | Description | Depends on | | Feature | Description | Depends on |
| --------------- | --------------- | --------------- | | --------------- | --------------- | --------------- |
| **Room State Management** | Bot keeps track of metadata relating to rooms it's in. | N/A |
| **Private Commands** | Manage all bot functionality from a private room | Room State Management | | **Private Commands** | Manage all bot functionality from a private room | Room State Management |
### Room State Management
Room state management involves the dice bot keeping track of what rooms it is in and what users are in them. This feature is 100% invisible to the end user, but is a necessary prerequisite for managing the dicebot in a direct message.
* One-time sync of the dicebot's current rooms into the database (sort of a migration, but technically not?)
* When a user joins or leaves a room, add/remove them to/from a users list for the room.
* Probably useful to maintain a two-way relation: room -> list of users, user -> list of rooms.
This feature will be further expanded as necessary.
Database implementation:
* New keyspace: `rooms`.
* `rooms|by_user|<username>` = `list of user's rooms`.
* `rooms|list` = `list of dicebot's rooms`.
### Private Commands ### Private Commands