Difference between revisions of "Connectivity/AdvHeartBeat"

From ESS-WIKI
Jump to: navigation, search
Line 1: Line 1:
 
<parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black">
 
<parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black">
 
=== This page contains the following errors: ===
 
=== This page contains the following errors: ===
<div style="font-family:monospace;font-size:12px">error on line 215 at column 287: attributes construct error </div>
+
<div style="font-family:monospace;font-size:12px">error on line 215 at column 251: attributes construct error </div>
 
=== Below is a rendering of the page up to the first error. ===
 
=== Below is a rendering of the page up to the first error. ===
 
</parsererror>
 
</parsererror>
 
= AdvHeartBeat Protocol =
 
= AdvHeartBeat Protocol =
  
== <span style="color:#0070c0;">AdvHeartBeat Topic & Payload</span> ==
+
== AdvHeartBeat Topic & Payload ==
 +
<pre>Type: Response
 +
Direction: Agent -> Server
 +
Topic: /cagent/admin/<devID>/notify
 +
QoS: 0
 +
Retained: 0
 +
Payload: ~ 35 character
 +
{"hb":{"devID":"0017000E40000001"}}
 +
</pre>
  
Type: Response
+
== Client Site ==
Direction: Agent -> Server
 
Topic: /cagent/admin/<devID>/notify
 
QoS: 0
 
Retained: 0
 
Payload: ~ 35 character
 
{"hb":{"devID":"0017000E40000001"}}
 
 
 
== <span style="color:#0070c0;">Client Site</span> ==
 
  
 
:Agent needs send "AdvHeartBeat" message ( refer to AdvHeartBeat Topic & Payload ) by period as below picture.
 
:Agent needs send "AdvHeartBeat" message ( refer to AdvHeartBeat Topic & Payload ) by period as below picture.
Line 22: Line 22:
 
[[File:AdvHeartBeat-FC-1.jpg|500x400px|AdvHeartBeat Protocol]]
 
[[File:AdvHeartBeat-FC-1.jpg|500x400px|AdvHeartBeat Protocol]]
  
== <span style="color:#0070c0;">Server Site</span> ==
+
== Server Site ==
  
 
#Server would send "Get Capability" and "Change AdvHeartBeat sending rate" after receiving a "Connect Info" message.
 
#Server would send "Get Capability" and "Change AdvHeartBeat sending rate" after receiving a "Connect Info" message.
Line 32: Line 32:
 
##Server sends a re-connect message to this device.
 
##Server sends a re-connect message to this device.
  
== <span style="color:#0070c0;">Re-Connect Message</span> ==
+
== Re-Connect Message ==
  
 
:If Server aware any problem of a device's status/information. Server will send a "Re-Connect" Message to Agent. Agent will send a "Connect Info" to Server after receiving a re-connect message. You can refer below for detail.
 
:If Server aware any problem of a device's status/information. Server will send a "Re-Connect" Message to Agent. Agent will send a "Connect Info" to Server after receiving a re-connect message. You can refer below for detail.
  
 
[[File:AdvHeartBeat-FC-2.jpg|800x500px|AdvHeartBeat Protocol]]
 
[[File:AdvHeartBeat-FC-2.jpg|800x500px|AdvHeartBeat Protocol]]
 
