💎 开源 | 二次开发 RSS-Reader 使其支持识别关键字后推送TG与飞书通知

nicevoice 2024-07-05 PM 102℃ 0条

项目地址:https://github.com/huhengbo/rss-reader/tree/main


  • 代码糟烂,想喷可喷,但我难受

  • 项目都是 Go 实现,以及功能并不复杂,对系统的资源占用极其微小,可放心食用,已提供 docker-compose 方式,可以一键完成安装启动运行,注意 docker-compose.yml 文件中的端口设定默认是9898 ,你可以设置成8787

  • 部署前请先配置,配置都在 config.json 中修改,使用前请先去 config.json 中增加自己飞书机器人的webhook地址 或 Telegram 的 token 和 chat_id,注意⚠️  TG api 后面的地址不要改! https://api.telegram.org/bot${token}/sendMessage ,也就是这个${token}保持原样别动

  • config.json 中的 refresh 单位为分钟,表示多少分钟请求一次所需的 rss 订阅源

  • TG机器人创建和权限赋予教程请看 https://www.telegramhcn.com/article/161.html

项目

实时展示rss订阅最新消息。

特性

  • 打包后镜像大小仅有约20MB,通过docker实现一键部署

  • 支持自定义配置页面数据自动刷新

  • 响应式布局,能够兼容不同的屏幕大小

  • 良好的SEO,首次加载使用模版引擎快速展示页面内容

  • 支持添加多个RSS订阅链接

  • 简洁的页面布局,可以查看每个订阅链接最后更新时间

  • 支持夜间模式

  • config.json配置文件支持热更新

  • 在原作者基础上,进行二次开发,增加了识别关键词后,推送通知到飞书和Telegram(2024年6月2日)



食用效果

TinySnap-2024-06-03-20.04.46.png
TinySnap-2024-06-03-20.00.24.png
TinySnap-2024-06-03-20.01.59.png
TinySnap-2024-06-03-20.01.13.png
BT面板部署教程:首先安装bt插件

就是这个插件Docker管理器,

Docker管理器官方已不提供维护,如需使用请前往【宝塔面板->Docker】,请更新到3.9.3后再卸载插件

然后设置里面找到加速URl:设置成https://hub.rat.dev。就是registry-mirrors的链接改成这个就行了。然后创建一个php站点(选择全静态)好了后,把https://github.com/huhengbo/rss-reader/tree/main
的文件放到所建立好的文件根目录下,记得是这个网站的目录下,然后打开终端命令行,需要输入密码和账号,账号是root,密码在Linux工具箱 2.1这个里面改成你能记住的密码。然后输入docker-compose up -d
      - "9898:8080"
这里的9898是服务器的端口,8080是容器的端口不冲突哈,所以需要把9898在服务器防火墙里面设置成允许,腾讯云阿里云等云软件在防火墙里面设置,不需要开放8080端口,因为是docker内部容器端口。这样就启动了,输入你服务器ip:9898就能访问网站了。
当然绑定的域名没有反向代理。所以添加代理设置成http://127.0.0.1:9898。
设置好后,点配置文件,把注意改Host这行改一下,就成功了 ,

location ^~ /
{
    proxy_pass http://127.0.0.0:9898;
    proxy_set_header Host $host;//注意改这个Host这行,其他不需要改
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_http_version 1.1;
    # proxy_hide_header Upgrade;

    add_header X-Cache $upstream_cache_status;

    #Set Nginx Cache
    
    
    set $static_filecEx33dtz 0;
    if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" )
    {
    set $static_filecEx33dtz 1;
    expires 1m;
        }
    if ( $static_filecEx33dtz = 0 )
    {
    add_header Cache-Control no-cache;
    }
}

#PROXY-END/

然后打开网站就能看到成功了,然后记得在网站根目录下配置一下config.json

配置config.json的时候记得重启docker或者重启下容器。保持config.json同步到容器里面参考如下网站

名称说明
valuesrss订阅链接(必填)
refreshrss订阅更新时间间隔,单位分钟(必填)
autoUpdatePush自动刷新间隔,默认为0,不开启。效果为前端每autoUpdatePush分钟自动更新页面信息,单位分钟(非必填)
nightStartTime日间开始时间 ,如 06:30:00
nightEndTime日间结束时间,如 19:30:00
https://www.nodeseek.com/post-117926-1


扫描二维码,在手机上阅读!
标签: none

非特殊说明,本博所有文章均为博主原创。

评论啦~