找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 11697|回复: 55

[k2p] 通过Telegram Bot推送消息

  [复制链接]
发表于 2018-12-9 14:15 | 显示全部楼层 |阅读模式
本帖最后由 心理有数 于 2018-12-9 14:19 编辑

-----------------------------

本文首发地址:第七间夜店

-----------------------------
本文基于Shell,所以不限制设备,也不限制系统,只要你能够SSH/Telnet/WinScp连接设备且设备能够跨越长城防火墙,均适用。
Telegram bot配合其他脚本可以很方便的推送信息到客户端,这么强大的一个工具如果不加以利用就太浪费了。

首先在这里申请一个Bot。

输入
  1. /newbot
复制代码

新建一个Bot,然后按照提示输入Bot名与用户名,随后会返回Bot的链接与Token,切记要妥善保管自己的Token。

接下来新建一个群组/频道,并将你的Bot加入到群组/频道中,随后任意发送一条消息,
  1. curl -k "https://api.telegram.org/bot788888883:AAxxxEqxxxNdyvfxxxaaxxxoSn-ZOxxx5cc/getupdates"
复制代码
会返回一个json串,解析一下,如下
  1. {
  2.   "ok": true,
  3.   "result": [
  4.     {
  5.       "update_id": 288888867,
  6.       "channel_post": {
  7.         "message_id": 6,
  8.         "chat": {
  9.           "id": -1001888888811,
  10.           "title": "每日价格优惠",
  11.           "type": "channel"
  12.         },
  13.         "date": 1588888606,
  14.       }
  15.     }
  16. ]
  17. }
复制代码
记录下chat id,下一步发送消息要用。
通过Get请求的方法来发送消息
  1. token="788888883:AAxxxEqxxxNdyvfxxxaaxxxoSn-ZOxxx5cc"
  2. id="-1001888888811"
  3. message="whatever you want push"
  4. curl -k \
  5. "https://api.telegram.org/bot${token}/sendmessage" \
  6. -d "chat_id=${id}&text=${message}"
复制代码
这样推送的消息体中不能含有换行符与“&”符号,会报错,可以改为Urlencode
  1. turlmessage=$(echo $message | sed -e ':a;N;$!ba;s/\n/%0a/g' -e 's/&/%26/g')
复制代码
将其封装为函数,减少代码重复
在root文件夹下新建AllFunctions文件,并将token,id改为自己对应的值
  1. #!/bin/bash
  2. function tg_bot()
  3. {
  4. token="788888883:AAxxxEqxxxNdyvfxxxaaxxxoSn-ZOxxx5cc"
  5. id="-1001888888811"
  6. message=$(echo $1 | sed -e ':a;N;$!ba;s/\n/%0a/g' -e 's/&/%26/g')
  7. curl -k \
  8. "https://api.telegram.org/bot${token}/sendmessage" \
  9. -d "chat_id=${id}&text=${message}"
  10. }
复制代码
这样,在需要推送消息的脚本中只需增加两行即可实现推送消息
  1. #!/bin/bash
  2. . /root/Allfunctions
  3. ....
  4. .....
  5. .........
  6. ...........
  7. tg_bot ${you want push}
复制代码
下面是我创建的一个定时推送折扣信息的Telegram Bot
如果有广告嫌疑,请联系删除
Telegram Bot功能十分强大,可以做到很多事情,小生只是初学者,只能够用来推送一些消息与设备状态,后续还会继续研究。

我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-12-9 14:35 | 显示全部楼层
看看。。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 15:00 | 显示全部楼层
看看有什么用
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 15:02 | 显示全部楼层
学习学习了!!!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 15:08 | 显示全部楼层
还是不会用啊


我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 15:08 来自手机 | 显示全部楼层
感谢分享!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 16:08 | 显示全部楼层
感谢分享!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 16:18 | 显示全部楼层
貌似很有意思~~~
感谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 16:34 | 显示全部楼层
越来越强大了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 19:42 | 显示全部楼层
可以做到很多事情
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 19:44 来自手机 | 显示全部楼层
学习一下开机
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 19:45 | 显示全部楼层

可以做到很多事情?
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 20:37 | 显示全部楼层
看看这个BOT到底能干啥
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-12-9 21:30 | 显示全部楼层
新增的mtproxy才使得telegram在内陆更好用些

点评

待我研究一下,之前一直是挂的$$R  详情 回复 发表于 2018-12-9 21:53
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2018-12-9 21:53 | 显示全部楼层
ntgeralt 发表于 2018-12-9 21:30
新增的mtproxy才使得telegram在内陆更好用些

待我研究一下,之前一直是挂的$$R

点评

tg点会自动添加https://t.me/proxy?server=35.220.182.81&port=8888&secret=9aebb37b50ecc4d0ed6257b3728107b5 但是报警设备也要墙外才能用,这点比较麻烦。我之前做 arduino红外+wifi模块用企业微信推送,看来用  详情 回复 发表于 2018-12-9 22:17
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-19 22:14

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表