跳至主要內容

星纵 LoRaWAN UG65 网关使用消息规则转发数据到子设备

约 585 字大约 2 分钟

星纵 LoRaWAN UG65 网关使用消息规则转发数据到子设备

客户使用星纵 LoRaWAN UG65 网关接入 ThingsCloud,网关连接多个 LoRa 子设备,这个示例介绍如何利用 ThingsCloud 消息规则,使平台上的网关设备收到的上报数据,转发给相应的子设备。

UG65 网关硬件端的配置,这里不做详细介绍,可参考另一篇博客:

略有不同的是,在这个示例中,我们不在网关硬件端对数据做解码,而是让网关将原始数据直接上报到 ThingsCloud,通过平台的消息规则转发到子设备,再由不同子设备的规则来解码数据。

网关设备接收属性上报

首先,确认在网关设备的调试日志中,看到属性上报消息,如下图:

通过分析消息 JSON 信息,可以看到 datadevEUI,如下图:

这两个字段非常重要,含义如下:

  • data:设备上报的数据,使用 base64 格式编码。
  • devEUI:代表数据来自子设备的地址,用于转发给子设备

创建属性上报规则

接下来,为网关设备或所属设备类型,创建一个属性上报规则,如下:

添加操作,选择向当前网关上报子设备属性,如下:

云函数中填写一段简单的 Javascript 代码,如下图:

module.exports = function (report_attributes) {
    /**
     * report_attributes:   上报的属性对象,作为函数参数传入
     */

    var data = {};
    if (report_attributes.devEUI) {
        data[report_attributes.devEUI] = report_attributes;
    }

    return data;
}   

创建好的规则是这样的,如下图:

添加子设备及地址

在 ThingsCloud 平台上的网关设备中,添加子设备,并且设置子设备地址,使用前边的 devEUI,注意大小写必须一致。

详细了解 ThingsCloud 消息规则,请浏览 消息规则

子设备收到转发的消息

大功告成,子设备收到了从网关转发的消息,在设备调试日志中可以看到,如下图:

更多功能