From bf909c5efbf016f5effe4d2c18c3a7a85b2e420d Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 18 Aug 2024 19:00:44 +0200 Subject: [PATCH] docs: update README with detailed features and usage Expanded the README with comprehensive details about the bot's capabilities, including its features, user and operator commands, installation steps, and usage instructions. This enhances clarity for new users and contributors on how to interact with and set up the bot effectively. --- README.md | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 58 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 9376a04..22f0234 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,64 @@ -# Matrix-SupportBot +# Matrix Support Bot [![Support Private.coffee!](https://shields.private.coffee/badge/private.coffee-support%20us!-pink?logo=coffeescript)](https://private.coffee) -This is a simple, no-database support chat bot for Matrix. It is designed to be easy to use and lightweight. +Matrix Support Bot is a support ticket bot for the Matrix protocol built using the `matrix-nio` library. The bot allows users to open support tickets and communicate with support operators in a structured manner. Operators can manage tickets and relay messages between customer-facing and operator-facing rooms. + +## Features + +- The bot's state is stored in a Matrix room, so no external database is required. +- Users can invite the bot to a direct message (DM) and receive instructions on how to open a support ticket. +- Users can open support tickets using the `!supportbot openticket` command. +- The bot creates a new customer-facing room for each ticket and invites the user to it. +- Operators are notified of new tickets in a shared operator room. +- Operators can join operator-facing rooms for each ticket and communicate with customers. +- Messages between customer-facing and operator-facing rooms are relayed by the bot. +- Operators can close tickets and list open tickets using bot commands. +- Supports relaying of different message types, including text and media. + +## Commands + +### User Commands + +- `!supportbot openticket` - Opens a new support ticket and creates a customer-facing room. + +### Operator Commands + +- `!supportbot invite ` - Invites an operator to the operator-facing room for the specified ticket. +- `!supportbot close ` - Closes the specified ticket. +- `!supportbot list` - Lists all open tickets. + +## Installation + +1. Install from PyPI: + + ```bash + pip install matrix-supportbot + ``` + +2. Create a `config.yaml` file with your Matrix credentials and operator room ID: + + ```yaml + homeserver: "https://homeserver.example" + username: "your_username" + password: "your_password" + operator_room_id: "!your_operator_room_id:homeserver.example" + ``` + +## Usage + +Run the bot with the following command: + +```bash +supportbot +``` + +The bot will log in to your Matrix server, join the operator room, and start listening for commands and invites. + +## Contributing + +Contributions are welcome! Please fork the repository and create a pull request with your changes. ## License -This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. +This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.