A self-hosted Telegram Python Bot that dumps posts from Jackett or Prowlarr RSS feeds to a Telegram chat.
Based on RSS to Telegram bot by BoKKeR (Thanks for your effort).
A Telegram Bot is needed that the script will connect to.
You could use this post to create your own with the BotFather Telegram Bot.
WARNING!! Without
chat_id
the bot wont be able to send automated messages and will only be able to respond to messages.
$ docker create \
--name=jackett2telegram \
-e TOKEN=<your_telegram_bot_token> \
-e CHATID=<your_telegram_bot_chatid> \
-v </path/to/host/config>:/app/config \
-v </path/to/host/blackhole>:/app/blackhole \
--restart unless-stopped \
danimart1991/jackett2telegram
Python 3.X
-
Clone the script
-
Install depedencies with:
pip install -r requirements.txt
-
Run the script with:
python jackett2telegram.py --token <YOUR_TELEGRAM_TOKEN> --chat_id <YOUR_TELEGRAM_CHAT_ID>
The following parameters can be used in both Docker (as environment variables) and Manual installation (as command line arguments):
Docker Env | Command Line Arg | Description | Default |
---|---|---|---|
MESSAGE_THREAD_ID |
--message_thread_id |
Unique identifier for the target message thread (topic) of the forum; for forum supergroups only | - |
DELAY |
--delay |
Seconds between each RSS fetching | 600 |
LOG_LEVEL |
--log_level |
Log level (critical, error, warning, info, debug) | info |
Note:
MESSAGE_THREAD_ID
is optional. If you run the Docker image you can leave the environment variable empty (for exampleENV MESSAGE_THREAD_ID=""
) and the container entrypoint will omit the--message_thread_id
argument. Only setMESSAGE_THREAD_ID
(or pass--message_thread_id
when running manually) when you need to target a specific forum topic in a supergroup.
Send /help
command to the bot to get this message:
Jackett2Telegram (Jackett and Prowlarr RSS to Telegram Bot)
After successfully adding a Jackett or Prowlarr RSS link, the bot starts fetching the feed every 600 seconds. (This can be set)
Titles are used to easily manage RSS feeds and should contain only one word and are case sensitive.
Commands:
- /help Posts this help message. 😑
- /add TITLE JACKETT_OR_PROWLARR_RSS_FEED_URL - Adds new Jackett or Prowlarr RSS Feed (overwrited if title previously exist).
- /remove TITLE - Removes the RSS link.
- /list Lists all the titles and the asociated Jackett or Prowlarr RSS links from the DB.
- /test JACKETT_OR_PROWLARR_RSS_FEED_URL - Inbuilt command that fetches a post (usually latest) from a Jackett or Prowlarr RSS.
In order to use Blackhole, your Torrent client must support it and be configured to point to Jackett2Telegram Blackhole folder.
If you like the project, star it on GitHub.
You could get the Jackett or Prowlarr RSS Feed Url using the action button in Indexers list:
You could get the Prowlarr RSS Feed Url using the action button in Indexers list:
Then paste the Url in the chat like /add TITLE JACKETT_OR_PROWLARR_RSS_FEED_URL
and send the message. The bot will reply with the result.
Blackhole folder is a monitored folder that your Torrent client checks to look for .torrent
files and then download them automatically.
First, you must read the documentation of the Torrent client to make sure is supported and simply configure it to point to the blackhole folder created by Jackett2Telegram.
When a new release is showed in Telegram, a Blackhole button could be pressed and download the .torrent
file locally, then Torrent client use it.
If you use the Docker installation, make a bind between folders.