RSS/JSON generator for telegram
Get posts from my TelegramApiServer and output them as RSS or JSON.
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh ./get-docker.sh
git clone https://github.com/xtrime-ru/TelegramRSS.git TelegramRSS
cd TelegramRSS
cp .env.docker.example .env.docker
and check settings in .env.docker: domain, ratelimit, allowed refferes, etc...docker compose pull
docker compose up -d
git pull
docker compose pull
cp .env.docker .env.docker.v1
cat .env.docker.example > .env.docker
#check new config and move old options from your .env.docker.v1 to new .env.docker
docker compose up -d
.env.docker
if needed. docker compose restart
Example of Nginx config
server {
listen %ip%:443 ssl;
server_name tg.i-c-a.su;
ssl_certificate /home/admin/conf/web/ssl.tg.i-c-a.su.pem;
ssl_certificate_key /home/admin/conf/web/ssl.tg.i-c-a.su.key;
location / {
proxy_set_header Host $http_host;
proxy_set_header SERVER_PORT $server_port;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
fastcgi_param REMOTE_ADDR $http_x_real_ip;
proxy_http_version 1.1;
proxy_set_header Connection "keep-alive";
proxy_pass http://127.0.0.1:9504;
}
}
Set REAL_IP_HEADER=X-Forwarded-For
in .env.docker to retrieve client IP from nginx.
Custom limit: https://tg.i-c-a.su/json/breakingmash?limit=50
Maximum: 100 posts
Pagination: https://tg.i-c-a.su/json/breakingmash?page=2
Get one message: https://tg.i-c-a.su/json/breakingmash?id=10738&limit=1
Custom limit: https://tg.i-c-a.su/rss/breakingmash?limit=50
Maximum: 100 posts
Pagination: https://tg.i-c-a.su/rss/breakingmash/2
Get one message: https://tg.i-c-a.su/rss/breakingmash?id=10738&limit=1
Default address of RSS server is http://127.0.0.1:9504/