https://github.com/shnwazdeveloper/sayarobot
https://github.com/shnwazdeveloper/sayarobot
Last synced: 20 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/shnwazdeveloper/sayarobot
- Owner: shnwazdeveloper
- Created: 2026-05-05T19:19:57.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-05T21:23:32.000Z (about 2 months ago)
- Last Synced: 2026-05-05T21:26:16.514Z (about 2 months ago)
- Language: Python
- Size: 3.44 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# sayarobot
[](https://www.python.org/)
[](https://pyrogram.org/)
[](https://railway.app/)
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
`sayarobot` is a Telegram group-management bot built with Python and Pyrogram. It includes moderation tools, notes, filters, warnings, admin utilities, anime helpers, AI chat support, and a clean video-based start menu.
## Highlights
- Group moderation: bans, mutes, warnings, locks, reports, approvals, blacklist, rules, and admin tools.
- Community tools: notes, filters, birthday messages, welcome helpers, AFK, tagging, and utility commands.
- AI features: Gemini-powered chatbot support through `google-genai`.
- Media experience: video start screen with direct buttons for Add to group, Help, Support, Channel, and Source.
- Deployment-ready: Dockerfile and Railway config are included.
- MongoDB storage: group settings, notes, warnings, disabled commands, chatbot data, and bot state.
## Start Menu
The default `/start` menu uses direct Telegram buttons:
```text
Add me to your group
Help
Support | Channel
Source
```
Telegram controls inline-button colors and URL arrows in the app UI. The bot controls the button text, layout, callback actions, and direct links.
## Deploy On Railway
1. Fork or clone this repository.
2. Create a Railway project from the GitHub repo.
3. Railway will use the included `Dockerfile` and `railway.json`.
4. Add the required environment variables.
5. Deploy the worker service.
Railway start command:
```bash
python -m Curse
```
## Required Variables
Set these in Railway before starting the bot:
```env
ENV=ANYTHING
BOT_TOKEN=
API_ID=
API_HASH=
OWNER_ID=
MESSAGE_DUMP=
DB_URI=
DB_NAME=sayarobot
```
Important notes:
- `BOT_TOKEN` must be the full token from `@BotFather`.
- `API_ID` and `API_HASH` come from `https://my.telegram.org`.
- `MESSAGE_DUMP` must be a supergroup or channel id starting with `-100`.
- The bot must be added to `MESSAGE_DUMP` and allowed to send messages.
- `DB_URI` must be a full MongoDB URI, not a shortened value such as `mongodb...`.
## Optional Variables
Admin and support:
```env
DEV_USERS=
SUDO_USERS=
WHITELIST_USERS=
SUPPORT_GROUP=YourMoreBotsChannel
SUPPORT_CHANNEL=YourMoreBotsChannel
PREFIX_HANDLER=/ !
TIME_ZONE=Asia/Kolkata
WORKERS=8
```
AI and extras:
```env
GENIUS_API=
GEMINI_API_KEY=
GEMINI_MODEL=gemini-2.5-flash
CHATBOT_DB_URI=
CHATBOT_DB_NAME=sayarobot
BDB_URI=
RMBG_API=
```
For lyrics, only `GENIUS_API` is used. Genius Client ID and Client Secret are not needed.
## Local Run
Create a `.env` file from `.env.example`, then install dependencies and start the bot:
```bash
python -m pip install -r requirements.txt
python -m Curse
```
Docker:
```bash
docker build -t sayarobot .
docker run --env-file .env sayarobot
```
## Troubleshooting
`BOT_TOKEN is not a valid Telegram bot token`
Use the full token from `@BotFather`. Do not use a Genius token, OAuth token, client ID, or client secret.
`MESSAGE_DUMP starts wrong`
Use a Telegram supergroup or channel id that starts with `-100`.
`MongoDB host invalid`
Paste the complete MongoDB URI into Railway. Do not paste a shortened or hidden value containing `...`.
`Telegram login failed`
Check `BOT_TOKEN`, `API_ID`, and `API_HASH` in Railway. Redeploy after editing variables.
`Lyrics command does not work`
Set `GENIUS_API` to the Genius Client Access Token.
## Repository
- Source: `https://github.com/shnwazdeveloper/sayarobot.git`
- Support: `https://t.me/YourMoreBotsChannel`
- Updates: `https://t.me/YourMoreBotsChannel`
## License
This project is released under the GNU General Public License v3.0.