diff --git a/README.md b/README.md index f948106..f836f20 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,40 @@ # OCRCC Bot -A simple Matrix bot that handles inviting, uninviting, and notifying Riot users on the recieving end of the [OCRCC chatbox](https://github.com/nomadic-labs/ocrcc-chatbox) +A simple Matrix bot that handles inviting, uninviting, and notifying Riot users on the recieving end of the [OCRCC chatbox](https://github.com/nomadic-labs/ocrcc-chatbox). A demo of this bot is hosted on Glitch: https://glitch.com/edit/#!/nomadic-labs-ocrcc-bot You can remix it and continue developing directly on Glitch. All you need to do is add an `.env` file with the following variables: ``` -MATRIX_SERVER_URL="https://matrix.org" -BOT_DISPLAY_NAME="Example Bot" -BOT_USERNAME="example-bot" -BOT_PASSWORD="password" -BOT_USERID="@example-bot:matrix.org" -FACILITATOR_ROOM_ID="!example:matrix.org" -CHAT_OFFLINE_MESSAGE="There is no-one currently available to chat." -CAPTURE_TRANSCRIPTS=true +MATRIX_SERVER_URL= +BOT_DISPLAY_NAME= +BOT_USERNAME= +BOT_PASSWORD= +BOT_USERID= +FACILITATOR_ROOM_ID= +FACILITATOR_GROUP_ID= +CHAT_OFFLINE_MESSAGE= +CAPTURE_TRANSCRIPTS= ``` +## What does the bot do? +* The bot receives an invitation to every chatroom created by the embedded chatbox, and automatically accepts +* Upon joining a new room, the bot invites all of the members of the Facilitators community +* When the first facilitator accepts the invitation, the bot uninvites the rest of the facilitators +* The bot notifies the Support Chat Notifications chatroom when there is a support request and when a facilitator joins +* If there are no facilitators online, the bot notifies the support seeker +* The bot makes the facilitator a moderator of the chatroom so they can change the room settings (i.e. room name) +* The bot listens to all the incoming messages and prints them to a transcript if that setting is enabled (`CAPTURE_TRANSCRIPT`) +* Messages that start with `!bot` are treated as commands. +* The bot sends a notification to the support chatroom and the Support Chat Notifications room if it crashes +* On startup, the bot deletes all of the old device IDs for its account + +### Bot commands + +|Command|Response| +--- | --- +|`!bot hi`|Bot responds with a greeting| +|`!bot transcript`|Bot sends the chat transcript as a .txt file| +|`!bot transcript please`|Bot happily sends the transcript :)| ## Local development If you prefer to develop locally instead of on Glitch: