使用 Telegram Bot 在智能手机上发送通知和警报

概述

Telegram 提供了创建 Telegram Bots 的可能性,这些机器人被视为第三方应用程序。因此,在本教程中,我们将演示如何创建 Telegram Bot
并配置 ThingsBoard 规则引擎,以便能够使用 Rest API 调用扩展将通知发送到 Telegram App。

用例

本教程基于创建和清除警报教程及其用例。我们将重用上述教程中的规则链,并将添加更多规则节点以与 Telegram 集成

假设您的设备使用 DHT22 传感器收集温度读数并将其推送到 ThingsBoard。DHT22 传感器适用于 -40 至 80°C 的温度读数。如果温度超出正常范围,我们希望生成警报,并在创建警报时向 Telegram App 发送通知。

在本教程中,我们将配置 ThingsBoard 规则引擎以:

先决条件

我们假设您已完成以下指南并阅读了下面列出的文章:

消息流

在本节中,我们将解释本教程中每个节点的用途:

电报机器人的创建

BotFather是主要的机器人,可帮助您创建新机器人并更改其设置。

机器人创建完成后,您可以为新机器人生成授权令牌。令牌是一个字符串,看起来像这样 - '110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw',这是授权机器人所必需的。

先决条件:

获取聊天 ID

在下一步中,我们需要检索聊天 ID。需要聊天 ID 才能通过 HTTP API 发送消息。

有几种获取聊天 ID 的方法:

1
2
3
4
5https://api.telegram.org/bot"YOUR_BOT_TOKEN"/getUpdates"YOUR_BOT_TOKEN" has to be replaced by the authentication token of your bot, e.g.:

https://api.telegram.org/bot110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw/getUpdates

从输出数据中,您可以找到字段“id”这就是所谓的 chat_id。

图片

图片

之后,您可以开始配置规则引擎以使用 Rest API 调用扩展。

配置规则链

在本教程中,我们使用了创建和清除警报教程中的规则链。我们通过添加上面消息流部分中描述的节点来修改规则链创建和清除警报, 并将此规则链重命名为:创建/清除警报并向电报发送通知


以下屏幕截图显示了上述规则链的外观:

图片

图片


以下部分将向您展示如何从头开始修改此规则链。

修改创建/清除警报和发送电子邮件

添加所需的节点

在此规则链中,您将创建 2 个节点,这将在以下部分中进行解释:

节点 A:转换脚本
{"chat_id" : "PUT YOUR CHOSEN CHAT_ID", "text" : "SOME MESSAGE YOU WANT TO RECEIVE"}
1
2
3
4 var newMsg ={};
 newMsg.text = '"' +  msg.name + '"' + " alarm was created for device: " + '"' + metadata.deviceName + '"';
 newMsg.chat_id = 337878729; //has to be replaced by the actual chat id
 return {msg: newMsg, metadata: metadata, msgType: msgType};

图片

节点 B:REST API 调用

图片

发布遥测并验证

为了发布设备遥测数据,我们将使用 Rest API、遥测上传 API为此,我们需要从设备Thermostat Home复制设备访问令牌。

图片

让 post temperature = 99。应该创建警报:

1
2
3curl -v -X POST -d '{"temperature":99}' http://localhost:8080/api/v1/$ACCESS_TOKEN/telemetry --header "Content-Type:application/json"**you need to replace $ACCESS_TOKEN with actual device token**

您应该了解,警报更新时不会将消息发送到 Telegram 应用程序,只有在创建警报时才会发送消息。

最后,我们可以看到收到的消息具有正确的值:

图片

图片

此外,您还可以:


更多消息

如何将 WhatsApp 群聊移至 Telegram

WhatsApp最近的隐私政策更新让用户开始寻找替代方案。除了 Signal Messenger 之···
13 05.2024

如何在 WhatsApp、Telegram 和 Signal 上秘密聊天

不用说,隐私是许多人在使用 WhatsApp、Telegram 和 Signal 等即时通讯应用时的···
11 05.2024

Telegram 照片未显示在手机图库中的 5 个修复

修复 Telegram 照片未在图库中显示的问题Telegram 应用程序需要相关权限才能下载照片并···
09 05.2024

如何停止 Telegram 或 Signal 上的联系人加入警报

停止联系加入电报或信号警报当您的联系人列表中的某人加入 Signal 或 Telegram 时,您会···
06 05.2024