免费和开源,它在2015年宣布了一个新的机器人API,允许第三方为ESP32创建BOT,该机器人将消息传递应用程序用作主要通信接口。这意味着我们可以使用它来控制我们的智能家庭应用程序和其他智能设备。因此,在本文中,我们将讨论一种控制智能设备并了解其状态的新方法。您是对的,我们将使用社交媒体应用程序“电信”来控制它们。
我们以前做过这样的项目。
•将bot与 Pi使用:共享文本和文件
•使用电报应用程序的 Pi GPIO控制
因此,如果您有兴趣,则必须检查一下。
什么是?
这是基于跨平台的即时消息,视频通话和VoIP服务。端到端的加密聊天仅用于秘密聊天,而服务器 - 信赖/客户端服务器加密用于云聊天。
但是,使其与其他此类消息平台不同的是创建机器人的能力。
机器人是基于AI的应用程序,可以配置为提供许多不同的功能,例如发送有关天气或有用的新闻文章的信息,一些预先配置以发送提醒,有些可以播放音乐或创建待办事项列表,等等。
今天,我们还将创建一个将与我们的ESP32通信的机器人。
项目概述
在本教程中,我们将使用该机器人来控制与ESP32板连接的LED。您可以控制任何引脚连接到任何其他设备或组件,而不是LED。
基于ESP32的电报机器人的要求
由于该项目是一个繁重的项目,因此不需要太多的硬件,但是在软件方面有很多步骤可以在本文中讨论。
硬件要求:
ESP32开发委员会
软件要求:
IDE
特定库
电报应用
制作电报机器人
正如我们之前讨论的那样,它使我们能够创建具有不同功能的几个机器人。对于我们的项目,我们将使用它创建一个简单的机器人。剩余的命令语句和答复将在ESP板本身上编码电报,该本身将使用聊天ID与我们的机器人进行通信。我们将在本文中进一步讨论这些问题。解决此问题后,我们可以将注意力转向构建机器人。
•从Play商店安装。
•安装后,如果您没有帐户,请创建一个帐户并按照以下步骤操作以使您的TG机器人工作。
•首先,搜索“”,然后单击如下所示。或在智能手机T.Me/上打开此链接。
•是一个预建的电报机器人,可让您创建,管理和删除机器人。
•单击开始按钮,然后选择 /
•给您的机器人一个名称和用户名。
•如果成功创建了该机器人,您将收到一条消息,其中包含一个链接以访问新创建的bot和bot令牌。机器人令牌是一个唯一的ID,我们以后将使用它与Bot进行通信。
获取您的聊天ID
用户ID是每个聊天,组和用户的唯一号码,可以帮助识别用户和聊天。在这个项目中,任何具有机器人链路的人都可以与机器人进行交互。为了防止任何未经授权的访问,我们可以使用唯一的用户ID对其进行加密。
通过这样做,每次ESP从机器人收到消息时,它会检查ID是否对应于存储在其中的ID,然后仅执行命令。
获取用户ID的步骤:
•在您的帐户中,搜索“ IDBOT”或在智能手机T.Me/上打开此链接。
•与机器人开始对话,然后输入 /getID。您将获得使用用户ID的答复。
•请注意用户ID,因为我们以后将使用它。
安装机器人库
我们将使用IDE对ESP32板进行编程。因此,请确保您在PC上安装了IDE和板包装。我们需要在IDE中安装两个库,并且使用这些库将使编码过程变得更加容易,更方便。
为了与机器人建立通信,我们将使用Brian Lough创建的通用机器人库,该库为BOT API提供了一个简单的接口。
请按照以下步骤安装库的最新版本。
1。单击此链接以下载通用机器人库。
2。转到草图> 库> add.zip库…
3。添加您刚下载的库。就是这样。完成库的安装。
有关库的更多信息,您可以查看“机器人”页面。
图书馆:
您还必须安装库。请按照下面的步骤安装库。
1。转到草图> 库>管理库。
2。搜索“”。
3。选择可用的最新版本。
4。安装库。
我们已经安装了所有必需的库。
基于ESP32的电报机器人编程
我们必须以一种从机器人发送的任何消息,比较用户ID并根据接收到的消息打开LED。
在代码的第一部分中,我们首先导入所需的库。
之后,我们初始化了变量以存储您的Wi-Fi的SSID和密码。
同样,我们定义容纳机器人令牌和聊天ID的变量。您需要将凭证放入这些变量中。
之后,我们使用它创建了一个新的WiFi客户端。
使用令牌和客户端创建机器人,我们先前保存了。
两个变量,用于每x秒检查一次新的电报消息。在我们的示例中,我们将每1000毫秒一次检查新消息。我们可以通过更改金额来更改延迟时间以满足我们的特定需求。
()函数保存在新消息到达时发生的选项卡。
我们需要获取消息的聊天ID并将其存储在变量中。此ID使我们能够确定谁发送了消息。
如果它与您的聊天ID()不同,则意味着其他人已向您的机器人发送了一条消息。如果是这种情况,我们需要忽略所有消息并等待新消息。
否则,这意味着该消息是从有效用户发送的,因此我们将其保存在文本变量中并检查其内容。
该变量保存了发件人的名称。
如果我们收到 /开始消息,我们将向ESP32发送有效的命令。如果您忘记了控制板的特定命令,则此功能非常有用。
我们可以通过在聊天机器人对象上使用()方法并将接收器的聊天ID,消息和解析模式传递给聊天机器人,将消息非常简单地发送到聊天机器人。
在我们的具体示例中,我们将将消息发送到存储在其上的ID上,并将保存在变量上的消息发送。
如果收到/消息,请打开LED并发送消息以确认我们已收到消息。另外,使用新状态更新变量。
在/消息上执行类似的操作。
最后,使用 /状态检查接收到的消息,检查当前的GPIO状态并相应地发送消息。
初始化Wi-Fi并将ESP连接到我们之前定义的网络SSID和密码。
在loop()中,我们每1000毫秒(即1秒)检查一次新消息。
当新消息到达时,调用()函数。
这结束了我们代码的工作。现在,您只需要从IDE中选择适当的板和端口上传tg群组,这很好。
基于ESP32的电报机器人测试
现在我们已经完成了所有设置。通过IDE将上述代码上传到ESP32板。上传草图时telegram电脑端,不要忘记选择正确的板和端口。
上传草图后,按板上的en/重置按钮,板开始执行代码。打开串行显示器,等待板连接到Wi-Fi路由器。现在,打开,转到提供的链接,输入 /启动飞机中文包,然后使用机器人开始对话。
现在,您可以通过输入相应的命令来控制LED或了解状态。
本文是从
1896年,德国柏林中央电报办公室的室内景观。发送电报的电报时的场景。发送第一台电报的设备。 (由陈方提供的照片)在2022年的最···[…]
热天空飞机航空战的介绍3D中文版本副本的小米版是一个有趣的角色扮演开发手机游戏。经典的动漫角色,更有趣,更丰富多彩的游戏玩···[…]
哈佛大学提供的课程各不相同,可提供多达3,700个课程。如果您参加每门课程,则需要四百年!当然,没有人可以完成所有课程。相反,···[…]
中文电报的简介电报中文版是一个强大的通信应用程序,可为用户提供快速,安全和方便的聊天和通信功能。以下将在中文版的电报中引···[…]