如何将连接到华为IoTDA的设备状态告警转发到邮件或短信
目录
引言
工作原理
SMN的设置步骤
邮箱确认订阅
IoTDA平台的设置
验证测试
结语
引言
在物联网应用中,及时获取设备状态告警信息至关重要。华为IoTDA(设备接入服务)提供了强大的规则引擎功能,可以将设备状态告警信息通过邮件或者短信转发给指定的接收者。
工作原理
工作原理是当物联网设备上报属性时,IoTDA平台利用设备联动的功能设置规则,将满足规则的消息推送给消息通知服务(SMN),SMN再将消息发送到邮箱或者手机。其中邮件是免费的,而短信通常会产生一些费用。
SMN的设置步骤
1. 登录华为云:访问华为云官方网站,登录您的账号。
2. 进入消息通知服务(SMN):在华为云控制台中找到“消息通知服务”,并进入其控制台。
3. 创建主题:
点击“创建主题”,输入主题名称(如“设备告警通知”)并点击“确定”。
此主题将用于接收设备告警信息。
4. 添加订阅:
点击“添加订阅”,选择刚才创建的主题。
在“协议”中选择“邮件”,填写接收告警通知的邮箱地址。
点击“确定”完成订阅。
邮箱确认订阅
SMN平台进行订阅后,邮箱会收到如下邮件,按照邮件的提示进行确认操作。
如果是短信订阅也会有类似的确认短信。
IoTDA平台的设置
-
登录IoTDA控制台:访问设备接入服务控制台。
-
创建产品和设备:
-
点击“创建产品”,选择协议类型(如MQTT),填写产品名称等信息。可以参考我以前的博文:【HZHY-AI300G智能盒试用连载体验】在华为IoTDA平台上建立设备_hzhy-ai300g智盒-CSDN博客
-
在产品详情中上传模型文件或者设置物模型。这里的物模型是必须的,否则无法设置条件。
-
点击“注册设备”,填写设备注册参数,保存设备ID和设备密钥。
-
设置规则引擎:
-
在规则引擎中点击“添加规则”,设置触发条件。
-
例如,选择“设备属性触发”,选择产品和设备,设置服务类型、属性、操作和值。
-
添加执行动作:
-
上报告警:选择“上报告警”,设置告警等级、隔离级别、告警名称和内容。
-
发送通知:选择“发送通知”,选择SMN服务区域和刚才创建的主题。
-
填写邮件标题和内容。邮件的内容只能是文本,无法把温度等属性带入进去。其实SMN本身是支持属性替换的,但是通过IoTDA转发过去的不支持。
验证测试
我使用MQTTX模拟发送了数据到IoTDA平台(可以参考MQTTX连接华为云IoTDA_华为iot mqtt-CSDN博客):
{"services": [{"serviceId": "温湿度","properties": {"温度": 40.07, "湿度":15.88 } } ] }
过了一会儿,邮箱就收到如下信息:
这个处理是有明显延迟的,大概数秒到1分钟。
结语
通过以上步骤,可以将连接到华为IoTDA的设备状态告警信息成功转发到指定的邮件地址。这样,设备管理者可以及时收到告警通知,快速响应设备问题。
作者:神一样的老师