introkun / RSS-to-Telegram-Bot

RSS to Telegram python script

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RSSTT

RSS to Telegram bot

A self-hosted telegram python bot that dumps posts from RSS feeds to a telegram chat. This script was created because all the third party services were unreliable.

Image of help menu

Docker

For the docker image go to: https://hub.docker.com/r/bokker/rss.to.telegram/

Installation

Python 3.X

pip install feedparser
pip install python-telegram-bot

A telegram bot is needed that the script will connect to. https://botsfortelegram.com/project/the-bot-father/ Running the script and typing in /help will reveal the current chatId, this needs to be set also in the script

  1. Clone the script
  2. Replace your chatID and Token on the top of the script.
  3. Edit the delay. (seconds)
  4. Save and run
  5. Use the telegram commands to manage feeds

Warning! Without chatID the bot wont be able to send automated messages and will only be able to respond to messages.

Usage

send /help to the bot to get this message:

RSS to Telegram bot

After successfully adding a RSS link, the bot starts fetching the feed every 60 seconds. (This can be set) Titles are used to easily manage RSS feeds and need to contain only one word

commands:

/add title http://www(.)URL(.)com

/help Shows this text

/remove !Title! removes the RSS link

/list Lists all the titles and the RSS links from the DB

/test Inbuilt command that fetches a post from Reddits RSS.

The current chatId is: 20416xxxx

Known issues

If the bot is set to for example 5 minutes and one feed manages to get 2 new posts before the bot can check. Only the newest post will show up on telegram.

Docker

docker create \
  --name=rss.to.telegram \
  -e DELAY=60 \
  -e TOKEN=InsertToken \
  -e CHATID=InsertChatID \
  -v /path/to/host/config:/config \
  --restart unless-stopped \
  bokker/rss.to.telegram

About

RSS to Telegram python script

License:GNU General Public License v3.0


Languages

Language:Python 91.9%Language:Dockerfile 8.1%