TelegramRSS
RSS/JSON generator for telegram
Get posts from my TelegramApiServer and output them as RSS or JSON.
Features
- Fast async Swoole server
- Use as micro-service to access Telegram API
- Get any public telegram posts from groups as json or RSS
- fail2ban, RPM limits, IP blacklist
- Full media support. Access any media from messages via direct links.
Architecture Example
Installation
- Install and start Telegram Api Server
- Clone this project:
git clone https://github.com/xtrime-ru/TelegramRSS.git TelegramRSS
- Start:
-
Docker:
docker-compose pull
docker-compose up -d
-
Manual:
- Install Swoole php extension
composer install -o --no-dev
php server.php
-
Setup
- Edit
.env
or.env.docker
if needed. - Restart RSS server.
- Docker:
docker-compose restart
- Manual:
- ctrl + c
php server.php
- Docker:
- Run in background
- 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; } }
Examples
-
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
Default address of RSS server is http://127.0.0.1:9504/
Contacts
- Telegram: @xtrime
- Email: alexander(at)i-c-a.su