在telegram中我们可以通过和一个名为BotFather的机器人交互来申请我们自己的机器人,具体步骤如下
如果上一步执行成功那么botfather会返回该机器人的token,大概长这样
123456789:ABCDEfghiJK4314daDSadSa7
记住这个token,到这里机器人就创建好了
进入机器人信息页面,点击更多,点击添加到群组,选择一个群组即可
获取群组chat_id#
通常来说我们都需要让机器人在一个群组里工作,所以首先我们需要将机器人添加到我们指定的群组,在群组里发送随意消息并@这个机器人,比如我的机器人
hello @isnppBot
然后浏览器打开这个链接,注意替换为你的token
https://api.telegram.org/bot/getUpdates
你看到的是一个json,格式如下
{
"ok": true,
"result": [
{
"update_id": 414941268,
"message": {
...
},
"chat": {
"id": -465512321,
...
},
...
}
]
}
从中找到chat.id这就是当前群组的id,以后发消息就是发到这个id.
telegram发送消息的方式类似与钉钉机器人,都是向一个api发送http请求,而且对于同一个APItelegram支持GET和POST两种请求方式.请求的api格式如下
https://api.telegram.org/bot<token>/<method>
其中token为你的机器人token,method为telegram给定的方法,在获取群组chat_id那一步就使用了telegram的其中一个方法(getUpdates),其他方法后面会介绍
请求api时有些方法需要携带参数,telegram支持的传参方式/类型如下
URL查询参数
application/x-www-form-urlencoded
application/json
multipart/form-data(上传文件使用这个content-type)
对于每次请求telegram都会有一个响应,响应的内容是一个json,格式如下
{
"ok": true,
"result": ...
}
其中返回的result可以是telegram定义的对象或者是对象的列表