Git Product home page Git Product logo

githubupdates's Introduction

Work in progress

Telegram bot written in go

The goal is a bot which sends new notifications as telegram messages

To get the bot working you need to have an .env file with TELEGRAM_API_TOKEN and GITHUB_API_TOKEN set

To start the bot either run it with docker (for that check the docker/README.md) or simply run go run main.go.

githubupdates's People

Contributors

lamdalamdalamda avatar lisiadito avatar

Watchers

 avatar  avatar

Forkers

lamdalamdalamda

githubupdates's Issues

Remove old notifications

At the moment new notifications are added to the var dataSet []GithubDataMessage but never removed. This needs to be changed.
Before addIfNotIncluded is called we could call a new function which checks if there are any elements in dataSet which are not in the new githubData. That would mean that the notification was read in the mean time.

Allow multiple users to use the same bot

At the moment the bot uses the Github token which is stored in the .env file. To allow the bot to be used by multiple users we need to store a combination of a telegram chatID and a Github api token in a database and adjust the code a bit.
I would suggest to use a sqlLite DB since we have almost no external write access and the bot reads in a big interval.
Tasks would be:

  • add sqlLite db
  • add telegram command to add a new user
  • adjust docker file that the db is stored outside the docker container
  • adjust code so that for each user in the db the check is done

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.