Basic Github Releases - Telegram Bot

July 29, 2022 ยท View on GitHub

This is a Telegram bot that monitors the releases of given repos, sending messages upon a new release. It uses Docker for virtualization, and is based on eternnoir's Telegram bot API.

Interact with the bot here. It currently checks for new releases every 3 hours.

Running it yourself

So the bot is offline but you still want to try it? I admire you. Here's how to do it:

Prerequisites

Have Docker installed. Or not. You can run it directly from the main.py file.

Getting the files

Either download the code as zip from Github (make sure to unzip it), or clone the repo locally:

git clone https://github.com/chofnar/BasicGithubReleasesTelegramBot

Getting an API Token from Telegram

  • Talk to the BotFather to create a bot. It's one of the official bots of Telegram
  • It will give you an API token. Put it in a text file called config.yaml, with the field name "token". Create it in the main directory.
  • In the config.yaml file, put one of the supported database types with the field name "databaseType". They (might) need additional config. Check the example config file if you didn't work with yamls yet.

Supported database types

The bot can use the following database types to store the relevant info. Click on the links attached to see whether or not they need additional config.

  • MySQL
  • PickleDB - add databaseFile
  • DynamoDB - add tableName - CURRENTLY THE ONLY ONE WORKING - also needs AWS env vars

Deploying

In the parent folder, run

docker-compose up

OR

python3 main.py

To interact with the bot, BotFather should have given you a link to it.