Tip
For more env variables and detailed information, read Advanced Settings.
- Turn to @BotFather, send
/newbot
create a new bot, then get its token (env variable:TOKEN
). After that, send/setinline
, select your bot, and reply with an inline placeholder you like to enable inline mode for your bot. For example, @RSStT_Bot is usingPlease input a command to continue...
. - Turn to @userinfobot to get your user ID (env variable:
MANAGER
). - Get Telegraph API access tokens (env variable:
TELEGRAPH_TOKEN
). Refresh the page every time you get a new token. If you have a lot of subscriptions, make sure to get at least 5 tokens.
Tip
An x86_64 (amd64) or arm64v8 (aarch64) machine is required. If you need a VPS, Vultr (affiliate link, w/ 14-days-valid $100 trial credit) High Performance (Intel) NVMe SSD Cloud Servers (starting at $6/month) are recommended.
mkdir rsstt
cd rsstt
wget https://raw.githubusercontent.com/Rongronggg9/RSS-to-Telegram-Bot/dev/docker-compose.yml.sample -O docker-compose.yml
vi docker-compose.yml # fill in env variables
docker-compose up -d
docker-compose down
docker-compose pull
docker-compose up -d
Tip
Railway accounts without any verified payment method or prepaid balance can only consume 500 execution hours per month, which means that RSStT will be paused after 500 hours of uptime. To get rid of the execution time limit, either associate a credit/debit card to your account or prepaid $5 once. You will get $5 free credit each month without execution time limit, which is pretty enough for RSStT. Except the prepaid balance (if you don't want to associate a credit/debit card), hosting RSStT should be free of charge.
Railway no longer offers free plans. Deploying RSStT on Railway could cost you at least $5 per month (Hobby Plan).
master | dev (recommended) |
---|---|
After deployed, check the bot log to see if it is using PostgreSQL (postgre
), otherwise, all the data will be lost when updating.
Please note that if you deploy RSStT without using the above buttons, you must manually add the PostgreSQL plug-in.
https://railway.app/dashboard
-> your RSStT project -> RSS-to-Telegram-Bot
-> Settings
-> Check for updates
Tip
Heroku accounts with no verified payment method have only 550 hours of credit per month (about 23 days), and up to 1,000 hours per month with any verified payment methods.
Heroku no longer offers free plans. Deploying RSStT on Heroku could cost you at least $16 per month ($7 for Heroku Dyno and $9 for Heroku Postgres). Railway.app offers lower price and better performance.
master | dev (recommended) |
---|---|
- Fork RSStT to your GitHub account.
- Use the instant deploy buttons above to deploy RSStT to Heroku.
- Switch the
Deployment method
toGitHub
(Deploy
tab ->Deployment method
) and connect the app to your fork. - Enable
Automatic deploys
(Deploy
tab ->Automatic deploys
->Enable Automatic Deploys
). - Each time upstream updates, turn to your fork and switch to the branch you've deployed, then click
Fetch upstream
andFetch and merge
.
Important
It is highly recommended to set up a virtual environment (venv
).
Note
RSStT is tested only under the recommended system requirements.
Minimum | Recommended | |
---|---|---|
Operating system | Linux, Windows, macOS | Linux |
Architecture | x86_64, arm64 | x86_64 |
Python (CPython) | 3.9 | 3.12 |
Free memory | 128MB | > 384MB |
Note
These fonts are used for HTML table rendering (to enable it, set the environment variable TABLE_TO_IMAGE
to 1
). You may use WenQuanYi Zen Hei, WenQuanYI Micro Hei, Noto Sans CJK, Microsoft YaHei, or SimHei.
sudo apt install -y fonts-wqy-microhei
You know what to do. However, I cannot guarantee that the fonts can be recognized properly by matplotlib.
Note
The default config folder is ~/.rsstt
.
Important
python3 -m pip install -U pip setuptools wheel
python3 -m pip install -U rsstt
# python3 -m pip install -U --extra-index-url https://test.pypi.org/simple rsstt
mkdir -p ~/.rsstt
wget https://raw.githubusercontent.com/Rongronggg9/RSS-to-Telegram-Bot/dev/.env.sample -O ~/.rsstt/.env
vi ~/.rsstt/.env # fill in env variables
python3 -m rsstt
Note
The default config folder is ./config
, default .env
path is ./.env
(placing it inside the config folder is also supported).
git clone https://github.com/Rongronggg9/RSS-to-Telegram-Bot.git
cd RSS-to-Telegram-Bot
python3 -m pip install -r requirements.txt
cp .env.sample .env
vi .env # fill in env variables
python3 -u telegramRSSbot.py
-h
,--help
: show the help message and exit-c
,--config
: path to the config folder