JSON_ExDevStatus

JSON message about peripheral status

{
  "ExDevStatus":{
    "OutputModList":[{
/*optional*/
      "OutputMod":{
        "id": , 
/*required, int, wireless output module No.*/
        "seq":"", 
/*required, string, peripheral serial No.*/
        "status":"", 
/*optional, string, wireless output module status, "notRelated"-no wireless output is linked, "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": , 
/*optional, boolean, zone tampering alarm status, true-triggered, false-not triggered*/
        "charge":"",
/*optional, string, battery status, "normal", "lowPower"-low battery*/
        "signal": 
/*optional, int, signal strength, which ranges from 0 to 255*/
        "model":  "DS-PM1-O8-WE",  
/*optional, string, model: "DS-PM1-O8-WE" wireless output module with 8 channels, "DS-PM1-O2-WE" wireless output module with 2 channels*/
        "temperature":  1,  
/*optional, int, temperature*/
        "isViaRepeater":  true,  
/*optional, boolean, whether the signal is forwarded via repeater*/
        "repeaterName":  "test",  
/*optional, string, repeater name, this node is valid when the value of "isViaRepeater" is true*/
        "voltValue":  1,  
/*optional, int, voltage value, unit: V*/
        "currentValue":  1,  
/*optional, int, current value, unit: mA*/
        "powerLoad":  1,  
/*optional, int, power load, unit: W*/
        "energySumVaule":  1,  
/*optional, int, power consumption, unit: Wh*/
        "relayList": [{  
/*optional, array, list of relays*/
          "id":  1,  
/*required, int, input ID*/
          "status":  "on",  
/*optional, string, relay status, "on", "off"*/
          "name":  "test",  
/*optional, string, relay name*/
          "subSystem": [1, 2, 3],  
/*optional, array, related partition*/
          "scenarioType": ["alarm"]  
/*optional, array, scenario type*/
        }],
        "voltValueV20":  1.000  
/*optional, float, voltage value (version 2.0) which is accurate to 3 decimal places, unit: V, this node has higher priority over voltValue*/
      }
    }]
    "OutputList":[{
/*optional*/
      "Output":{  
        "id": ,  
/*required, int, relay No.*/
        "name":"", 
/*optional, string, relay name*/  
        "status":"", 
/*optional, string, relay status, "notRelated"-no relay is linked, "on", "off", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": ,
/*optional, boolean, zone tampering status: "true"-tampered, "false"-not tampered*/
        "charge":"", 
/*optional, string, battery status: "normal", "lowPower"-low battery*/
        "linkage":"",
/*optional, string, relay linked event types: "alarm", "arming", "disarming", "manualCtrl"-manual control*/
        "signal": ,
/*optional, integer, signal strength, which ranges from 0 to 255*/
        "temperature":  1,  
/*optional, int, temperature*/
        "version":  "test",  
/*optional, string, version No, the maximum length is 32 bytes*/
        "accessModuleType":  "transmitter", 
/*optional, string, access module type: "transmitter", "localTransmitter", "multiTransmitter", "localRelay", "keypad"*/
        "relatedAccessModuleID":  1, 
/*optional, int, linked access module ID*/
        "address":  254,
/*optional, int, wired (extended) module address, this node works with accessModuleType*/
        "subSystemList": [1, 2, 3],  
/*optional, array, list of linked partitions*/
        "scenarioType": ["alarm"], 
/*optional, array, scenario type*/
        "relayAttrib":  "wired",
/*optional, string, relay attribute: "wired", "wireless" (default)*/
        "deviceNo":  1
/*optional, int, device No., range:[1,1000]*/
      }
    }],
    "SirenList"[{
/*optional*/
      "Siren":{
        "id": , 
/*required, int, siren No.*/
        "seq":"", 
/*required, string, peripheral serial No.*/
        "name":"", 
/*optional, string, siren name*/  
        "status":"",
/*optional, string, siren status,"notRelated"-no siren is linked, "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": ,
/*optional, boolean, zone tampering alarm status, true-triggered, false-not triggered*/
        "sirenAttrib":"",
/*string, siren attribute: "wired", "wireless"*/
        "charge":"",
/*optional, string, battery status, "normal", "lowPower"-low battery*/ 
        "signal": ,
/*optional, int, signal strength, which ranges from 0 to 255*/
        "deviceNo":  1,  
/*optional, int, device No., range:[1,1000]. After installation, the installer will upload the device No. and the corresponding peripheral/detector information to the ARC for device type recognition*/
        "mainPowerSupply":  true  
/*optional, boolean, main power supply (external power supply is supported for wireless siren): true, false*/
      }
    }],
    "RepeaterList":[{
/*optional*/
      "Repeater":{
        "id": , 
/*required, int, repeater No.*/
        "seq":"", 
/*required, string, peripheral serial No.*/
        "name":"", 
/*optional, string, repeater name*/
        "status":"", 
/*optional, string, repeater status, "notRelated"-no repeater is linked, "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": , 
/*optional, boolean, zone tampering alarm status, true-triggered, false-not triggered*/
        "charge":"",
/*optional, string, battery status, "normal", "lowPower"-low battery*/ 
        "signal": 
/*optional, int, signal strength, which ranges from 0 to 255*/
        "chargeValue":  0,  
/*optional, int, power value, which is between 0 to 100*/
        "model":  "DS-PR1-WE",  
/*optional, string, model: "DS-PR1-WE" (wireless repeater)*/
        "temperature":  0,  
/*optional, int, temperature*/
        "connDevNum":  1,  
/*optional, int, number of devices*/
        "mainPowerSupply":  true,  
/*optional, boolean, AC power supply status: true (connected), false (disconnected)*/
        "batteryStatus":  "normal",  
/*optional, string, battery status: "normal", "miss"*/
        "version":  "test" ,
/*optional, string, version No.*/
        "deviceNo":  1
/*optional, int, device No., range:[1,1000]. After installation, the installer will upload the device No. and the corresponding peripheral/detector information to the ARC for device type recognition*/
    }],
    "CardReaderList":[{
/*optional, card reader list*/
      "CardReader":{
        "id": , 
/*required, int, card reader No.*/
        "seq":"", 
/*required, string, peripheral serial No.*/
        "name":"", 
/*optional, string, card reader name*/
        "status":"", 
/*optional, string, card reader status: "notRelated"-not linked, "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": , 
/*optional, boolean, tampering status: "true"-tampered, "false"-not tampered*/
        "charge":"", 
/*optional, string, state of charge: "normal", "lowPower"-low battery*/
        "signal": ,
/*optional, int, signal strength, it is between 0 and 255*/
        "model":  "DS-PT1-WE",  
/*optional, enum, model, subType:string, "DS-PT1-WE" (wireless card reader)*/
        "temperature":  1,  
/*optional, int, temperature*/
        "subSystemList": [1, 2, 3],  
/*optional, array, linked partitions*/
        "isViaRepeater":  true,  
/*optional, boolean, whether the signal is forwarded via repeater*/
        "repeaterName":  "test",  
/*optional, string, repeater name, the maximum length is 64 bytes, this node is valid when isViaRepeater is true*/
        "version":  "test",  
/*optional, string, version, the maximum length is 32 bytes*/
        "deviceNo":  1
/*optional, int, device No., range:[1,1000]. After installation, the installer will upload the device No. and the corresponding peripheral/detector information to the ARC for device type recognition*/
      }
    }], 
    "ExtensionList":[{
/*optional, extension module list*/
      "ExtensionModule":{
        "id": , 
/*required, int, extension module No.*/
        "name":"", 
/*optional, string, extension module name*/
        "address": , 
/*optional, int, module address, this node is returned by wired modules*/
        "linkageAddress": , 
/*optional, int, linked module address, this node is returned by wireless modules*/
        "type":"", 
/*optional, string, module type: "wiredZone"-wired zone module, "wiredOutput"-wired output module, "wirelessOutput"-wireless output module, "wirelessRecv"-wireless receiver module (wired module)*/
        "status":"", 
/*optional, string, keypad status: "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": , 
/*optional, boolean, tampering status: "true"-tampered, "false"-not tampered*/
        "moduleAttrib":"",
/*string, module attribute: "wired", "wireless"*/
        "charge":""
/*optional, string, state of charge: "normal", "lowPower"-low battery*/
      }
    }], 
    "KeypadList":[{
/*optional, keypad list*/
      "Keypad":{
        "id": , 
/*required, int, keypad No.*/
        "seq":"", 
/*required, string, peripheral serial No.*/
        "name":"", 
/*optional, string, keypad name*/
        "status":"", 
/*optional, string, keypad status: "notRelated"-not linked, "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
        "tamperEvident": , 
/*optional, boolean, tampering status: "true"-tampered, "false"-not tampered*/
        "keypadAttrib":"",
/*string, keypad attribute: "wired", "wireless"*/
        "charge":"", 
/*optional, string, state of charge: "normal", "lowPower"-low battery*/
        "signal": ,
/*optional, int, signal strength, it is between 0 and 255*/
        "address": 
/*optional, int, keypad address, this node is only returned by wired keypads*/
        "model":  "DS-PK1-E-WE",  
/*optional, string, model: "DS-PK1-E-WE" (wireless LED keypad)*/
        "temperature":  1,  
/*optional, int, temperature*/
        "subSystemList": [1, 2, 3],  
/*optional, array, list of linked partitions*/
        "isViaRepeater":  true,  
/*optional, boolean, whether the signal is forwarded via repeater*/
        "repeaterName":  "test",  
/*optional, string, repeater name, this node is valid when the value of isViaRepeater is true*/
        "version":  "test" ,
/*optional, string, version No.*/
        "smokeDetectorAlarm":  "alarm",  
/*optional, string, whether the alarm of smoke detector is triggered: "normal", "alarm"*/
        "smokeDetectorPowerSupply":  "normal",  
/*optional, string, status of power supply for the smoke detector: "normal", "shorted"*/
        "powerSupply":  "normal",  
/*optional, string, the status of 12-volt power supply: "normal", "shorted"*/
        "mainPowerSupply":  true,
/*optional, boolean, external power supply status: true (connected),false (disconnected)*/
        "type":  "transmitter",
/*optional, transmitter type: "transmitter", "multiTransmitter"*/
        "deviceNo":  1
/*optional, int, device No., range:[1,1000]*/
      }
    }],
    "RemoteList": [  
/*optional, array, list of remote controls*/
      {
        "Remote": {  
/*optional, object, remote control*/
          "id":  1,  
/*required, int, remote control ID, range:[1,64]*/
          "seq":  "test",  
/*required, string, remote control serial No., the maximum length is 32 bytes*/
          "name":  "test",  
/*optional, string, remote control name, the maximum length is 64 bytes*/
          "status":  "notRelated",  
/*optional, enum, remote control status: "notRelated", "online", "offline", "heartbeatAbnormal"*/
          "charge":  "normal",  
/*optional, enum, power supply status: "normal", "lowPower"*/
          "chargeValue":  1,  
/*optional, int, power supply value, range:[0,100]*/
          "model":  "test",  
/*optional, string, model, the maximum length is 32 bytes*/
          "isViaRepeater":  true,  
/*optional, boolean, whether to transmit signals via the repeater*/
          "repeaterName":  "test",  
/*optional, string, repeater name, this node is valid when isViaRepeater is true*/
          "SelKeyList": [  
/*optional, array, list of list of single keys*/
            {
              "SelKey": {  
/*optional, object, custom function of the single key, this node is required when SelKeyList exists*/
                "key":  1,  
/*optional, int, remote control key ID, this node is required when SelKey exists*/
                "func":  "test",  
/*optional, string, corresponding function, this node is required when SelKey exists*/
                "outputNo":  1  
/*optional, int, relay No., this node is required when func is "operateOutputs"*/
              }
            }
          ],
          "CombKeyList": [  
/*optional, array, list of combination key*/
            {
              "CombKey": {  
/*optional, object, custom function of the combination key, this node is required when CombKeyList exists*/
                "keys":  "test",  
/*optional, string, remote control key ID, this node is required when CombKey exists*/
                "func":  "test",  
/*optional, string, corresponding function, this node is required when CombKey exists*/
                "outputNo":  1  
/*optional, int, relay No., this node is required when func is "operateOutputs"*/
              }
            }
          ],
          "relatedNetUserName":  "test",  
/*optional, string, user name of the linked network, the maximum length is 64 bytes*/
          "userNickName":  "test",  
/*optional, string, the user nickname of the linked network, the maximum length is 64 bytes*/
          "version":  "test",  
/*optional, string, version No., the maximum length is 32 bytes*/
          "deviceNo":  1 
/*optional, int, device No., range:[1,1000]. After installation, the installer will upload the device No. and the corresponding peripheral/detector information to the ARC for device type recognition*/
        }
      }
    ],
    "TransmitterList": [  
/*required, array, list of transmitters*/
      {
        "Transmitter": {  
/*required, object, transmitter*/
          "id":  1,  
/*required, int, transmitter ID*/
          "name":  "test",  
/*optional, string, name, the maximum length is 32 bytes*/
          "subSystemList": [1, 2, 3],  
/*optional, array, lisr of partitions linked to the transmitter*/
          "ZoneList": [  
/*optional, array, list of zones linked to the transmitter*/
            {
              "zoneID":  1,  
/*required, int, zone ID, range:[0,255]*/
              "detectorType":  "other",  
/*optional, string, detector type: "dualTechnologyPirDetector", "tripleTechnologyPirDetector", "glassBreakDetector", "activeInfraredDetector", "passiveInfraredDetector", "magneticContact", "panicButton", "waterLeakDetector", "humidityDetector", "temperatureDetector", "smokeDetector", "combustibleGasDetector", "vibrationDetector", "other"*/
              "isBypassed":  true,
/*optional, boolean, whether to bypass the zone, true (bypassed), false (bypass recovered)*/
              "subSystemList": [1, 2, 3],  
/*optional, array, list of partitions linked to the zone*/
              "zoneType":  "Instant",  
/*optional, string, zone type: "Instant"-instant zone, "Delay"-delay zone, "Follow"-follow zone, "Perimeter"-perimeter zone, "24hNoSound"-24-hour silent zone, "Emergency"-panic zone, "Fire"-fire zone, "Gas"-gas zone, "Medical"-medical zone, "Timeout"-timeout zone, "Non-Alarm"-disabled zone, "Key"-key zone*/
              "tamperEvident":  true,
/*optional, boolean, zone tampering alarm status, true (triggered), false (not triggered)*/
              "enterDelay":  1,  
/*optional, int, delay time (enter), unit: second, this node is valid for delay zones*/
              "exitDelay":  5,  
/*optional, int, delay time (exit), unit: second*/
              "alarm":  true,  
/*optional, boolean, whether the zone alarm is triggered, true (triggered), false (not triggered)*/
              "magnetOpenStatus":  true
/*optional, boolean, whether the magnetic contact is open: true (open), false (closed)*/
            }
          ],
          "OutputList": [  
/*optional, array, list of linked relays*/
            {
              "outputID":  1,  
/*optional, int, relay ID*/
              "subSystemList": [1, 2, 3],  
/*optional, array, list of partitions linked to the relay*/
              "status":  "on"  
/*optional, enum, relay status: "on", "off"*/
            }
          ],
          "seq":  "test",  
/*required, string, serial No. of the peripheral*/
          "status":  "online",  
/*optional, enum, transmitter's status: "online", "offline", "notRelated", "heartbeatAbnormal"*/
          "tamperEvident":  true,  
/*optional, boolean, tampering alarm status, true (triggered), false (not triggered)*/
          "charge":  "normal",  
/*optional, enum, power status: "normal", "lowPower"*/
          "chargeValue":  1,  
/*optional, int, power value, value: [0,100]*/
          "signal":  1,  
/*optional, int, signal strength, value: [0,255]*/
          "model":  "test",  
/*optional, string, model*/
          "temperature":  1,  
/*optional, int, temperature*/
          "isViaRepeater":  true,  
/*optional, boolean, whether to transmit signals via the repeater*/
          "repeaterName":  "test",  
/*optional, string, repeater name, this node is valid when isViaRepeater is true*/
          "movedAlarmEnabled":  true,  
/*optional, boolean, whether to enable mobile alarms: true (yes), false (no)*/
          "tamperPortEnabled":  true,
/*optional, object, whether to enable port tamper detection*/
          "voltageOutput":  "open",  
/*optional, string, whether to output the 3.3-volt voltage: "open"(yes), "close" (no), "disarmedClose" (not to output the voltage when it is disarmed)*/
          "portCfg":  "antiMasking",  
/*optional, string, port configuration: "antiMasking", "output", "close"*/
          "version":  "test",  
/*optional, string, transmitter version, the maximum length is 32 bytes*/
          "smokeDetectorAlarm":  "alarm",  
/*optional, string, whether the alarm of smoke detector is triggered: "normal", "alarm"*/
          "smokeDetectorPowerSupply":  "normal",  
/*optional, string, status of power supply for the smoke detector: "normal", "shorted"*/
          "powerSupply":  "normal",  
/*optional, string, the status of 12-volt power supply: "normal", "shorted"*/
          "mainPowerSupply":  true,  
/*optional, boolean, external power supply status: true (connected),false (disconnected)*/
          "type":  "transmitter",  
/*optional, transmitter type: "transmitter", "multiTransmitter"*/
          "deviceNo":  1  
/*optional, int, device No., range:[1,1000]*/
        }
      }
    ]}
  }
}