Silence Bot allows you to calm down all chat participants by muting them temporarily.
Just add the bot to your supergroup, give it message deletion and user restriction rights and you're all set. If you give it a right to pin messages, the bot will pin "Silence mod enabled" messages.
Use /silence to enable silent mode.
All non-admin messages will be deleted in silent mode, any user who tries to send a message will get a temporary read-only restriction.
Use /silence again to disable silent mode.
All users will be unrestricted automatically and be able to chat.
Use /switchlang to switch between Russian and English
Please note that the bot requires running Redis instance to store data.
I'm very new to Go, so I'll be happy if you make some pull requests.
Make sure you have Go installed and just run
./build.sh
Install dependencies
go get ./...
And then build
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -tags netgo -ldflags '-s -w -extldflags "-static"' -o silencebot
Use ./silencebot -t <YOUR_TELEGRAM_TOKEN>
to start the bot.
By default it connects to localhost:6379 Redis instance without password and selects db 0.
You can customize this behavior, check ./silencebot -h
for all arguments.
There are two ways as for now: Docker compose and systemd service
Don't forget to replace token!
Docker compose is ready to use, but not recommended for stable environments as long as redis is running inside Docker.
systemd service example (recommended)
- Embedded service autoinstall
- Minimal hidden admin commands (
/stats
,/health
,/uptime
etc.)