+
<pre>Description: Server sends "Re-Connect" message for asking agent re-send its "Connect Info".
Description: Server sends "Re-Connect" message for asking agent re-send its "Connect Info".
+
Type: Request
Type: Request
+
Direction: Server -> Agent  
Direction: Server -> Agent  
+
Topic: /cagent/admin/<devID>/agentcallbackreq
Topic: /cagent/admin/<devID>/agentcallbackreq
+
QoS: 0
QoS: 0
+
Retained: 0
Retained: 0
+
Payload:
Payload:
+
{
{
 
    "susiCommData": {
 
      "commCmd": 125,
 
      "handlerName": "general",
 
      "response": {
 
          "statuscode": 4,
 
          "msg": "Reconnect"
 
      }
 
    }
 
}
 
 
 
Description: Agent will send "Connect Info" after receiving a "Re-Connect" message.
 
Type: Response
 
Direction: Agent -> Server
 
Topic: /cagent/admin/<devID>/agentinfoack
 
QoS: 2
 
Retained: 0
 
Payload:
 
{
 
 
   "susiCommData": {
 
   "susiCommData": {
    "devID":"0017000E40000001",
+
      "commCmd": 125,
    "hostname":"AAA",
+
      "handlerName": "general",
    "sn":"0017000E40000001",
+
      "response": {
    "mac":"0017000E40000001",
+
          "statuscode": 4,
    "version":"3.1.23",
+
          "msg": "Reconnect"
    "type":"SenHub",
+
      }
    "product":"WISE-1020",
+
  }
    "manufacture":"",
+
}
    "status":"1",
+
</pre>
    "commCmd":1,
+
<pre>Description: Agent will send "Connect Info" after receiving a "Re-Connect" message.
    "requestID":30002,
+
Type: Response
    "agentID":"0017000E40000001",
+
Direction: Agent -> Server
    "handlerName":"general",
+
Topic: /cagent/admin/<devID>/agentinfoack
    "sendTS":160081026
+
QoS: 2
    }
+
Retained: 0
}
+
Payload:
 +
{
 +
  "susiCommData": {
 +
    "devID":"0017000E40000001",
 +
    "hostname":"AAA",
 +
    "sn":"0017000E40000001",
 +
    "mac":"0017000E40000001",
 +
    "version":"3.1.23",
 +
    "type":"SenHub",
 +
    "product":"WISE-1020",
 +
    "manufacture":"",
 +
    "status":"1",
 +
    "commCmd":1,
 +
    "requestID":30002,
 +
    "agentID":"0017000E40000001",
 +
    "handlerName":"general",
 +
    "sendTS":160081026
 +
  }
 +
}
 +
</pre>
  
== <span style="color:#0070c0;">Connect Info</span> ==
+
== Connect Info ==
  
 
Agent Client sends the "Connect Info" to Server for on-line notification. Server would send "Get Capability" to get capability of this agent device and "Change AdvHeartBeat rate" to sync with System's sending rate.
 
Agent Client sends the "Connect Info" to Server for on-line notification. Server would send "Get Capability" to get capability of this agent device and "Change AdvHeartBeat rate" to sync with System's sending rate.
  
 
[[File:AdvHeartBeat-FC-6.jpg|800x400px|Agent Connect Info]]
 
[[File:AdvHeartBeat-FC-6.jpg|800x400px|Agent Connect Info]]
 
