本部分将指导您如何将数据从模块发送至物联网设备管理门户。本部分结束后,您将学会如何向门户发送属性、告警、日志信息和静态属性。

先决条件

假设下述条件成立:

  • 已安装 Web 浏览器并连接至网络。
  • 已持有管理门户帐号。
  • 已配备支持 deviceWISE 云 API 的 Telit 910 模块。
  • 已了解如何连接至模块并执行 AT 命令。
  • 已熟悉泰利特 AT 终端应用。
  • 您的模块已连接至物联网设备管理门户并注册为物。

发送属性数据

大多数物联网应用程序都包含时间序列传感器数据的捕获,而在物联网设备管理门户中,该数据以属性的形式表示。  

  1. 执行以下 AT 命令:
    ## 发布一个名为“sensor1”的属性,其数值为123。
    AT#DWSEND=0,property.publish,key,sensor1,value,123
    #DWSEND: 3
    OK
    ## 等待一个 #DWRING 通知表示我们收到了一个我们发送的 API 请求对应的回复。
    #DWRING: 1,3,2
     
    ## 执行 AT#DWRCV 命令以查看回复,注意“3”匹配上述 #DWSEND 命令的返回值。
    ## “0” (响应中的第二个参数)表示成功。
    AT#DWRCV=3
    OK
    #DWDATA: 3,0,2,OK
  2. 查看管理门户上的 Thing(物)页面(本指南第 3 部分最后一页),您将会看到显示有传感器数值的图。


    此时图中只显示了一个数据点,我们还可以再添加几个数据点,这样就能得到丰富的图。
  3. 执行以下 AT 命令:
    AT#DWSEND=0,property.publish,key,sensor1,value,444
    #DWSEND: 4
    OK
     
    #DWRING: 1,4,2
     
    AT#DWRCV=4
    OK
    #DWDATA: 4,0,2,OK
     
    AT#DWSEND=0,property.publish,key,sensor1,value,666
    #DWSEND: 5
    OK
     
    #DWRING: 1,5,2
    AT#DWRCV=5
    OK
    #DWDATA: 5,0,2,OK
    此时将向“sensor1”属性提交两个额外的数值 444 和 666。
  4. 刷新管理门户中的物详细信息页面,以查看新增的数据点。

更改属性图

现在您已经学会了如何查看数据,为了获得更佳体验,您可以将图放大,使其更容易阅读,为此,您需要修改定义物的特性的物模型。

  1. 选择 Overview(概况)选项卡中 Thing definition(物模型)字段旁的 Edit definition(编辑模型)图标。
    此时将显示该物的物模型页面。
  2. 选择 Presentation(呈现方式)选项卡,更改模型的视图参数。

  3. Graph option(图形选项)从“Small graphs”(小图)更改为“Large graphs”(大图)。
  4. 选择表单底部的 Update(更新)按钮以更新模型。
  5. 现在,物的 Overview(概况)选项卡应该类似于如下:

发布告警数据

告警是一种特殊的数据点,由状态进行表示,而不是数值。告警通常用于表示一种具有一系列不同状态的值,如开/关、打开/关闭或满/空。  

配置告警

与属性不同,告警无法自动定义,因此在发布告警数据前,必须在物模型中定义告警。

  1. 选择 Overview(概况)选项卡中 Thing definition(物模型)字段旁的 Edit definition(编辑模型)图标。
    此时将显示该物的物模型页面。
  2. 选择 Alarms(告警)选项卡,更改模型的视图参数。

  3. 选择 Alarm Definition(告警定义)按钮,添加新的告警定义。
  4. Key(键值)中输入“door_alarm”,在 Name(名称)字段中输入“Door Alarm”。
  5. 选择两次 New alarm state(新告警状态)按钮,添加两个告警状态。

  6. 接下来您将添加不同状态的告警,状态的数量不受限制。在本案例中,我们添加了门告警,其状态包括 Open(打开)和 Closed(关闭)。我们还可以为状态信息选择不同的显示颜色。
  7. 将两个新的状态设置为 Closed(关闭)和 Open(打开),并选择您想要配置的任何颜色。
  8. 配置应该类似于如下内容:


    注:在使用 API 时,状态会以整数的形式传递,因此第一个状态是状态 0,第二个状态是状态 1,依此类推。
  9. 选择 Update(更新)按钮,保存更改。
  10. 现在您可以在物的 Overview(概况)选项卡上,看到未初始化的告警。

  11. 然后您就可以在模块中设置告警了。

发布告警数据

接下来您就可以返回 Telit AT 终端发布您的第一个告警了。

  1. 执行以下 AT 命令:
     ## 发布一个名为“door_alarm”的告警,其状态为0。
    AT#DWSEND=0,alarm.publish,key,door_alarm,state,0
    #DWSEND: 7
    OK
    ## 等待一个 #DWRING 通知表示我们收到了一个我们发送的 API 请求对应的回复。
    #DWRING: 1,7,2
     
    ## 执行 AT#DWRCV 命令以查看回复,注意“7”匹配上述 #DWSEND 命令的返回值。
    ## “0” (响应中的第二个参数)表示成功。
    AT#DWRCV=7
    OK
    #DWDATA: 7,0,2,OK
  2. 刷新 Web 浏览器中的物详细信息页面,您将看到新的告警状态:

  3. 要将状态设置为打开,请执行以下 AT 命令:
     ## 发布一个名为“door_alarm”的告警,其状态为 1。
    AT#DWSEND=0,alarm.publish,key,door_alarm,state,1
    #DWSEND: 8
    OK
    ## 等待一个 #DWRING 通知表示我们收到了一个我们发送的 API 请求对应的回复。
    #DWRING: 1,8,2
    
    ## 执行 AT#DWRCV 命令以查看回复,注意“8”匹配上述 #DWSEND 命令的返回值。
    ## “0” (响应中的第二个参数)表示成功。
    AT#DWRCV=8
    OK
    #DWDATA: 8,0,2,OK
  4. 再次刷新 Web 浏览器中的物详细信息页面,查看更新后的状态:

  5. 现在您就可以轻松地将告警数据发布至物联网设备管理门户

您已完成第 4 部分

继续模块第 5 部分 - 将数据从物联网设备管理门户发送至模块