Binance Monitor
by @xuhaoting
实时监控币安官方公告和 @binance、@binancezh 两个 X 账号动态,检测新内容后即时通过飞书通知用户。
clawhub install binance-announce-monitor📖 About This Skill
Binance Announce Monitor - 币安公告 + X 账号监控技能
实时监控币安(Binance)官方公告和 X 账号动态,检测到新内容时立即通过飞书通知用户。
功能
使用场景
安装
# 技能已内置,无需额外安装
确保 Node.js 18+ 已安装
配置
编辑 config.json(可选,使用默认值可跳过):
{
"checkIntervalSeconds": 30,
"targetUser": "ou_xxxxxxxxxxxxxx",
"channel": "feishu"
}
| 参数 | 默认值 | 说明 |
|------|--------|------|
| checkIntervalSeconds | 30 | 检查间隔(秒) |
| targetUser | 当前用户 | 通知接收者 open_id |
| channel | feishu | 通知渠道 |
使用方法
启动监控
cd skills/binance-announce-monitor
node monitor.js
后台运行(推荐)
# 使用 nohup
nohup node monitor.js > monitor.log 2>&1 &或使用 screen
screen -S binance-monitor
node monitor.js
Ctrl+A, D 退出屏幕
或使用 systemd(生产环境)
sudo systemctl enable binance-monitor
sudo systemctl start binance-monitor
查看状态
# 查看运行日志
tail -f monitor.log查看已读公告记录
cat binance-announce-state.json查看待发送通知
cat binance-pending-notify.json
停止监控
# 找到进程
ps aux | grep binance-monitor停止
kill 或如果使用 screen
screen -r binance-monitor
Ctrl+C
通知格式
📢 币安新公告{公告标题}
{公告摘要}
👉 查看详情
文件说明
| 文件 | 说明 |
|------|------|
| monitor.js | 主监控脚本 |
| sender.js | 通知发送器(可选,独立部署) |
| config.json | 配置文件(可选) |
| binance-announce-state.json | 已读公告状态(自动生成) |
| binance-pending-notify.json | 待发送通知队列(自动生成) |
| binance-sent-ids.json | 已发送记录(自动生成) |
API 来源
https://www.binance.com/bapi/composite/v1/public/cms/article/list/query48(最新公告)注意事项
1. 不要设置过短的检查间隔 - 低于 10 秒可能触发 API 限流
2. 保持脚本运行 - 停止后会错过期间的公告
3. 定期清理状态文件 - 避免文件过大(脚本自动保留最近 100 条)
4. 网络要求 - 需要能访问 www.binance.com
扩展
添加其他交易所
复制 monitor.js 并修改 API URL:
// 示例:OKX 公告
const OKX_ANNOUNCE_URL = 'https://www.okx.com/api/v5/support/announcements';// 示例:Bybit 公告
const BYBIT_ANNOUNCE_URL = 'https://api.bybit.com/spot/v1/announcement';
添加其他通知渠道
修改 queueNotification 函数,支持:
多用户支持
在 config.json 中添加用户列表:
{
"users": [
{"id": "ou_xxx1", "channel": "feishu"},
{"id": "ou_xxx2", "channel": "telegram"}
]
}
故障排除
无法获取公告
# 测试 API 连通性
curl -s "https://www.binance.com/bapi/composite/v1/public/cms/article/list/query?type=1&pageNo=1&pageSize=5&catalogId=48" | head
通知未发送
# 检查通知队列
cat binance-pending-notify.json检查已发送记录
cat binance-sent-ids.json查看日志
tail -f monitor.log
重复通知
删除状态文件重置:
rm binance-announce-state.json
rm binance-sent-ids.json
版本历史
许可证
MIT
贡献
欢迎提交 Issue 和 PR!
作者: OpenClaw Community 最后更新: 2026-03-12