+
<pre>Description: gent Client sends the "Connect Info" to Server for on-line notification.
Description: gent Client sends the "Connect Info" to Server for on-line notification.
+
Type: Info
Type: Info
+
Direction: Agent -> Server
Direction: Agent -> Server
+
Topic: /cagent/admin/<devID>/agentinfoack
Topic: /cagent/admin/<devID>/agentinfoack
+
QoS: 2
QoS: 2
+
Retained: 0
Retained: 0
+
Payload:
Payload:
+
{
{
 
  "susiCommData": {
 
    "devID":"0017000E40000001",
 
    "hostname":"AAA",
 
    "sn":"0017000E40000001",
 
    "mac":"0017000E40000001",
 
    "version":"3.1.23",
 
    "type":"SenHub",
 
    "product":"WISE-1020",
 
    "manufacture":"",
 
    "status":"1",
 
    "commCmd":1,
 
    "requestID":30002,
 
    "agentID":"0017000E40000001",
 
    "handlerName":"general",
 
    "sendTS":160081026
 
    }
 
}
 
 
 
== <span style="color:#0070c0;">Get Capability</span> ==
 
 
 
Server will send a "Get Capability" message to Agent after receiving a "Connect Info" message.<br/>Agent will send back below messages when receiving a "Get Capability" message.
 
 
 
#OS Info
 
#All handler's capability ( ex: HWM, KVM, HDD, IoTGW...)
 
#All SenHub's "Connect Info" message. ( Send by IoTGWHandler )
 
#Update the latest data of IoTGW ( Update by IoTGWHandler )
 
 
 
[[File:AdvHeartBeat-FC-3.jpg|500x600px|Get Agent's Capability]]
 
 
 
Description: Server will send a "Get Capability" message to Agent after receiving a "Connect Info" message
 
Type: Request
 
Direction: Server -> Agent
 
Topic: /cagent/admin/<agentID>/agentcallbackreq
 
QoS: 0
 
Retained: 0
 
Payload:
 
{
 
    "susiCommData": {
 
      "requestID":1001, 
 
      "catalogID": 4,
 
      "commCmd":2051,
 
      "handlerName":"general"
 
    }
 
}
 
 
 
Description: Agent will send back OS Info to Server after receiving "Get Capability" message.
 
Note: This feature will be implemented in version 3.2.
 
Type: Response
 
Direction: Agent -> Server
 
Topic: /cagent/admin/<devID>/agentactionreq
 
QoS: 0
 
Retained: 0
 
Payload:
 
{
 
  "susiCommData":{
 
      "osInfo": {
 
          "cagentVersion":"3.1.23",
 
          "cagentType":"IoTGW",
 
          "osVersion":"SnailOS",
 
          "biosVersion":"",
 
          "platformName":"",
 
          "processorName":"SnailGW",
 
          "osArch":"SnailX86",
 
          "totalPhysMemKB":123,
 
          "macs":"000E40ABCDEF",
 
          "IP":"192.168.0.100"
 
      },
 
      "commCmd":116,
 
      "requestID":109,
 
      "agentID":"0000000E40ABCDEF",
 
      "handlerName":"general",
 
      "sendTS":1466730390
 
    }
 
}
 
 
 
Description: Agent will send all handlers' capability to server.
 
Type: Response
 
Direction: Agent -> Server
 
Topic: /cagent/admin/<agentID>/agentactionreq
 
QoS: 0
 
Retained: 0
 
Payload: ( ex: HWM )
 
{
 
    "susiCommData": {
 
        "infoSpec": {
 
            "HWM": {
 
                "e": [
 
                    {"n": "v01","type": "volt","u": "V","max": 20,"min": 10},
 
                    {"n": "v02","type": "volt","u": "V","max": 20,"min": 10},
 
                    {"n": "t01","type": "temp","u": "Cel","max": 100,"min": 10},
 
                    {"n": "V143360","type": "current","u": "A","max": 100,"min": 10}
 
                ],
 
                "bn": "HWM"
 
            },
 
            "requestID": 2001,
 
            "commCmd": 2052,
 
            "catalogID": 4,
 
            "agentID": "000014DAE996BE04",
 
            "sendTS": 1417000000004,
 
            "handlerName": "general"
 
        }
 
    }
 
  }
 
 
 
Description: IoTGW Handler will update latest value of IoTGW.
 
Type: Response
 
Direction: Agent -> Server
 
Topic: /cagent/admin/<devID>/deviceinfo
 
QoS: 0
 
Retained: 0
 
Payload:
 
{
 
  "susiCommData":{
 
    "data": {
 
      "IoTGW": {
 
          "WSN": {
 
            "WSN0": {
 
              "Info":{
 
                  "e":[
 
                        {"n":"SenHubList","sv":"0017000E40000000,0017000E40000001"},
 
                        {"n":"Neighbor","sv":"0017000E40000000,0017000E40000001"},
 
                        {"n":"Name","sv":"WSN0"},
 
                        {"n":"Health","v":"100.000000"},
 
                        {"n":"sw","sv":"1.2.1.12"},
 
                        {"n":"reset","bv":"0"}
 
                      ],
 
                "bn":"Info"
 
              },
 
            "bn":"0007000E40ABCDEF",
 
            "ver":1
 
          },
 
        "bn":"WSN"
 
        },
 
    "ver":1
 
    }
 
  },
 
  "commCmd":2055,
 
  "requestID":2001,
 
  "agentID":"0000000E40ABCDEF",
 
  "handlerName":"general",
 
  "sendTS":160081025
 
  }
 
}
 
 
 
Description: IoTGW Handler will send "Connect Info" for all "SenHub" devices.
 
Type: Response
 
Direction: Agent -> Server
 
Topic: /cagent/admin/<devID>/agentinfoack
 
QoS: 0
 
Retained: 0
 
Payload:
 
{
 
 
   "susiCommData": {
 
   "susiCommData": {
 
     "devID":"0017000E40000001",
 
     "devID":"0017000E40000001",
Line 264: Line 111:
 
     "sendTS":160081026
 
     "sendTS":160081026
 
   }
 
   }
 +
}
 +
</pre>
 +
 +
== Get Capability ==
 +
 +
Server will send a "Get Capability" message to Agent after receiving a "Connect Info" message.<br/>Agent will send back below messages when receiving a "Get Capability" message.
 +
 +
#OS Info
 +
#All handler's capability ( ex: HWM, KVM, HDD, IoTGW...)
 +
#All SenHub's "Connect Info" message. ( Send by IoTGWHandler )
 +
#Update the latest data of IoTGW ( Update by IoTGWHandler )
 +
 +
[[File:AdvHeartBeat-FC-3.jpg|500x600px|Get Agent's Capability]]
 +
<pre>Description: Server will send a "Get Capability" message to Agent after receiving a "Connect Info" message
 +
Type: Request
 +
Direction: Server -> Agent
 +
Topic: /cagent/admin/<agentID>/agentcallbackreq
 +
QoS: 0
 +
Retained: 0
 +
Payload:
 +
{
 +
  "susiCommData": {
 +
      "requestID":1001, 
 +
      "catalogID": 4,
 +
      "commCmd":2051,
 +
      "handlerName":"general"
 +
  }
 +
}
 +
</pre>
 +
<pre>Description: Agent will send back OS Info to Server after receiving "Get Capability" message.
 +
Note: This feature will be implemented in version 3.2.
 +
Type: Response
 +
Direction: Agent -> Server
 +
Topic: /cagent/admin/<devID>/agentactionreq
 +
QoS: 0
 +
Retained: 0
 +
Payload:
 +
{
 +
  "susiCommData":{
 +
      "osInfo": {
 +
        "cagentVersion":"3.1.23",
 +
        "cagentType":"IoTGW",
 +
        "osVersion":"SnailOS",
 +
        "biosVersion":"",
 +
        "platformName":"",
 +
        "processorName":"SnailGW",
 +
        "osArch":"SnailX86",
 +
        "totalPhysMemKB":123,
 +
        "macs":"000E40ABCDEF",
 +
        "IP":"192.168.0.100"
 +
      },
 +
      "commCmd":116,
 +
      "requestID":109,
 +
      "agentID":"0000000E40ABCDEF",
 +
      "handlerName":"general",
 +
      "sendTS":1466730390
 +
  }
 +
}
 +
</pre>
 +
<pre>Description: Agent will send all handlers' capability to server.
 +
Type: Response
 +
Direction: Agent -> Server
 +
Topic: /cagent/admin/<agentID>/agentactionreq
 +
QoS: 0
 +
Retained: 0
 +
Payload: ( ex: HWM )
 +
{
 +
  "susiCommData": {
 +
      "infoSpec": {
 +
          "HWM": {
 +
              "e": [
 +
                  {"n": "v01","type": "volt","u": "V","max": 20,"min": 10},
 +
                  {"n": "v02","type": "volt","u": "V","max": 20,"min": 10},
 +
                  {"n": "t01","type": "temp","u": "Cel","max": 100,"min": 10},
 +
                  {"n": "V143360","type": "current","u": "A","max": 100,"min": 10}
 +
              ],
 +
              "bn": "HWM"
 +
          },
 +
          "requestID": 2001,
 +
          "commCmd": 2052,
 +
          "catalogID": 4,
 +
          "agentID": "000014DAE996BE04",
 +
          "sendTS": 1417000000004,
 +
          "handlerName": "general"
 +
      }
 +
  }
 +
}
 +
</pre>
 +
<pre>Description: IoTGW Handler will update latest value of IoTGW.
 +
Type: Response
 +
Direction: Agent -> Server
 +
Topic: /cagent/admin/<devID>/deviceinfo
 +
QoS: 0
 +
Retained: 0
 +
Payload:
 +
{
 +
  "susiCommData":{
 +
    "data": {
 +
      "IoTGW": {
 +
        "WSN": {
 +
          "WSN0": {
 +
              "Info":{
 +
                  "e":[
 +
                      {"n":"SenHubList","sv":"0017000E40000000,0017000E40000001"},
 +
                      {"n":"Neighbor","sv":"0017000E40000000,0017000E40000001"},
 +
                      {"n":"Name","sv":"WSN0"},
 +
                      {"n":"Health","v":"100.000000"},
 +
                      {"n":"sw","sv":"1.2.1.12"},
 +
                      {"n":"reset","bv":"0"}
 +
                      ],
 +
              "bn":"Info"
 +
              },
 +
          "bn":"0007000E40ABCDEF",
 +
          "ver":1
 +
          },
 +
        "bn":"WSN"
 +
        },
 +
    "ver":1
 +
  }
 +
},
 +
"commCmd":2055,
 +
"requestID":2001,
 +
"agentID":"0000000E40ABCDEF",
 +
"handlerName":"general",
 +
"sendTS":160081025
 
  }
 
  }
 +
}
 +
</pre>
 +
<pre>Description: IoTGW Handler will send "Connect Info" for all "SenHub" devices.
 +
Type: Response
 +
Direction: Agent -> Server
 +
Topic: /cagent/admin/<devID>/agentinfoack
 +
QoS: 0
 +
Retained: 0
 +
Payload:
 +
{
 +
"susiCommData": {
 +
  "devID":"0017000E40000001",
 +
  "hostname":"AAA",
 +
  "sn":"0017000E40000001",
 +
  "mac":"0017000E40000001",
 +
  "version":"3.1.23",
 +
  "type":"SenHub",
 +
  "product":"WISE-1020",
 +
  "manufacture":"",
 +
  "status":"1",
 +
  "commCmd":1,
 +
  "requestID":30002,
 +
  "agentID":"0017000E40000001",
 +
  "handlerName":"general",
 +
  "sendTS":160081026
 +
  }
 +
}
 +
</pre>
  
 
= Parameters of "AdvHeartBeat Protocol" =
 
= Parameters of "AdvHeartBeat Protocol" =
  
== <span style="color:#0070c0;">Sending Rate</span> ==
+
== Sending Rate ==
 
+
<pre>    Unit: second
    Unit: second
+
Default: 60  
  Default: 60  
+
  Range: 1 ~ 0xFFFFFFFF
    Range: 1 ~ 0xFFFFFFFF
+
        -1 => Agent doesn't send "AdvHeartBeat" message
          -1 => Agent doesn't send "AdvHeartBeat" message
+
</pre>
  
== <span style="color:#0070c0;">Query parameters of "AdvHeartBeat"</span> ==
+
== Query parameters of "AdvHeartBeat" ==

Revision as of 10:47, 29 November 2016

<parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black">

This page contains the following errors:

error on line 215 at column 251: attributes construct error

Below is a rendering of the page up to the first error.

</parsererror>

AdvHeartBeat Protocol

AdvHeartBeat Topic & Payload

Type: Response
Direction: Agent -> Server 
Topic: /cagent/admin/<devID>/notify
QoS: 0
Retained: 0
Payload: ~ 35 character
{"hb":{"devID":"0017000E40000001"}}

Client Site

Agent needs send "AdvHeartBeat" message ( refer to AdvHeartBeat Topic & Payload ) by period as below picture.

AdvHeartBeat Protocol

Server Site

  1. Server would send "Get Capability" and "Change AdvHeartBeat sending rate" after receiving a "Connect Info" message.
  2. Server updates latest update time after receiving a AdvHeartBeat message with its AdvHeartBeat Table( NoSQL ).
  3. Server checks update time of AdvHeartBeat Table only.
  4. If the latest update time is over timeout ( Note: This value is depend on Server. Recommend: 3 x send rate => 3 x 60 = 180 sec => tolerate drop 2 AdvHeartBeat MSG ).
    1. If ( timeout & status is connected ) => changes status to disconnect & send a "Re-Connect" message to this device
  5. If there is latest AdvHeartBeat message in "AdvHeartBeat Table" but there is not device information in device list table ( SQL ).
    1. Server sends a re-connect message to this device.

Re-Connect Message

If Server aware any problem of a device's status/information. Server will send a "Re-Connect" Message to Agent. Agent will send a "Connect Info" to Server after receiving a re-connect message. You can refer below for detail.

AdvHeartBeat Protocol

Description: Server sends "Re-Connect" message for asking agent re-send its "Connect Info".
Type: Request
Direction: Server -> Agent 
Topic: /cagent/admin/<devID>/agentcallbackreq
QoS: 0
Retained: 0
Payload:
{
   "susiCommData": {
      "commCmd": 125,
      "handlerName": "general",
      "response": {
          "statuscode": 4,
          "msg": "Reconnect"
      }
   }
}
Description: Agent will send "Connect Info" after receiving a "Re-Connect" message.
Type: Response
Direction: Agent -> Server
Topic: /cagent/admin/<devID>/agentinfoack
QoS: 2
Retained: 0
Payload:
{
  "susiCommData": {
    	"devID":"0017000E40000001",
    	"hostname":"AAA",
    	"sn":"0017000E40000001",
    	"mac":"0017000E40000001",
    	"version":"3.1.23",
    	"type":"SenHub",
    	"product":"WISE-1020",
    	"manufacture":"",
    	"status":"1",
    	"commCmd":1,
    	"requestID":30002,
    	"agentID":"0017000E40000001",
    	"handlerName":"general",
    	"sendTS":160081026
   }
}

Connect Info

Agent Client sends the "Connect Info" to Server for on-line notification. Server would send "Get Capability" to get capability of this agent device and "Change AdvHeartBeat rate" to sync with System's sending rate.

Agent Connect Info

Description: gent Client sends the "Connect Info" to Server for on-line notification.
Type: Info
Direction: Agent -> Server
Topic: /cagent/admin/<devID>/agentinfoack
QoS: 2
Retained: 0
Payload:
{
  "susiCommData": {
    	"devID":"0017000E40000001",
    	"hostname":"AAA",
    	"sn":"0017000E40000001",
    	"mac":"0017000E40000001",
    	"version":"3.1.23",
    	"type":"SenHub",
    	"product":"WISE-1020",
    	"manufacture":"",
    	"status":"1",
    	"commCmd":1,
    	"requestID":30002,
    	"agentID":"0017000E40000001",
    	"handlerName":"general",
    	"sendTS":160081026
   }
}

Get Capability

Server will send a "Get Capability" message to Agent after receiving a "Connect Info" message.
Agent will send back below messages when receiving a "Get Capability" message.

  1. OS Info
  2. All handler's capability ( ex: HWM, KVM, HDD, IoTGW...)
  3. All SenHub's "Connect Info" message. ( Send by IoTGWHandler )
  4. Update the latest data of IoTGW ( Update by IoTGWHandler )

Get Agent's Capability

Description: Server will send a "Get Capability" message to Agent after receiving a "Connect Info" message
Type: Request
Direction: Server -> Agent 
Topic: /cagent/admin/<agentID>/agentcallbackreq
QoS: 0
Retained: 0
Payload:
{
   "susiCommData": {
      "requestID":1001,  
      "catalogID": 4,
      "commCmd":2051,
      "handlerName":"general"
   }
}
Description: Agent will send back OS Info to Server after receiving "Get Capability" message.
Note: This feature will be implemented in version 3.2.
Type: Response
Direction: Agent -> Server
Topic: /cagent/admin/<devID>/agentactionreq
QoS: 0
Retained: 0
Payload:
{
  "susiCommData":{
      "osInfo": {
         "cagentVersion":"3.1.23",
         "cagentType":"IoTGW",
         "osVersion":"SnailOS",
         "biosVersion":"",
         "platformName":"",
         "processorName":"SnailGW",
         "osArch":"SnailX86",
         "totalPhysMemKB":123,
         "macs":"000E40ABCDEF",
         "IP":"192.168.0.100"
      },
      "commCmd":116,
      "requestID":109,
      "agentID":"0000000E40ABCDEF",
      "handlerName":"general",
      "sendTS":1466730390
   }
}
Description: Agent will send all handlers' capability to server.
Type: Response
Direction: Agent -> Server
Topic: /cagent/admin/<agentID>/agentactionreq
QoS: 0
Retained: 0
Payload: ( ex: HWM )
{
   "susiCommData": {
       "infoSpec": {
           "HWM": {
               "e": [
                   {"n": "v01","type": "volt","u": "V","max": 20,"min": 10},
                   {"n": "v02","type": "volt","u": "V","max": 20,"min": 10},
                   {"n": "t01","type": "temp","u": "Cel","max": 100,"min": 10},
                   {"n": "V143360","type": "current","u": "A","max": 100,"min": 10}
               ],
               "bn": "HWM"
           },
           "requestID": 2001,
           "commCmd": 2052,
           "catalogID": 4,
           "agentID": "000014DAE996BE04",
           "sendTS": 1417000000004,
           "handlerName": "general"
       }
   } 
 }
Description: IoTGW Handler will update latest value of IoTGW.
Type: Response
Direction: Agent -> Server
Topic: /cagent/admin/<devID>/deviceinfo
QoS: 0
Retained: 0
Payload:
{
  "susiCommData":{
    "data": {
      "IoTGW": {
         "WSN": {
           "WSN0": {
              "Info":{
                  "e":[
                       {"n":"SenHubList","sv":"0017000E40000000,0017000E40000001"},
                       {"n":"Neighbor","sv":"0017000E40000000,0017000E40000001"},
                       {"n":"Name","sv":"WSN0"},
                       {"n":"Health","v":"100.000000"},
                       {"n":"sw","sv":"1.2.1.12"},
                       {"n":"reset","bv":"0"}
                      ],
               "bn":"Info"
              },
           "bn":"0007000E40ABCDEF",
           "ver":1
          },
        "bn":"WSN"
        },
    "ver":1
   }
 },
 "commCmd":2055,
 "requestID":2001,
 "agentID":"0000000E40ABCDEF",
 "handlerName":"general",
 "sendTS":160081025
 }
}
Description: IoTGW Handler will send "Connect Info" for all "SenHub" devices.
Type: Response
Direction: Agent -> Server
Topic: /cagent/admin/<devID>/agentinfoack
QoS: 0
Retained: 0
Payload:
{
 "susiCommData": {
   	"devID":"0017000E40000001",
   	"hostname":"AAA",
   	"sn":"0017000E40000001",
   	"mac":"0017000E40000001",
   	"version":"3.1.23",
   	"type":"SenHub",
   	"product":"WISE-1020",
   	"manufacture":"",
   	"status":"1",
   	"commCmd":1,
   	"requestID":30002,
   	"agentID":"0017000E40000001",
   	"handlerName":"general",
   	"sendTS":160081026
  }
}

Parameters of "AdvHeartBeat Protocol"

Sending Rate

    Unit: second
 Default: 60 
   Range: 1 ~ 0xFFFFFFFF
         -1 => Agent doesn't send "AdvHeartBeat" message

Query parameters of "AdvHeartBeat"