电报中怎么添加机器人
如题,什么环境下需要用到这个方法呢?
假如你的网络业务通知是通过短信发送管理员的,接纳这种方法可以节流短信费用。
还可以用来发送简报给管理员,发送通知或推广信息到群组,想想是不是一个很棒的主意!
试想你有一个外贸独立站,在天天00:00的时间你想要知道前一天网站的PV,订单量,销售额等等,首先你想到的肯定是打开网站后台察看,这固然没错,但是假如到时间你的Telegram主动收到一条消息,为你推送这些消息,是不是很酷,并且免费。更多玩法全靠你的想象力!
本文实用人群
电报 (
Telegram
) 需要科学上网才能用,国内用不了,有跨境电商,国外业务的小同伴应该会用到,它是一个聊天工具,类似微信,相当机动,有大量的API接口可以使用,今日我们要说的就是机器人接口!
创建机器人
电报的机器人实在就是一个聊天对象,体现情势和你添加的好友一样,只是名字需要以 bot 末端,不区分大小写。
要使用机器人发消息给自己或群组,先得有一个机器人,创建一个属于自己的机器人很easy,添加BotFather这个账号,依次发送以下内容即可:
-
YourNameBot
(给你的机器人取名字,以 Bot 末端,不区分大小写,直接发送已往即可,假如重名了会提示重新输入)
/start
/newbot
有的小同伴大概不知道怎么添加
BotFather
,任意找一个好友,给他发送 “
@BotFather
” 然后点击这条消息即可与
BotFather
对话了。
如图,创建成功后
BotFather
会返回一个
token
,如上图所示,这是用来调用API接口的,先记下背面会用到。
预备会话
上面我们创建了“
YourNameBot
”这个机器人,要与之回话,在任意聊天窗口发送 “
@YourNameBot
” 然后点击这条消息即可打开与
YourNameBot
的聊天。
假如你需要机器人发送消息给群组,还需要把机器人拉入到群组中。
特殊留意:需要先与机器人之间创建会话,机器人才能下发消息,不然机器人无法主动发送消息,牢记!
通过阅读电报机器人API文档得知,机器人发送文本消息需要以下三个变量:
-
token
(创建机器人时已得到) -
chat_id
(聊天ID) -
message
(要发送的消息,这个由你输入即可,要么是网站后台程序天生的报表数据等等,支持emoji心情哦)
还差
chat_id
还没有,要怎么获取呢,添加
userinfobot
获取你的ID,和上面一样,在任意聊天窗口发送“
@userinfobot
”然后点击这条消息即可打开与
userinfobot
的聊天,发送任意消息给
userinfobot
它会返回你的信息,此中包含一个ID,这就是我们需要的
chat_id
至此,我们已经预备好了全部的须要条件,只需要写点代码来下发消息即可。
开始写代码
我们接纳PHP实现,使用其他语言的小同伴请当成伪代码来看,参考官方文档轻松实现消息下发。
文档地点: https://core.telegram.org/bots/api#sendmessage
接纳
telegram-bot/api
这个开源的SDK,用Composer安装SDK到项目中:
composer require telegram-bot/api
或前去 https://github.com/TelegramBot/Api 下载此SDK手动参加到自己的项目。
PHP发送代码:
/** * 使用BotAPI发送文本消息给个人或群组 * * @return boolean */ public function send() { $token = '你机器人的token'; $chat_id = '个人ID或群组ID'; $message = '不用上班的程序员'; try { $bot = new \TelegramBot\Api\BotApi($token); $m = $bot->sendMessage($chat_id, $message); if ($m instanceof \TelegramBot\Api\Types\Message) { return true; } return true; } catch (\Exception $e) { return false; } }
假如你不使用PHP,可以通过CURL来测试下发消息,CURL代码如下:
curl -X POST “https://api.telegram.org/bot<token>/sendMessage
" -d "
chat_id
=
-xxx
&
text
=
不用上班的程序员
"
更换内里的 <
token
> 为你机器人的token,更换
-xxx
为你的
chat_id
怎样获取电报群组的ID?
上面我们通过
userinfobot
这个机器人获取个人的
chat_id
, 使得机器人可以发消息给个人,群组则没措施通过这种方法获取其ID。
通过下面的步骤可以得到群组ID:
- 在群里发送任意消息
-
打开这个网址 https://api.telegram.org/bot <更换成你机器人的
token
, 包括尖括号>/getUpdates, 页面会输出一段JSON -
查找 id:
-xxx
的一段值,这里的
-xxx
就是群组ID,机器人下发消息的时间的chat_id字段使用这个即可发送消息到群组了
至此我们已经可以通過逞序触发电报机器人下发消息给个人或群组了,只需要在你后台程序合适的地方触发即可,要么设立定时使命来触发下发消息或报表。
除了发送文本消息,还可以发送图片,语音,视频,动画,文件等等。
能看到这里,说明你已经有了许多奇思妙想,可以应用到自己的业务中,立刻试试吧!假如没时间,就先点赞收藏下吧,转头逐步看!
关于电报机器人另有任何问题请关注订阅号 “
不用上班的程序员
” 与我讨论,订阅号回答 “电报机器人” 获取PHP实当代码!
You have to use @BotFather , send it command: /setjoingroups There will be dialog like this:
YOU: /setjoingroups
BotFather: Choose a bot to change group membership settings.
YOU: @YourBot
BotFather: ‘Enable’ – bot can be added to groups. ‘Disable’ – block group invitations, the bot can!’t be added to groups. Current status is: DISABLED
YOU: Enable
BotFather: Success! The new status is: ENABLED.
After this you will see button “Add to Group!” in your bot’s profile.
我正在使用我的机器人来报告重要新消息,但当我使用
sendMessage
该频道时,我收到以下错误:
{"ok":false,"error_code":403,"description":"Error: Forbidden: bot is not a participant of the channel"}
在 变动日记中, 他们提到通过客户端无法向频道发送消息,但是另一种方法是什么呢?
那么,问题是,怎样将我的机器人添加到频道?
本文网址:
http://www.1cm8858.com/d/2020614103750_7303_2100201697/home
Ten articles before and after
telegram福利资源老司机开车群-电报telegram技巧分享
github下载telegram群组聊天消息-电报telegram技巧分享
line越来越贵Telegram会取代台湾下一个主流通讯软体吗?-电报telegram技巧分享
你也用如何评价只使用telegram做内部沟通程序这一行为?-电报telegram技巧分享
telegram让你的支持主题样式/皮肤-电报telegram技巧分享
sporttelegramtelegramxbeta-电报telegram技巧分享
【小白干货帖】纸飞机(telegram)傻瓜式中文安装全教程菲律宾群开车-电报telegram技巧分享
【工具教程】telegram电报的下载、汉化和使用方法与中文设置-电报telegram技巧分享