RuItUnion.FeedbackBot 0.2.0-rc.5

This is a prerelease version of RuItUnion.FeedbackBot.
There is a newer version of this package available.
See the version list below for details.
dotnet add package RuItUnion.FeedbackBot --version 0.2.0-rc.5                
NuGet\Install-Package RuItUnion.FeedbackBot -Version 0.2.0-rc.5                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RuItUnion.FeedbackBot" Version="0.2.0-rc.5" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RuItUnion.FeedbackBot --version 0.2.0-rc.5                
#r "nuget: RuItUnion.FeedbackBot, 0.2.0-rc.5"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install RuItUnion.FeedbackBot as a Cake Addin
#addin nuget:?package=RuItUnion.FeedbackBot&version=0.2.0-rc.5&prerelease

// Install RuItUnion.FeedbackBot as a Cake Tool
#tool nuget:?package=RuItUnion.FeedbackBot&version=0.2.0-rc.5&prerelease                

Feedback Bot

build-and-test

A free and open-source Telegram Bot that allows you to anonymously chat with multiple users in one Telegram Chat.

When a new user interacts with the Feedback Bot by sending a message, the bot forwards the message to a specific topic dedicated to that user within the Feedback Chat. If a topic for the user does not already exist, the bot creates a new one. This ensures that each user's message is organized in its own topic, allowing for clear and efficient interaction.

Created and supported by Russian IT Union.

📝 Prerequisites

  1. Telegram Bot Token;
  2. Telegram Chat ID.

🛠️ Prepare the Environment

Telegram bot

  1. Create a bot with @BotFather;
  2. After successfully creating the bot, you will receive a Telegram Bot Token.

Feedback Chat

  1. Create a private chat;
  2. Enable topics;
  3. Get the Telegram Chat ID;

You can get the ID of any user / chat / bot using desktop Telegram client. To do that go to Settings / Advanced / Experimental settings and enable Show peer ID in Profile. Now you will be able to see all the IDs.

how_to_get_id

  1. Add the bot from the previous step and make it Administrator;
  2. The only permission required for the bot is to manage topics.

required_permissions

🚀 Run

From GitHub Container Registry

  1. Download docker-compose.yml & feedback_bot.env files into one folder;
  2. Edit feedback_bot.env with any text editor and replace these values:
    • <bot_token> with Telegram Bot Token,
    • <chat_id> with Telegram Chat ID,
    • <start_text> with your greeting message your new users;
  3. Run the following command:
docker compose up -d 

From source code

  1. Clone this repo;
  2. Edit feedback_bot.env with any text editor and replace these values:
    • <bot_token> with Telegram Bot Token,
    • <chat_id> with Telegram Chat ID,
    • <start_text> with your greeting message your new users;
  3. Edit docker-compose.yml: in feedback_bot section change image value to ghcr.io/ruitunion-org/feedback-bot:local
  4. Run the following commands:
docker build -t ghcr.io/ruitunion-org/feedback-bot:local -f ./RuItUnion.FeedbackBot/Dockerfile .
docker compose up -d 

🌟 Features

Commands

Commands other than /start are only available in group chat. Use /help to get information about all commands.

  • /start - Starts the bot and displays a welcome message.
  • /help - Displays a list of all commands with their descriptions.
  • /delete - Removes a reply in the user chat.
  • /open - Opens a topic in the feedback chat.
  • /close - Closes a topic in the feedback chat.
  • /ban - Bans the user.
  • /unban - Unbans the user.

Permissions

Command Bot User Chat User Chat Admin
/help
/start
/delete
/open
/close
/ban
/unban

🤝 Contributing

Contributions are welcome. Here are some ways you can help:

  1. Report bugs: If you find a bug, please report it by creating an issue on GitHub;
  2. Request features: Have an idea for a new feature? Let us know by creating a feature request;
  3. Submit pull requests: If you'd like to fix a bug or add a feature, feel free to fork the repository and submit a pull request.
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.2.0 0 12/22/2024
0.2.0-rc.8 40 12/20/2024
0.2.0-rc.7 36 12/20/2024
0.2.0-rc.6 45 12/17/2024
0.2.0-rc.5 38 12/17/2024
0.2.0-rc.4 40 12/17/2024
0.2.0-rc.3 44 12/10/2024
0.2.0-rc.2 42 12/10/2024
0.2.0-rc.1 43 12/8/2024