Gobot
Multi-purpose bot for the Telegram Messenger based on gotgbot and inspired
by Python-Telegram-Bot.
The source code is here so YOU can do what you want with it - don't ask questions about it nor ask for help on how to use
it!
Features
- Written in Go
- Uses MySQL database
- Supports plugins
- Whitelist included
- Supports webhooks and long-polling
Usage
- Download binaries from Actions tab or build it yourself (
go build
)
- Copy
.env.example
to .env
and fill it in (you can also use environment variables)
- Run it!
Using a webhook
To use a webhook, set the webhook-related variables. If you don't, long-polling will be used.
Example with Hookdeck:
- Copy your
https://events.hookdeck.com/e/...
URL to WEBHOOK_PUBLIC_URL
variable
- Set a webhook port (e.g.
41320
) to PORT
- Set
WEBHOOK_URL_PATH
to a custom path
- This is where the internal webhook server will listen on. Gotgbot does not support an empty path sadly.
- For Hookdeck, set "Destionation Type" to "CLI" and insert your path
- Use the Hookdeck CLI:
hookdeck listen 41320 [SOURCE]
More options
Set the following variables to any value (like "1
") to enable them:
PRINT_MSGS
: Print all messages the bot receives to the terminal
PRETTY_PRINT_LOG
: Pretty print log
DEBUG
: Enable debug logs (verbose, contains secrets!)
IGNORE_SQL_MIGRATION
: Ignore the SQL migration feature when you want to migrate yourself (for example with
PlanetScale since it doesn't support foreign key references).