电报机器人配置
一、为什么要开发电报机器人
事情的发展是这样的,对于某些特定的事件,我需要知道它当前的状态和将来大概的状态,根据这些状态做出反响。好比一小时后即将下雨,我将收到带伞的通知。在2012年,我的做法是使用IFTTT(If this, then that),在这个平台上,我可以设置假如有雨,那么给我发邮件要么短信。在其时看来,以为自己很潮流,但在别人眼中,我就是个给自己制造垃圾邮件的Nerd。
到了2015年,我有了开发本领,开始打仗微信相关的接口和社区开源代码,于是摆设了自己的微信机器人。相较于IFTTT,设置条件不再受限,我可以从网上抓取我关注的信息,一有变更,就通过微信发送给自己,可以是向机器人主动扣问,也可以是被动吸收通知。此时小同伴们的态度有了变化,都以为这个工具很神奇,同时,需要社群运营的小同伴也找到我,盼望我能帮他们做一些微信社群管理的机器人,在这期间,微信机器人的劣势也显现出来——微信官方不勉励使用机器人,天天需要重启机器人,对于一些运营号动辄封号,辛劳运营了好久的微信号说没就没。
虽然我很早就开始打仗数字钱币,但开始关注电报(Telegram)却是2018年,我发现电报对机器人是拥抱的态度,提供了非常具体的文档和帮助,甚至另有一个专门用来创建机器人的机器人——BotFather。之前微信机器人的缺点一扫而空,接下来就开始了我的电报机器人开发之路,这是一条孤单又布满宝藏的道路。
通过阅读本文,你将拥有开发浅易电报机器人的本领。假如你对本文有任何疑问要么有互助意向,欢迎私信联系。
二、电报机器人能做什么
前文说到,我为了获取信息而做的一系列挣扎,最终选择了合适我的方案。在信息年代,提前拥有信息,就可以或许使用信息不对称赢利,信息的重要性可见一斑。机器人不但可以或许获取信息,还能分析、管理信息。除此之外,电报机器人还提供了很多大概性。
1、获取、分析、管理信息。
2、用户管理、社群运营。
3、应用、小游戏、支付等。
三、开始动手开发机器人
首先,预备开发环境,由于Node.js开箱即用,不需要设置庞杂的环境变量,因此本教程以Node.js为主。固然其他语言也是可以实现的。进入 Node.js官网 下载最新版本,无脑安装即可。
打开下令行工具,验证环境是否预备好:
以及:
你将看到你已经安装的版本号,完成这一步之后,就可以开始动手开发了。
新建一个项目文件夹,在下令行中进入该文件夹,初始化项目:
然后根据提示填写信息即可,有些不确定的信息,默认即可,完成后,安装开源项目:
npm install telegram-bot-api --save
稍等半晌,去喝杯茶。
至此,开发环境已经完成,在开始写详细代码前,我们需要使用电报创建一个机器人。下载、注册、登陆就一带而过了(需要科学上网)。找到BotFather,发送“/start“,向它申请创建机器人:
最后天生的密钥,需要你记载并保存好,我们会用到它来开发机器人。
如今,电报上机器人已经创建完毕了,你可以找到并和自己的机器人聊天,但现在,你的机器人还没有任何智力,也无法给你反馈。
我们在项目文件夹中创建一个文件index.js:
const
telegram
=
require
(
'telegram-bot-api'
)
//2.0.0
const
teleBotToken
=
"XXX"
// 换成你的Token
const
api
=
new
telegram
({
token
:
teleBotToken
})
const
mp
=
new
telegram
.
GetUpdateMessageProvider
()
api
.
setMessageProvider
(
mp
)
api
.
start
().
then
(()
=>
{
console
.
log
(
'API is started'
)
})
.
catch
(
console
.
err
)
api
.
on
(
'update'
,
update
=>
{
// 处置信息逻辑
let
message
=
update
.
message
if
(
message
.
text
)
{
const
msgParam
=
{
chat_id
:
message
.
chat
.
id
,
text
:
message
.
text
}
api
.
sendMessage
(
msgParam
)
}
})
运行:
假如没有报错的话,我们的机器人就运行成功,可以看一下效果,一个复读机就上线了:
四、机器人的摆设
像上面所说,在当地运行机器人既不稳定,也不环保。我建议将你的机器人摆设在云上,为此,你先要有一台国外云服务器,搭配PM2来管理机器人的状态:
插播一下程序员情怀时候:
__/\\\\\\\\\\\\\____/\\\\____________/\\\\____/\\\\\\\\\_____ _\/\\\/////////\\\_\/\\\\\\________/\\\\\\__/\\\///////\\\___ _\/\\\_______\/\\\_\/\\\//\\\____/\\\//\\\_\///______\//\\\__ _\/\\\\\\\\\\\\\/__\/\\\\///\\\/\\\/_\/\\\___________/\\\/___ _\/\\\/////////____\/\\\__\///\\\/___\/\\\________/\\\//_____ _\/\\\_____________\/\\\____\///_____\/\\\_____/\\\//________ _\/\\\_____________\/\\\_____________\/\\\___/\\\/___________ _\/\\\_____________\/\\\_____________\/\\\__/\\\\\\\\\\\\\\\_ _\///______________\///______________\///__\///////////////__
安装完毕后,在当前文件夹运行:
pm2 start index.js --name rb_bot
运行成功后,你将看到:
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐ │ id │ name │ mode │ ↺ │ status │ cpu │ memory │ ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤ │ 0 │ rb_bot │ fork │ 0 │ online │ 0.1% │ 40.1mb │ └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
使用pm2可以方便地管理种种应用,详细操作可以去 PM2官网 看看。
五、写在最后
我能不能从零写一个自己的APP,用来处置这些信息呢?完全可以,但着力不讨好。这样需要开发一系列的轮子,出于服从和获客的考量,我选择了电报这个平台。我们站在巨人的肩膀上,才能做出更出色的事。假如微信对机器人持开放态度,那么我会思量重新开始做微信机器人,但在这之前,电报大概是最合适方案。
软件层面的机器人用途极其广泛,基本上可以处置全部信息问题,甚至可以和物联网联动,完全取决于你的想法。固然,它也有范围性,对于前端交互要求较高的应用,还是老诚实实写APP比较好。
合适自己的才是最好的。
预备工作
注册
- 打开telegram搜索“BotFather”
- 输入消息窗口敲入以下下令
/newbot
表现:Alright, a new bot. How are we going to call it?
Please choose a name for your bot.
这里我们输入任意名称
会提示:Good. Now let’s choose a username for your bot. It must end in
bot
. Like this, for example: TetrisBot or tetris_bot.
输入 share45_bot 可以根据需求定名
- 假如表现:Sorry, this username is invalid.就需要变动
-
直到表现:Done! Congratulations on your new bot. You will find it at
t.me/share45_bot
. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you’ve finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.
Use this token to access the HTTP API:
xxxxxxxxxxxx 此处为api密钥(重要)
Keep your token secure and store it safely, it can be used by anyone to control your bot.
For a description of the Bot API, see this page:
https://core.telegram.org/bots/api
机器人信息设置
/mybots
会表现六个选项:
API Token:表现api密钥
Edit Bot:编辑机器人
Bot Settings:机器人设置
Payments:支付
Delete Bot:删除机器人
Back…ots List:返回上一级列表
Edit Name:机器人名称
Edit Description:机器人描述
Edit About:机器人介绍
Edit Botpic:机器人头像
Edit Commands:机器性命令
Back to bot:返回
表现:OK. Send me a list of commands for your bot. Please use this format:
command1 – Description
command2 – Another description
/rss 表现当前rss订阅地点 加raw表现地点链接
/sub 订阅一个rss:/sub 订阅网站地点
/unsub 退订一个rss:/unsub 退订网站地点
/unsubbthis 使用此下令回答想要退订的 RSS 消息即可退订
/export 导出为OPML
最后检察
搜索框搜索我们的机器人名称,进入到频道
就会看到我们之前设置好的相关信息
在消息输入框输入“/”就可以看到我们之前设置好的下令
假如有需要修改的内容,可以到BotFather进行再次设置
至此,我们的电报机器人就创建和设置完毕了。
备注
本节概述了telegram-bot是什么,以及开发职员为什么要使用它。
它还应该提到电报机器人中的任何大型主题,并链接到相关主题。由于telegram-bot的文档是新的,您大概需要创建这些相关主题的初始版本。
使用BotFather创建一个bot
在Telegram中打开与 @BotFather 的聊天,然后单击
/start
下令。
得到下令列表后选择下令
/newbot
以获取此消息:
好吧,一个新的机器人。我们怎么称谓它?请为您的机器人选择一个名称。
输入机器人的名称,可以是任何名称,然后发送。之后,BotFather将要求您的机器人的用户名:
好。如今让我们为您的机器人选择一个用户名。它必须以
bot
结束。像这样,比方:TetrisBot或tetris_bot。
那必须以“僵尸”结束。假如您使用了所需的用户名或不可用,请使用其他名称重试。
最后创建机器人并表现以下消息。您必须使用bot令牌与Telegram通讯,因此请确保将其写下来。
完成!庆贺你的新机器人。你可以在telegram.me/???bot找到它。您如今可以为机器人添加关于部分和设置文件图片的描述,请参阅/ help以获取下令列表。趁便说一句,当你完成你的酷机器人的创建时,假如你想要一个更好的用户名,请ping我们的Bot支持。在实行此操作之前,请确保机器人完全正常运行。
使用此令牌访问HTTP API:xxx:xxx
使用得到的令牌,您如今可以通过调用网站
https://api.telegram.org/botBOTTOKEN/sendmessage?chat_id=YOURCHATID&text=YOURTEXT
发送测试消息
电报机器人用于交互有两种通用方法:推送和拉取方法。使用pull方法你必须每隔一段时间调用
/getupdates
来检察是否有新的消息发送到你的机器人。 push方法对您的脚本使用webhook(
/setwebhook
方法),每次用户向您的机器人发送消息时都市调用该脚本。
提供的信息是一个 JSON格式的文件 ,包含您需要的全部信息(发件人和邮件)。
您可以使用多种语言(PHP,Python,Lua …)编写机器人,只要他们可以将webhook作为输入处置而且可以调用网站。
有关具体信息,您可以随时使用BOT API文档,您可以在 此处 找到它们 。
本文网址:
http://www.1cm8858.com/d/202091518034_503_4287258382/home
Ten articles before and after
什么是明传电报什么是明传电报?-电报telegram技巧分享
iphone4苹果4敲打打字机铃声哪里下载?急要啊-电报telegram技巧分享
苏联档案解密(下):还原真实的毛泽东揭秘解放战争中令粟裕最紧张战役-电报telegram技巧分享
微信群聊信息同步至「N号房」之后-电报telegram技巧分享
网约女无数的某收费电报群主大神joker酒店玩弄高颜值刺青绿茶婊今年刚落网约群主推特大神-电报telegram技巧分享
币用biyong揭底!被爆严重用户隐私安全漏洞-电报telegram技巧分享