Hootrix#29 信息显示为一行
信息显示末尾添加消息发送人的username 可以直接点击此用户名发起私聊
config.yaml 不考虑旧版本的配置文件兼容性问题
开通api 建议请使用新注册的Telegram账户
/start
/newbot
bot的name
bot的username
得到 token to access the HTTP API
基于Debian 11 环境
apt update
apt install -y pip
pip install telethon peewee PySocks diskcache PyYAML asyncstdlib
获得压缩包地址
cd
wget -N https://github.com/crazypeace/keyword_alert_bot/archive/refs/heads/master.zip
unzip master.zip
cd keyword_alert_bot-master/
修改如下字段
phone 改为你的新Telegram账户的电话号码
username 改为你的新Telegram账户的username
python3 ./main.py
脚本窗口提示你输入验证码,同时,你的新Telegram账户会收到一个验证码
将这个验证码输入到脚本窗口
apt install -y screen
screen
python3 ./main.py
crontab -e
第一次运行会提示你用哪个编辑器,选你喜欢的就好,小白推荐用nano,操作起来和Win的notepad比较像
输入下面这行再保存
@reboot ( sleep 120 ; python3 /etc/keyword_alert_bot-master/main.py )
意思是每次重启后,等待120秒,再执行后面那句shell命令
用于提醒 频道/群组 关键字消息
如果想订阅群组
消息,确保普通TG账户加入该群组不需要验证。
原理:tg命令行客户端来监听消息,使用bot来发送消息给订阅用户。
👉 Features:
-
关键字消息订阅:根据设定的关键字和频道来发送新消息提醒
-
支持正则表达式匹配语法
-
支持多频道订阅 & 多关键字订阅
-
支持订阅群组消息
-
支持私有频道ID/邀请链接的消息订阅
👉 Todo:
- 私有群组订阅和提醒
- 私有频道消息提醒完整内容预览
- 多账号支持
- 扫描退出无用频道/群组
/subscribe 免费 https://t.me/tianfutong
/subscribe 优惠券 https://t.me/tianfutong
使用js正则语法规则,用/包裹正则语句,目前可以使用的匹配模式:i,g
# 订阅手机型号关键字:iphone x,排除XR,XS等型号,且忽略大小写
/subscribe /(iphone\s*x)(?:[^sr]|$)/ig com9ji,xiaobaiup
/subscribe /(iphone\s*x)(?:[^sr]|$)/ig https://t.me/com9ji,https://t.me/xiaobaiup
# xx券
/subscribe /([\S]{2}券)/g https://t.me/tianfutong
开通api 建议请使用新注册的Telegram账户
运行环境 python3.7+
首次运行需要用tg账户接收数字验证码,且输入密码(telegram API触发)
$ pipenv install
$ pipenv shell
$ python3 ./main.py
- update telethon
依赖库telethon可能会有旧版本不可用的情况或者其他BUG,请最好是通过定时任务去执行依赖更新。
e.g.
0 0 1 * * cd /home/keyword_alert_bot && pipenv update telethon > /dev/null 2>&1
- 查看日志发现个别群组无法接收消息,软件客户端正常接收
请尝试更新telethon解决问题🤔,我也很无助。
-
订阅群组消息,机器人没任何反应 Hootrix#20
-
ModuleNotFoundError: No module named 'asyncstdlib', No module named '...'
$ pipenv install
目的:根据关键字订阅频道消息
支持多关键字和多频道订阅,使用英文逗号`,`间隔
关键字和频道之间使用空格间隔
主要命令:
/subscribe - 订阅操作: `关键字1,关键字2 https://t.me/tianfutong,https://t.me/xiaobaiup`
/unsubscribe - 取消订阅: `关键字1,关键字2 https://t.me/tianfutong,https://t.me/xiaobaiup`
/unsubscribe_all - 取消所有订阅
/list - 显示所有订阅列表
---
Purpose: Subscribe to channel messages based on keywords
Multi-keyword and multi-channel subscription support, using comma `,` interval.
Use space between keywords and channels
Main command:
/subscribe - Subscription operation: `keyword1,keyword2 https://t.me/tianfutong,https://t.me/xiaobaiup`
/unsubscribe - unsubscribe: `keyword1,keyword2 https://t.me/tianfutong,https://t.me/xiaobaiup`
/unsubscribe_all - cancel all subscriptions
/list - displays a list of all subscriptions