利用telegram bot定时推送消息

有时候手机不在身边或者在开会什么的,不是很紧急的事情,闹钟就很尴尬,于是有了创建bot定时推送消息达到提醒的想法

创建bot

点击:https://telegram.me/botfather
或者tg搜索botfather

依次输入:

/start
/newbot

按步骤设置bot名称等

最终获得API,输出如下:

Use this token to access the HTTP API:
8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU //这个就是API
Keep your token secure and store it safely, it can be used by anyone to control your bot.

同时开启群组权限

/setprivacy

选择刚刚创建的bot

改为:Disable

创建群组

1.新建一个群组
2.搜索你的机器人
3.将机器人拉进群组
4.获取群组ID,浏览器访问

https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/getUpdates

找到这条

"chat":{"id":-666666666,"title":"groupname","type":"group","all_members_are_administrators":true}

-666666666即为群组ID

发送消息

发送文本

curl -k --data chat_id="-666666666" --data "text=测试" "https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/sendMessage"

进阶文本

date=$(vnstat -d);curl -k --data chat_id="-666666666" --data "text=$date" "https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/sendMessage"

vnstat -d可以改为你需要输出文本的linux命令

发送图片

本地图片:

curl -v -F "chat_id=-666666666" -F photo=@/root/test.jpg https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/sendPhoto

网络图片(仅支持https)

curl -k --data chat_id="-666666666" --data "photo=https://www.imcxx.com/test.jpg" "https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/sendPhoto"

API反代

NGINX:

server
    {
        listen 443 ssl http2;
        #listen [::]:443 ssl http2;
        server_name tgbot.imcxx.com;

        #SSL配置
        ssl_certificate ***;
        ssl_certificate_key ***;

    #设置DNS,不然会报502
        resolver 1.1.1.1;

    #反代配置
        location ~* ^/bot {
        proxy_buffering off;
        proxy_pass      https://api.telegram.org$request_uri;
        }
    }

备注

也可以用浏览器直接发送

文本:

https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/sendMessage?chat_id=-666666666&text=测试

图片:

https://api.telegram.org/bot8888888888:AAHAUPoCt9IjH0F237911iotchCpGqZtLUU/sendPhoto?chat_id=-666666666&photo=https://www.imcxx.com/test.jpg
最后修改:2022 年 12 月 16 日 04 : 34 PM