产品定价 立即试用
云平台
北美地区
告警时发送邮件
入门 文档 指南 API 常见问题
目录

告警时发送邮件

本指南介绍如何配置ThingsBoard,在创建告警时自动向用户发送邮件通知。
通过Notification Center下发基于告警的邮件通知,扩展了 创建与清除告警 的使用场景。


使用场景

假设制冷设备定期向ThingsBoard上报温度遥测。

  • 正常工作温度范围:2°C至5°C
  • 超出该范围的任何值均视为异常。

当满足该条件时:

  • 告警规则将创建告警。
  • 向责任人用户发送邮件通知。

该配置可及时感知设备问题并加快响应。


前置条件

在继续前,请确保已完成以下步骤:

  1. 完成 创建与清除告警 教程,已配置告警创建与清除规则。
  2. 至少添加一个 Customer User,用于接收告警通知。
  3. 配置邮件服务器,用于发送邮件通知。

建议先阅读以下ThingsBoard文档:

这些概念对理解和正确配置下文的方案很重要。


配置Notification Center

Notification Center负责向用户下发通知。

由三个核心部分组成:

  • Recipients:定义接收通知的用户。
  • Templates:定义通知内容和下发方式。
  • Rules:定义发送通知的条件。

上述三部分均需配置才能启用基于告警的通知。


步骤1:配置通知接收人

Recipients 定义接收通知的目标用户。

  1. 进入 Notification Center ⇾ Recipients
  2. 点击 + Add recipient
  3. 配置接收人组:
     • Name:Refrigeration operators
     • Type:Platform users
     • User filter:Customer users
     • Customer:Customer A(请指定您的customer)
  4. 点击 Add

Customer A 代表负责监控制冷设备的所有customer用户。


步骤2:创建通知模板

Templates 定义通知内容和下发方式。

  1. 进入 Notification Center ⇾ Templates
  2. 点击 + Add template
  3. 配置通用设置:
     • Name:Device temperature notification
     • Type:Alarm
     • Delivery methods:Email
  4. 点击 Next
  5. 定义邮件内容:
     • Subject
    1
    
    ${alarmType} on ${alarmOriginatorName} device
    

     • Message

    1
    
    A ${alarmType} has been detected on the ${alarmOriginatorName} device: ${details.data} °C.
    

    模板变量:
     • ${alarmOriginatorName} – 触发告警的设备名称。
     • ${details.data} – 由告警规则填充的告警详情。

  6. 点击 Add 保存模板。

步骤3:创建通知规则

通知 Rules 定义何时发送通知以及使用哪些组件。

  1. 进入 Notification Center ⇾ Rules
  2. 点击 + Add rule
  3. 配置规则参数:
     • Rule name:Unacceptable device temperature
     • Trigger:Alarm
     • Template:Device temperature notification
     • Recipients:Refrigeration operators
  4. 点击 Next
  5. 配置触发条件:
     • Alarm type list:Any type
     • Alarm severity list:Any severity
     • Notify on:Alarm created
  6. 点击 Add

此规则确保仅在创建新告警时发送邮件。


验证

为验证配置,请上报超过设定温度阈值的遥测。

发布测试遥测
示例:上报温度值 7°C,以触发高温告警。

1
curl -v -X POST https://thingsboard.cloud/api/v1/$ACCESS_TOKEN/telemetry --header Content-Type:application/json --data "{temperature:7}"

⚠️ 请将 $ACCESS_TOKEN 替换为设备访问令牌。

预期结果

  • 为设备创建新告警。
  • 向Customer A的所有用户发送邮件通知。
  • 邮件包含设备名称和上报的温度值。

如未收到邮件,请检查垃圾邮件文件夹并确认邮件服务器配置。

仅在新创建告警时发送邮件通知,更新已有告警时不会发送。


另请参阅

后续步骤