返回介绍

PART Ⅰ : 容器云OPENSHIFT

PART Ⅱ:容器云 KUBERNETES

PART Ⅲ:持续集成与持续部署

PART Ⅴ:日志/监控/告警

PART Ⅵ:基础

PART Ⅶ:数据存储、处理

PART VIII:CODE

PART X:HACKINTOSH

PART XI:安全

Telegram机器人

发布于 2024-06-08 21:16:46 字数 9422 浏览 0 评论 0 收藏 0

Telegram Bot是运行在Telegram内部的第三方应用程序,相当于Telegram的一个特殊账户。

用户可以向Telegram Bot发送消息,命令和内联请求等方式与Telegram Bot人进行交互,而Telegram Bot开发者可以通过Telegram Bot API,用https请求方式来控制机器人

  1. 客户端搜索"Botfather"

  2. 查看帮助

  3. 发送"/newboot"来创建Bot机器人,根据提示一步一步进行.(当设置用户名时)

    TOKEN 一定要保护好!以后接口访问都要用到!

  • Telegram有两种api,一种是bot api,一种是telegram api。bot api是基于http访问,telegram api是基于mtproto访问,访问需要加密,相对要复杂一些。后者也可以实现发送消息等功能

  • 可使用PostMan或者Curl等工具发送HTTPS请求调用Bot的API。

  • 当时用Curl命令时可使用"-x"参数设置代理。例如“curl -x 127.0.0.1:3128 -sk https://www.google.com”

Bot API文档链接

1. Bot API相关信息

Bot API支持GETPOST方法的HTTPS请求,URL格式为:

"https://api.telegram.org/bot[你的bot机器人Token]/方法名"

例如:https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getMe

支持一下几种传参方式:

  • URL query string
  • application/x-www-form-urlencoded
  • application/json (except for uploading files)
  • multipart/form-data (use to upload files)

Bot机器人将返回JSON格式的对象,里面会包含返回状态信息

注意:

  • API方法大小写敏感
  • 请求格式必须是UTF-8编码

2. 示例

  • 使用PostMan给Bot机器人发送消息

  • 使用Curl命令给Bot机器人发送消息

    curl -x 梯子IP地址 -sk \
    -X POST \
    https://api.telegram.org/bot90****93:AAF***RfFma8/sendMessage \
    -d 'chat_id=623***17' \
    -d 'parse_mode=Markdown' \
    -d 'text=*Jenkins '$BUILD_NUMBER' *'
    

3. 支持的消息格式

  • MarkDown风格

    *bold text*
    _italic text_
    [inline URL](http://www.example.com/)
    [inline mention of a user](tg://user?id=123456789)
    `inline fixed-width code`
    ​```block_language
    pre-formatted fixed-width code block
    ​
    

    ```

  • HTML风格

    *bold text*
    _italic text_
    [inline URL](http://www.example.com/)
    [inline mention of a user](tg://user?id=123456789)
    `inline fixed-width code`
    ​```block_language
    pre-formatted fixed-width code block
    ​
    

    ```

    • 标签不能嵌套
    • 所有不属于标签或HTML实体的' < '、' > '和' & '符号必须替换为相应的HTML实体 ("<"对应"\<"、">"对应"\>"、"\&"对应"\&")
    • 支持所有数字类型的HTML实体
    • 该API目前仅支持以下命名的HTML实体:' < '、' > '、' & '和' " '

4. 支持的方法

Bot API方法描述
getMe
sendMessage发送文本信息,支持Markdown、HTML格式化的文本信息
forwardMessage
sendPhoto发送图片
sendAudio发送音频,最大50 MB
sendDocument发送文档,最大50 MB
sendVideo发送视频,最大50 MB
sendAnimation发送动图,最大50 MB(支持无声音的GIF或H.264/MPEG-4 AVC格式动图)
sendVoice发送录音,最大50 MB
sendVideoNote
sendMediaGroup
sendLocation发送定位
editMessageLiveLocation
stopMessageLiveLocation
sendVenue
sendContact发送名片
sendPoll发送投票
sendChatAction
getUserProfilePhotos
getFile
kickChatMember
unbanChatMember
restrictChatMember
promoteChatMember
setChatPermissions
exportChatInviteLink
setChatPhoto
deleteChatPhoto
setChatTitle设置聊天室标题
setChatDescription设置聊天室描述
pinChatMessage
unpinChatMessage
leaveChat离开聊天室
getChat查找聊天室
getChatAdministrators获取聊天室管理员
getChatMembersCount获取聊天室成员个数
getChatMember获取聊天室成员
setChatStickerSet
deleteChatStickerSet
answerCallbackQuery
Inline mode methods

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文