All Projects → iovxw → Rssbot

iovxw / Rssbot

Licence: unlicense
Lightweight Telegram RSS bot for notifications only. 用于消息通知的轻量级 Telegram RSS 机器人

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Rssbot

Moviemagnetbot
🤖 telegram bot for movies
Stars: ✭ 39 (-95.9%)
Mutual labels:  bot, telegram-bot, rss, telegram
Shieldy
@shieldy_bot Telegram bot repository
Stars: ✭ 351 (-63.13%)
Mutual labels:  bot, telegram-bot, telegram
The Guard Bot
The Guard, a Telegram bot to moderate groups.
Stars: ✭ 299 (-68.59%)
Mutual labels:  bot, telegram-bot, telegram
Java Telegram Bot Api
Telegram Bot API for Java
Stars: ✭ 819 (-13.97%)
Mutual labels:  bot, telegram-bot, telegram
Swiftybot
How to create a Telegram, Facebook Messenger, and Google Assistant bot with Swift using Vapor on Ubuntu / macOS.
Stars: ✭ 247 (-74.05%)
Mutual labels:  bot, telegram-bot, telegram
YouTubeFeeds
Get new youtube video notifs, on telegram!
Stars: ✭ 29 (-96.95%)
Mutual labels:  rss, telegram, feed
Groupbutler
This bot can help you in managing your group with rules, anti-flood, description, custom triggers, and much more!
Stars: ✭ 399 (-58.09%)
Mutual labels:  bot, telegram-bot, telegram
Example Bot
[WIP] An A-Z example of a PHP Telegram Bot.
Stars: ✭ 211 (-77.84%)
Mutual labels:  bot, telegram-bot, telegram
Tgbot Cpp
C++ library for Telegram bot API
Stars: ✭ 439 (-53.89%)
Mutual labels:  bot, telegram-bot, telegram
Telegraf
Modern Telegram Bot Framework for Node.js
Stars: ✭ 5,178 (+443.91%)
Mutual labels:  bot, telegram-bot, telegram
Flowerss Bot
A telegram bot for rss reader. 一个支持应用内阅读的 Telegram RSS Bot。
Stars: ✭ 660 (-30.67%)
Mutual labels:  telegram-bot, rss, telegram
Mypackbot
🤖 Your own unlimited pack of Telegram-stickers
Stars: ✭ 18 (-98.11%)
Mutual labels:  bot, telegram-bot, telegram
Tlg joincaptchabot
Telegram Bot to verify if users that join a group, are humans. The Bot send an image captcha for each new user, and kick any of them that can't solve the captcha in a specified time.
Stars: ✭ 226 (-76.26%)
Mutual labels:  bot, telegram-bot, telegram
Infomate.club
RSS feed collections with article summarization
Stars: ✭ 255 (-73.21%)
Mutual labels:  rss, telegram, feed
Urban Bot
🤖 The universal chatbot library based on React. Write once, launch Telegram, Facebook, Slack, ... every messenger with chatbots
Stars: ✭ 223 (-76.58%)
Mutual labels:  bot, telegram-bot, telegram
Pytg
Python package that wraps around Telegram messenger CLI. Send and receive messages, and more.
Stars: ✭ 365 (-61.66%)
Mutual labels:  bot, telegram-bot, telegram
Informer
A Telegram Mass Surveillance Bot in Python
Stars: ✭ 745 (-21.74%)
Mutual labels:  bot, telegram-bot, telegram
Telegram Bot Api
First Telegram Bot API node.js library
Stars: ✭ 205 (-78.47%)
Mutual labels:  bot, telegram-bot, telegram
Noderssbot
Another Telegram RSS bot but in Node.js Telegram RSS 机器人
Stars: ✭ 212 (-77.73%)
Mutual labels:  bot, rss, telegram
Telegram Bot
Ruby gem for building Telegram Bot with optional Rails integration
Stars: ✭ 433 (-54.52%)
Mutual labels:  bot, telegram-bot, telegram

rssbot Build Status Github All Releases

Other Languages: English

中文 Telegram RSS 机器人 @RustRssBot

支持:

  • [x] RSS 0.9
  • [x] RSS 0.91
  • [x] RSS 0.92
  • [x] RSS 0.93
  • [x] RSS 0.94
  • [x] RSS 1.0
  • [x] RSS 2.0
  • [x] Atom 0.3
  • [x] Atom 1.0
  • [x] JSON Feed 1

使用

/rss       - 显示当前订阅的 RSS 列表
/sub       - 订阅一个 RSS: /sub http://example.com/feed.xml
/unsub     - 退订一个 RSS: /unsub http://example.com/feed.xml
/export    - 导出为 OPML

下载

可直接从 Releases 下载预编译的程序(带 zh 的为中文版), Linux 版本为 musl 静态链接, 无需其他依赖

编译

请先尝试从上面下载, 如不可行或者有其他需求再手动编译

先安装 Rust Nightly 以及 Cargo (推荐使用 rustup), 然后:

cargo build --release

编译好的文件位于: ./target/release/rssbot

运行

USAGE:
    rssbot [FLAGS] [OPTIONS] <token>

FLAGS:
    -h, --help          Prints help information
        --insecure      DANGER: Insecure mode, accept invalid TLS certificates
        --restricted    Make bot commands only accessible for group admins
    -V, --version       Prints version information

OPTIONS:
    -d, --database <path>           Path to database [default: ./rssbot.json]
        --max-feed-size <bytes>     Maximum feed size, 0 is unlimited [default: 2097152]
        --max-interval <seconds>    Maximum fetch interval [default: 43200]
        --min-interval <seconds>    Minimum fetch interval [default: 300]
        --single-user <user id>     Single user mode, only specified user can use this bot

ARGS:
    <token>    Telegram bot token

NOTE: You can get <user id> using bots like @userinfobot @getidsbot

<token> 请参照 这里 申请

环境变量

  • HTTP_PROXY: 用于 HTTP 的代理
  • HTTPS_PROXY: 用于 HTTPS 的代理
  • RSSBOT_DONT_PROXY_FEEDS: 设为 1 使所有订阅的 RSS 不通过代理(仅代理 Telegram)
  • NO_PROXY: 暂不支持,等待 reqwest#877

从旧的 RSSBot 迁移

对于 原先 Clojure 版本的 Bot, 可以使用以下脚本转换数据库

#!/bin/bash

DATABASE=$1
TARGET=$2

DATA=$(echo "SELECT url, title FROM rss;" | sqlite3 $DATABASE)
IFS=$'\n'

echo -e "[\c" > $TARGET
for line in ${DATA[@]}
do
    IFS='|'
    r=($line)
    link=${r[0]}
    title=${r[1]}

    echo -e "{\"link\":\"$link\"," \
            "\"title\":\"$title\"," \
            "\"error_count\":0," \
            "\"hash_list\":[]," \
            "\"subscribers\":[\c" >> $TARGET

    subscribers=$(echo "SELECT subscriber FROM subscribers WHERE rss='$link';" | sqlite3 $DATABASE)
    IFS=$'\n'
    for subscriber in ${subscribers[@]}
    do
        echo -e "$subscriber,\c" >> $TARGET
    done

    echo -e "]},\c" >> $TARGET
done
echo "]" >> $TARGET
sed -i "s/,]/]/g" $TARGET

参数 1 为旧数据库地址, 2 为结果输出地址

需要注意的是已推送的 RSS 记录不会保留, 如果直接使用转换后的数据库, 会重复推送旧的 RSS

License

This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].