{"id":16526086,"url":"https://github.com/markusressel/keel-telegram-bot","last_synced_at":"2025-03-16T19:31:13.326Z","repository":{"id":38083835,"uuid":"247889996","full_name":"markusressel/keel-telegram-bot","owner":"markusressel","description":"A telegram bot for https://keel.sh/","archived":false,"fork":false,"pushed_at":"2024-09-30T17:53:14.000Z","size":1160,"stargazers_count":9,"open_issues_count":1,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-12T17:25:43.617Z","etag":null,"topics":["docker","hacktoberfest","keel","keel-sh","kubernetes","kubernetes-monitoring","notification-service","python","python3","telegram","telegram-bot"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/markusressel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["markusressel"]}},"created_at":"2020-03-17T05:50:44.000Z","updated_at":"2024-09-30T17:53:18.000Z","dependencies_parsed_at":"2023-09-28T01:09:16.257Z","dependency_job_id":"403df65a-d330-4e66-bc9b-0e368c545478","html_url":"https://github.com/markusressel/keel-telegram-bot","commit_stats":{"total_commits":191,"total_committers":5,"mean_commits":38.2,"dds":0.5392670157068062,"last_synced_commit":"e1f50865fb950b88ab601b10fac00a219227da55"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markusressel%2Fkeel-telegram-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markusressel%2Fkeel-telegram-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markusressel%2Fkeel-telegram-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markusressel%2Fkeel-telegram-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/markusressel","download_url":"https://codeload.github.com/markusressel/keel-telegram-bot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221667212,"owners_count":16860570,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","hacktoberfest","keel","keel-sh","kubernetes","kubernetes-monitoring","notification-service","python","python3","telegram","telegram-bot"],"created_at":"2024-10-11T17:25:59.473Z","updated_at":"2024-10-27T11:09:14.743Z","avatar_url":"https://github.com/markusressel.png","language":"Python","funding_links":["https://github.com/sponsors/markusressel"],"categories":[],"sub_categories":[],"readme":"# keel-telegram-bot [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fmarkusressel%2Fkeel-telegram-bot%2Fbadge%3Fref%3Dmaster\u0026style=flat)](https://actions-badge.atrox.dev/markusressel/keel-telegram-bot/goto?ref=master) [![Code Climate](https://codeclimate.com/github/markusressel/keel-telegram-bot.svg)](https://codeclimate.com/github/markusressel/keel-telegram-bot) [![PyPI version](https://badge.fury.io/py/keel-telegram-bot.svg)](https://badge.fury.io/py/keel-telegram-bot)\n\n**keel-telegram-bot** is a telegram bot for a forked version of [Keel](https://github.com/markusressel/keel).\n\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"/screenshots/commands.png\" width=\"400\"\u003e \u003cimg src=\"/screenshots/approval.png\" width=\"400\"\u003e \n\u003c/p\u003e\n\n# Features\n\n* [x] Receive notifications (via Webhook)\n* [x] List approvals\n* [x] Approve pending approvals\n* [x] Reject pending approvals\n* [x] Delete archived approvals\n* [x] Permission handling based on telegram usernames\n* [x] Filter visible approvals on a per-chat basis\n\n# How it works\n\nThis bot uses the REST api provided by Keel to interact with it\nand relies on the Webhook functionality to receive and forward notifications\nto telegram chats. On one hand **keel-telegram-bot** acts like the web\ninterface of keel, on the other hand it acts like a relay for keel notifications, both combined into a\nsingle package.\n\nTo get telegram commands working simply provide all the necessary details of\nthe configuration file.\n\nTo get notifications working you will have to provide the address of \n**keel-telegram-bot** to Keel using the `WEBHOOK_ENDPOINT` env variable.\nThe simplest way to achieve this is by running both Keel and **keel-telegram-bot**\non the same host and specifying `http://localhost:5000/`.\n\n# How to use\n\nConfigure the docker image using either environment variables, or mount the configuration\nfile from your host system to `/app/keel-telegram-bot.yaml`.\n\n## Configuration\n\n**keel-telegram-bot** uses [container-app-conf](https://github.com/markusressel/container-app-conf)\nto provide configuration via a YAML file as well as ENV variables. Have a look at the \n[documentation about it](https://github.com/markusressel/container-app-conf).\n\nSee [keel-telegram-bot_example.yaml](/keel-telegram-bot_example.yaml) for an example in this repo.\n\n## Run\n\nTo run **keel-telegram-bot** using docker you can use the [ghcr.io/markusressel/keel-telegram-bot](https://github.com/markusressel/keel-telegram-bot/pkgs/container/keel-telegram-bot) image:\n\n```\nsudo docker run -t \\\n    ghcr.io/markusressel/keel-telegram-bot:latest\n```\n\n# Contributing\n\nGitHub is for social coding: if you want to write code, I encourage contributions through pull requests from forks\nof this repository. Create GitHub tickets for bugs and new features and comment on the ones that you are interested in.\n\n# License\n\n```text\nkeel-telegram-bot by Markus Ressel\nCopyright (C) 2020  Markus Ressel\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkusressel%2Fkeel-telegram-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkusressel%2Fkeel-telegram-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkusressel%2Fkeel-telegram-bot/lists"}