JSON_ZonesCap

JSON message about the zone configuration capability

{
  "ZonesCap":{
/*wireless zone capability*/
    "id":{ 
/*required, zone No. range*/
      "@min": ,
      "@max": 
    },
    "enable":"true,false",
/*optional, whether to enable the zone*/ 
    "zoneName":{  
/*optional, zone name length*/
      "@min": ,
      "@max": 
    }, 
    "ZoneTypeList":[{
      "ZoneType":{
        "type":"", 
/*required, supported zone types: "Instant"-instant zone, "Delay"-delayed 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, "EarlyWarning"-early warning zone, "Warning"-warning zone, "Shield"-shielded zone, "Key"-key zone, "24hSound"-24-hour annunciating zone*/
        "sptProp":[""] 
/*zone properties supported by the zone: "delayTime"-delay, "awayBypass"-stay arming bypass, "chime"-doorbell, "silent"-mute, "timeout"-timeout, "doubleKnock"-double alarm, "crossZoneCfg"-cross-zone settings, "newKeyZoneTriggerTypeCfg"-trigger type settings of the key zone (new version), "armNoBypass"-no bypass during arming, "reportSendDelay"-delay alarm uploading, "finalDoorExit"-start arming immediately after the magnetic contact detects door opening and door closing*/
        "KeyZoneTriggerTypeCfg":{
/*optional, string, triggering type settings of the key zone: "secondTriggerDisarm"-the key zone will be disarmed after being triggered for the second time (before enabling this function, the key zone will be armed after being triggered; after enabling this function, the key zone will be armed after being triggered for the first time, and it will be disarmed after being triggered for the second time), "triggerArm"-the key zone will be armed every time being triggered*/
          "opt":["secondTriggerDisarm","triggerArm"]
        }
      }
    }],
    "newKeyZoneTriggerTypeCfg":{
/*optional, string, triggering type settings of the key zone (new version): "triggerTimes"-by trigger times, "zoneStatus"-by zone status. If this node is supported by the device, the node keyZoneTriggerTypeCfg will not be supported*/
      "@opt":["triggerTimes","zoneStatus"]
    },
    "zoneStatusCfg":{
/*optional, dependent, string, zone status settings: "triggerArm"-the zone will be armed every time being triggered, "triggerDisArm"-the zone will be disarmed every time being triggered. This node is required when newKeyZoneTriggerTypeCfg is "zoneStatus"*/
      "@opt":["triggerArm","triggerDisArm"]
    },
    "detectorType":{
/*required, "panicButton"-panic button, "magneticContact"-door magnetic contact detector, "smokeDetector"-smoke detector, "activeInfraredDetector"-active IR detector, "passiveInfraredDetector"-PIR detector, "glassBreakDetector"-glass-break detector, "vibrationDetector"-shock detector, "dualTechnologyPirDetector"-dual-technology motion detector, "tripleTechnologyPirDetector"-triple-technology detector, "humidityDetector"-humidity detector, "temperatureDetector"-temperature detector, "combustibleGasDetector"-gas detector, "dynamicSwitch"-dynamic switch, "controlSwitch"-control switch, "smartLock"-smart lock, "waterDetector"-water detector, "displacementDetector"-displacement detector, "singleInfraredDetector"-door contact, "singleZoneModule"-wireless single input expander, "curtainInfraredDetector"-IR curtain detector, "pircam"-pircam detector (detector equipped with camera), "slimMagneticContact","indoorDualTechnologyDetector", "magnetShockDetector", "waterLeakDetector", "wirelessSmokeDetector", "wirelessGlassBreakDetector","wirelessTemperatureHumidityDetector", "wirelessHeatDetector", "wirelessCODetector", "wirelessPIRCeilingDetector", "wirelessExternalMagnetDetector", "wirelessPIRCurtainDetector", "wirelessDTAMCurtainDetector", "other"-others*/
      "@opt":"panicButton,magneticContact,smokeDetector,activeInfraredDetector,passiveInfraredDetector,glassBreakDetector, vibrationDetector,dualTechnologyPirDetector,tripleTechnologyPirDetector,humidityDetector,temperatureDetector,combustibleGasDetector,dynamicSwitch,controlSwitch,smartLock,waterDetector,displacementDetectorsingleInfraredDetector,singleZoneModule,curtainInfraredDetector,pircam,slimMagneticContact,indoorDualTechnologyDetector, magnetShockDetector, waterLeakDetector, wirelessSmokeDetector, wirelessGlassBreakDetector,wirelessTemperatureHumidityDetector, wirelessHeatDetector, wirelessCODetector, wirelessPIRCeilingDetector, wirelessExternalMagnetDetector, wirelessPIRCurtainDetector, wirelessDTAMCurtainDetector,other"
    }, 
    "subSystemNo":{
/*required, partition No. range*/
      "@min": ,
      "@max":
    },
    "linkageSubSystem": {  
/*optional, object, partition that the network camera is linked to*/
      "@size":  1,  
/*optional, int*/
      "@min":  1,  
/*optional, int, the minimum value*/
      "@max":  2  
/*optional, int, the maximum value*/
    },
    "supportLinkageSubSystemList": {  
/*optional, object, partitions that the network camera can be linked to*/
      "@size":  1,  
/*optional, int*/
      "@min":  1,  
/*optional, int, the minimum value*/
      "@max":  2  
/*optional, int, the maximum value*/
    },
    "stayArmDelayTime": {  
/*optional, object*/
      "@min":  1,  
/*optional, int, the minimum value*/
      "@max":  21  
/*optional, int, the maximum value*/
    },
    "sirenDelayTime": {  
/*optional, object, delay time for siren*/
      "@opt": [0, 10, 20, 30]  
/*optional, int*/
    }, 
    "delayTime":{
/*optional, select delay 1 or  delay 2 (which is in the timer configuration of partition, and corresponds to "entryDelay1" and "entryDelay2")*/
      "@opt":"1,2"
    }, 
    "stayAwayEnabled":"true,false", 
/*optional, whether to enable stay arming bypass*/
    "chimeEnabled":"true,false", 
/*optional, whether to enable doorbell*/
    "chimeWarningType":{
/*doorbell tone types: "single"-single tone, "continuous"-continuous tone, this node is valid only when chimeEnabled is "true"*/
      "@opt":"single,continuous "
    },
    "silentEnabled":"true,false", 
/*optional, whether to support enabling mute*/
    "timeoutLimit":{
/*optional, configuration of zone timeout threshold*/
      "@opt":"true,false"
    }, 
    "timeoutType":{
/*optional, timeout type, "tigger"-triggering timed out, "recover"-restoring timed out*/
      "@opt":"tigger,recover"
    }, 
    "limitTimeout":{
/*optional, time range within the zone timeout threshold*/
      "@min": ,
      "@max":
    }, 
    "timeout":{
/*optional, zone timeout range*/
      "@min": ,
      "@max":
    }, 
    "relateDetector":{
/*required, whether to support linking to detectors*/
      "@opt":"true,false"
    }, 
    "detectorSeq":{
/*optional, length of detector serial No.*/
      "@min": ,
      "@max":
    }, 
    "RelatedChan":{
      "relator":{
/*required, channel linkage type: "host"-security control panel, "app"-application program*/
        "@opt":"host,app"
      },
      "cameraSeq":{
/*optional, length of camera serial No.*/
        "@min": ,
        "@max":
      }, 
      "relatedChan":{
/*required, linked channel No. range*/
        "@min": ,
        "@max":
      },
      "remoteRelatedChan":{
/*optional, range of remotely linked channel No. (application linkage)*/
        "@min": ,
        "@max": 
      },
      "linkageCameraName": {  
/*optional, object, name of the linked camera*/
        "@min":  1,  
/*optional, int, the maximum length, range:[1,64]*/
        "@max":  64  
/*optional, int, the maximum length, range:[1,64]*/
      }
    },
    "relay": ,
/*optional, maximum number of relays that can be linked to the zone*/
    "maxCoordinateNum":32,
/*optional, maximum number of coordinates that can be linked to the zone. At least three coordinates should be used for a zone*/
    "isSupportZonesOverlay":true,
/*optional, whether to support zone overlay: "true"-yes, this node is not returned-no*/
    "isSptAddDetector": 
/*optional, boolean type, whether to support adding detectors*/
    "address":{
/*optional, read-only, module address, wireless modules do not return this node*/
      "@opt":[1,2,3]
    }, 
    "linkageAddress":{
/*optional, read-only, linked module address, wired modules do not return this node*/
      "@opt":[1,2,3] 
    }, 
    "moduleChannel":{
/*optional, module channel No.*/
      "@min": , 
      "@max": 
    }, 
    "moduleType":{
/*optional, read-only, module type: "localWired"-local wired module, "extendWired"-extended wired module, "localWireless"-local wireless module, "extendWireless"-extended wireless module*/
      "@opt":["localWired", "extendWired", "localWireless", "extendWireless"]
    }, 
    "moduleStatus":{
/*optional, read-only, module status: "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
      "@opt":["online", "offline", "heartbeatAbnormal"]
    }, 
    "CheckTimeList":[{
/*optional, range list of detector offline duration, unit: hour. Different detectors correspond to different offline duration ranges, so the offline duration range should be listed separately for each detector supported by the device*/
      "detectorType":"", 
/*detector type, refer to detectorType node for details*/
      "@min": , 
      "@max": 
    }], 
    "sensitivity":{
/*optional, zone sensitivity: 10-10 ms, 250-250 ms, 500-500 ms, 750-750 ms*/
      "@opt":[10,250,500,750] 
    }, 
    "resistor":{
/*optional, EOL (End-of-Line) resistor: 2.2-2.2k, 3.3-3.3k, 5.6-5.6k, 8.2-8.2k*/
      "@opt":[2.2,3.3,5.6,8.2] 
    }, 
    "tamperType":{
/*optional, tampering type: "disable", "normalOpen"-remain open, "normalClose"-remain closed*/
      "@opt":["disable", "normalOpen", "normalClose"]
    }, 
    "zoneAttrib":{
/*optional, read-only, zone attribute: "wired", "wireless". If this node is not returned, the default zone attribute is "wireless"*/
      "@opt":["wired", "wireless"]
    },
    "linkagePircamCapCfg":"true,false",
/*optional, boolean, whether it supports configuring pircam capture linkage*/
    "linkageFileName":{
/*optional, name length of the linked file*/
      "@min": ,
      "@max": 
    },
    "doubleKnockEnabled": {
/*optional, object, whether to enable double knock, an alarm will be triggered when the detector is triggered twice within the configured time of doubleKnockTime*/
      "@opt": [true, false]  
/*optional, array, subType:bool*/
    },
    "doubleKnockTime": {  
/*optional, object, interval of double knock, unit: second, range: [5,600]*/
      "@min":  5,  
/*optional, int, the minimum value*/
      "@max":  600  
/*optional, int, the maximum value*/
    },
    "CrossZoneCfg": {  
/*optional, object, cross-zone configuration*/
      "isAssociated": {
/*required, object, whether this zone has been linked with other zones: true-yes,false-no*/  
        "@opt": [true, false]
      },
      "supportAssociatedZone": {  
/*optional, object, zones that can be linked*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2,  
/*optional, int, the maximum value*/
        "@size":  1  
/*optional, int, the maximum number of zones that can be linked*/
      },
      "alreadyAssociatedZone": {  
/*optional, object, zones that have been linked with other zones*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2,  
/*optional, int, the maximum value*/
        "@size":  1  
/*optional, int, the maximum number of linked zones*/
      },
      "associateZoneCfg": {  
/*optional, object, other zones that have been linked with this zone*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2,  
/*optional, int, the maximum value*/
        "@size":  1  
/*optional, int, the maximum number of linked zones*/
      },
      "associateTime": {  
/*optional, object, link time between zones*/
        "@opt": [10, 20, 30]
      },
      "supportLinkageChannelID": {  
/*optional, object, No.s of the channels that can be linked with network cameras*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,4]*/
        "@max":  4,  
/*optional, int, the maximum value,, range:[1,4]*/
        "@size":  1  
/*optional, int, the maximum number of network camera channels, range:[1,4]*/
      },
      "alreadyLinkageChannelID": {  
/*optional, object, No.s of the channels that have been linked with network cameras*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,4]*/
        "@max":  4,  
/*optional, int, the maximum value,, range:[1,4]*/
        "@size":  1  
/*optional, int, the maximum number of linked network camera zones, range:[1,4]*/
      },
      "linkageChannelID": {  
/*optional, object, No.s of the channels to be linked with network cameras*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,4]*/
        "@max":  4,  
/*optional, int, the maximum value,, range:[1,4]*/
        "@size":  1  
/*optional, int, the maximum number of network camera channels to be linked, range:[1,4]*/
      }
    },
    "armNoBypassEnabled": {  
/*optional, object, whether to enable no bypass during arming*/
      "@opt": [true, false]
    },
    "AlarmSoundInterlink": {  
/*optional, object, alarm linkage, which is supported by zones with R3 smoke detectors, heat detectors, or CO detectors*/
       "supportLinkageZones": {  
/*optional, object, zones that support alarm linkage, this node is required when the node AlarmSoundInterlink exists*/
         "@size":  1,  
/*optional, int, number of zones that support alarm linkage*/
         "@min":  1,  
/*optional, int, the minimum value*/
         "@max":  2  
/*optional, int, the maximum value*/
       },
       "linkageZones": {  
/*optional, object, zones with alarm linkage configured, this node is required when the node AlarmSoundInterlink exists*/
         "@size":  1,  
/*optional, int, the number of zones with alarm linkage configured*/
         "@min":  1,  
/*optional, int, the minimum value*/
         "@max":  2
/*optional, int, the maximum value*/
       }
    },
    "RelatedPIRCAM": {  
/*optional, object, linked pircam information, either this node or RelatedChan takes effect, that is, a zone cannot be linked with both network camera and pircam, and one pircam can only be linked with one zone*/
      "supportLinkageZones": {  
/*optional, object, zones that can be linked with pircam; this node is required when "RelatedPIRCAM" exists*/
        "@size":  1,  
/*optional, int, the maximum number of zones that can be linked with pircam*/
        "@min":  1,
/*optional, int, the minimum value*/
        "@max":  2
/*optional, int, the maximum value*/
      },
      "linkageZone": {  
/*optional, object, zones that have been linked with pircam; this node is required when "RelatedPIRCAM" exists*/
        "@size":  1,  
/*optional, int, the maximum number of zones that have been linked with pircam*/
        "@min":  1,
/*optional, int, the minimum value*/
        "@max":  2
/*optional, int, the maximum value*/
      },
      "linkagePIRCAMName": {  
/*optional, object, name of the linked pircam*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,64]*/
        "@max":  64  
/*optional, int, the maximum value, range:[1,64]*/
      }
    },
    "reportSendDelayTime": {  
/*optional, object, delay time of uploading the alarm to ARC, unit: second; this node is valid for delayed zones only*/
      "@min":  10,
/*optional, int, the minimum value*/
      "@max":  3600
/*optional, int, the maximum value*/
    },
    "finalDoorExitEnabled": {  
/*optional, object, whether to enable Final Door Exit function: true-enable, false-disable, If Final Door Exit is enabled on a door magnetic contact (a detector), the area will be armed immediately after the magnetic contact detects door opening and door closing. If disabled, the area has to wait until a fixed countdown is over before being armed*/
      "@opt": [true, false]
    },
    "timeRestartEnabled": {  
/*optional, boolean, whether to enable restarting time for delayed zone, which is valid after exit delay is configured*/
      "@opt": [true, false]
    },
    "armMode": {  
/*optional, string, arming mode, which is valid for public zones*/
      "@opt": ["and", "or"]
    }
  }, 
  "WiredZonesCap":{
/*wired zone capability*/
    "id":{
/*required, zone No. range*/
      "@min": , 
      "@max": 
    }, 
    "zoneName":{
/*optional, zone name length*/
      "@min": , 
      "@max": 
    }, 
    "ZoneTypeList":[{
      "ZoneType":{
        "type":"", 
/*required, supported zone types: "Instant"-instant zone, "Delay"-delayed zone, "Follow"-follow zone, "Perimeter"-perimeter zone, "24hNoSound"-24H silent zone, "Emergency"-panic zone, "Fire"-fire zone, "Gas"-gas zone, "Medical"-medical zone, "Timeout"-timeout zone, "Non-Alarm"-disabled zone, "EarlyWarning"-early-warning zone, "Warning"-warning zone, "Shield"-shielded zone, "Key"-key zone*/
        "sptProp": 
/*supported zone properties: "delayTime"-delay, "awayBypass"-stay arming bypass, "chime"-doorbell, "silent"-mute, "timeout"-timeout*/
      }
    }], 
    "detectorType":{
/*required, "panicButton"-panic button, "magneticContact"-door magnetic contact detector, "smokeDetector"-smoke detector, "activeInfraredDetector"-active IR detector, "passiveInfraredDetector"-PIR detector, "glassBreakDetector"-glass-break detector, "vibrationDetector"-shock detector, "dualTechnologyPirDetector"-dual-technology motion detector, "tripleTechnologyPirDetector"-triple-technology detector, "humidityDetector"-humidity detector, "temperatureDetector"-temperature detector, "combustibleGasDetector"-gas detector, "dynamicSwitch"-dynamic switch, "controlSwitch"-control switch, "smartLock"-smart lock, "waterDetector"-water detector, "displacementDetector"-displacement detector, "singleInfraredDetector"-door contact, "singleZoneModule"-wireless single input expander, "curtainInfraredDetector"-IR curtain detector, "pircam"-pircam detector (detector equipped with camera), "slimMagneticContact","indoorDualTechnologyDetector", "magnetShockDetector", "waterLeakDetector", "wirelessSmokeDetector", "wirelessGlassBreakDetector","wirelessTemperatureHumidityDetector", "wirelessHeatDetector", "wirelessCODetector", "wirelessPIRCeilingDetector", "wirelessExternalMagnetDetector", "wirelessPIRCurtainDetector", "wirelessDTAMCurtainDetector", "other", "tamperDetector"(tamper-proof detector)*/
      "@opt":"panicButton,magneticContact,smokeDetector,activeInfraredDetector,passiveInfraredDetector,glassBreakDetector, vibrationDetector,dualTechnologyPirDetector,tripleTechnologyPirDetector,humidityDetector,temperatureDetector,combustibleGasDetector,dynamicSwitch,controlSwitch,smartLock,waterDetector,displacementDetectorsingleInfraredDetector,singleZoneModule,curtainInfraredDetector,pircam,slimMagneticContact,indoorDualTechnologyDetector, magnetShockDetector, waterLeakDetector, wirelessSmokeDetector, wirelessGlassBreakDetector,wirelessTemperatureHumidityDetector, wirelessHeatDetector, wirelessCODetector, wirelessPIRCeilingDetector, wirelessExternalMagnetDetector, wirelessPIRCurtainDetector, wirelessDTAMCurtainDetector,other,tamperDetector"
    }, 
    "subSystemNo":{
/*required, partition No. range*/
      "@min": , 
      "@max": 
    }, 
    "delayTime":{
/*optional, select delay 1 or  delay 2 (which is in the timer configuration of the partition, and corresponds to "entryDelay1" and "entryDelay2")*/
      "@opt":"1, 2"
    }, 
    "stayAwayEnabled":"true,false", 
/*optional, whether to enable stay arming bypass*/
    "chimeEnabled":"true,false", 
/*optional, whether to enable doorbell*/
    "chimeWarningType":{
/*doorbell tone type: "single"-single tone, "continuous"-continuous tone, this node is valid only when chimeEnabled is "true"*/
      "@opt":"single,continuous"
    }, 
    "silentEnabled":"true,false", 
/*optional, whether to support enabling mute*/
    "timeoutLimit":{
/*optional, configuration of zone timeout threshold*/
      "@opt":"true,false"
    }, 
    "timeoutType":{
/*optional, timeout type, "tigger"-triggering timed out, "recover"-restoring timed out*/
      "@opt":"tigger,recover"
    }, 
    "limitTimeout":{
/*optional, time range within the zone timeout threshold*/
      "@min": , 
      "@max": 
    }, 
    "timeout":{
/*optional, zone timeout range*/
      "@min": , 
      "@max": 
    }, 
    "relateDetector":{
/*required, whether to support linking to detectors*/
      "@opt":"true,false"
    }, 
    "detectorSeq":{
/*optional, length of detector serial No.*/
      "@min": , 
      "@max": 
    }, 
    "RelatedChan":{
      "relator":{
/*required, channel linkage type: "host"-security control panel, "app"-application program*/
        "@opt":"host,app"
      }, 
      "cameraSeq":{
/*optional, length of camera serial No.*/
        "@min": , 
        "@max": 
      }, 
      "relatedChan":{
/*required, linked channel No. range*/
        "@min": , 
        "@max": 
      },
      "remoteRelatedChan":{
/*optional, range of remotely linked channel No. (application linkage)*/
        "@min": ,
        "@max": 
      },
      "linkageCameraName": {  
/*optional, object, name of the linked camera*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,64]*/
        "@max":  64  
/*optional, int, the maximum value, range:[1,64]*/
      }
    }, 
    "isSptAddDetector": , 
optional, boolean type, whether to support adding detectors
    "address":{
/*optional, read-only, module address, wireless module does not return this node*/
      "@opt":[1,2,3] 
    }, 
    "linkageAddress":{
/*optional, read-only, linked module address, this node can only be configured by wireless modules*/
      "@opt":[1,2,3] 
    }, 
    "moduleChannel":{
/*optional, module channel No.*/
      "@min": , 
      "@max": 
    }, 
    "moduleType":{
/*optional, read-only, module type: "localWired"-local wired module, "extendWired"-extended wired module, "localWireless"-local wireless module, "extendWireless"-extended wireless module*/
      "@opt":["localWired", "extendWired", "localWireless", "extendWireless"]
    }, 
    "moduleStatus":{
/*optional, read-only, module status: "online", "offline", "heartbeatAbnormal"-heartbeat exception*/
      "@opt":["online", "offline", "heartbeatAbnormal"]
    }, 
    "CheckTimeList":[{
/*optional, range list of detector offline duration, unit: hour. Different detectors correspond to different offline duration ranges, so the offline duration range should be listed separately for each detector supported by the device*/
      "detectorType":"", 
/*detectory type, refer to <detectorType> node for details*/
      "@min": , 
      "@max": 
    }], 
    "sensitivity":{
/*optional, zone sensitivity: 10-10 ms, 250-250 ms, 500-500 ms, 750-750 ms*/
      "@opt":[10,250,500,750] 
    }, 
    "resistor":{
/*optional, EOL (End-of-Line) resistor: 2.2-2.2k, 3.3-3.3k, 5.6-5.6k, 8.2-8.2k*/
      "@opt":[2.2,3.3,5.6,8.2] 
    }, 
    "tamperType":{
/*optional, tampering type: "disable", "normalOpen"-remain open, "normalClose"-remain closed*/
      "@opt":["disable", "normalOpen", "normalClose"]
    }, 
    "zoneAttrib":{
/*optional, read-only, zone attribute: "wired", "wireless". If this node is not returned, the default zone attribute is "wireless"*/
      "@opt":["wired", "wireless"]
    }, 
    "method":{
/*optional, methods supported by the function: "put"-edit, "getAll"-get all, "get"-get one. If this node is not returned, it indicates that the device supports "put" and "getAll" methods by default*/
      "@opt":["put", "getAll", "get"]
    },
    "linkagePircamCapCfg":"true,false",
/*optional, boolean, whether it supports configuring pircam capture linkage*/
    "linkageFileName":{
/*optional, name length of the linked file*/
      "@min": ,
      "@max": 
    },
    "extendZoneNo":{
/*optional, integer, read-only, extended zone No. after enabling double-detector zone. This field is valid when the configuration URI is called to configure parameters of the linked zone. For example, if the double-detector zone has been enabled for the linked zone (zone 1) and the extended zone No. of zone 1 is 9, when the configuration URI is called to configure parameters of zone 1, id in the message should be set to 1, extendZoneNo should be set to 9, and relatedZoneNo is invalid at this point*/
      "@min": ,
      "@max": 
    },
    "extendZoneName": {  
/*optional, object, name of the extended zone*/
      "@min":  1,  
/*required, int, the minimum value, range:[1,32]*/
      "@max":  32  
/*required, int, the maximum value, range:[1,32]*/
    },
    "relatedZoneNo":{
/*optional, integer, read-only, linked zone No. This field is valid when the configuration URI is called to configure parameters of the extended zone. For example, if the double-detector zone has been enabled for the linked zone (zone 1) and the extended zone No. of zone 1 is 9, when the configuration URI is called to configure parameters of zone 9, id in the message should be set to 9, relatedZoneNo should be set to 1, and extendZoneNo is invalid at this point*/
      "@opt":[1,2,3]
    },
    "relatedZoneName": {  
/*optional, object, name of the linked zone*/
      "@min":  1,  
/*optional, int, the minimum value, range:[1,32]*/
      "@max":  32  
/*optional, int, the maximum value, range:[1,32]*/
    },
    "SupportedDoubleZoneNos": ,
/*optional, array of integer, No. list of zones that support double-detector zone settings. For example, [1,2,3,4] indicates that zone 1, zone 2, zone 3, and zone 4 support double-detector zone settings*/
    "doubleZoneCfgEnable":"true,false"
/*optional, boolean, whether to enable double-detector zone. If this field is "true", it indicates that the double-detector zone has been enabled for the zone and two detectors will be linked. For the upper level, two detectors require two zone numbers*/
    "linkagePircamCapCfg":  "true,false",  
/*optional, string, picture capture configuration of pircam*/
    "linkageFileName ": {  
/*optional, object, length of the linked file name*/
      "@min":  1,  
/*optional, int, the minimum value*/
      "@max":  1  
/*optional, int, the maximum value*/
    },
    "doubleKnockEnabled": {  
/*optional, object, whether to enable double knock*/
      "@opt": [true, false]  
/*optional, array of boolean*/
    },
    "doubleKnockTime": {  
/*optional, object, interval of double knock, unit: second, range: [5,600]*/
      "@min":  5,  
/*optional, int, the minimum value*/
      "@max":  600  
/*optional, int, the maximum value*/
    },
    "CrossZoneCfg": {  
/*optional, object, cross-zone configuration*/
      "isAssociated": {  
/*required, object, whether this zone has been linked with other zones: true-yes,false-no*/
        "@opt": [true, false]  
/*required, array of boolean*/
      },
      "supportAssociatedZone": {  
/*optional, object, zones that can be linked*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2,  
/*optional, int, the maximum value*/
        "@size":  1  
/*optional, int, the maximum number of zones that can be linked*/
      },
      "alreadyAssociatedZone": {  
/*optional, object, zones that have been linked with other zones*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2,  
/*optional, int, the maximum value*/
        "@size":  1  
/*optional, int, the maximum number of linked zones*/
      },
      "associateZoneCfg": {  
/*optional, object, other zones that have been linked with this zone*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2,  
/*optional, int, the maximum value*/
        "@size":  1  
/*optional, int, the maximum number of linked zones*/
      },
      "associateTime": {  
/*optional, object, link time between zones*/
        "@opt": [10, 20, 30]  
/*optional, int*/
      },
      "supportLinkageChannelID": {  
/*optional, object, No.s of the channels that can be linked with network cameras*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,4]*/
        "@max":  4,  
/*optional, int, the maximum value,, range:[1,4]*/
        "@size":  1  
/*optional, int, the maximum number of network camera channels, range:[1,4]*/
      },
      "alreadyLinkageChannelID": {  
/*optional, object, No.s of the channels that have been linked with network cameras*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,4]*/
        "@max":  4,  
/*optional, int, the maximum value,, range:[1,4]*/
        "@size":  1  
/*optional, int, the maximum number of linked network camera zones, range:[1,4]*/
      },
      "linkageChannelID": {  
/*optional, object, No.s of the channels to be linked with network cameras*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,4]*/
        "@max":  4,  
/*optional, int, the maximum value,, range:[1,4]*/
        "@size":  1  
/*optional, int, the maximum number of network camera channels to be linked, range:[1,4]*/
      }
    },
    "armNoBypassEnabled": {  
/*optional, object, whether to enable no bypass during arming*/
      "@opt":  "true,false"  
/*optional, string]*/
    },
    "isSupportSignalTest":  true,  
/*optional, boolean, whether it supports signal strength detection, if the node is not returned or the value is false, it indicates "no"*/
    "isSupportZoneTest":  true,  
/*optional, boolean, whether it supports zone detection, if the node is not returned or the value is false, it indicates "no"*/
    "RelatedPIRCAM": {  
/*optional, object, linked pircam information, either this node or RelatedChan takes effect, that is, a zone cannot be linked with both network camera and pircam, and one pircam can only be linked with one zone*/
      "supportLinkageZones": {
/*optional, object, zones that can be linked with pircam; this node is required when "RelatedPIRCAM" exists*/
        "@size":  1,  
/*optional, int, the maximum number of zones that can be linked with pircam*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2  
/*optional, int, the maximum value*/
      },
      "linkageZone": {  
/*optional, object, zones that have been linked with pircam; this node is required when "RelatedPIRCAM" exists*/
        "@size":  1,  
/*optional, int, the maximum number of zones that have been linked with pircam*/
        "@min":  1,  
/*optional, int, the minimum value*/
        "@max":  2  
/*optional, int, the maximum value*/
      },
      "linkagePIRCAMName": {  
/*optional, object, name of the linked pircam*/
        "@min":  1,  
/*optional, int, the minimum value, range:[1,64]*/
        "@max":  64  
/*optional, int, the maximum value, range:[1,64]*/
      }
    },
    "reportSendDelayTime": {  
/*optional, object, delay time of uploading the alarm to ARC, unit: second; this node is valid for delayed zones only*/
      "@min":  10,  
/*optional, int, the minimum value*/
      "@max":  3600  
/*optional, int, the maximum value*/
    },
    "timeRestartEnabled": {  
/*optional, object, whether to enable resetting delay time for exit; this node is valid only for delayed zones*/
      "@opt": [true, false]  
/*optional, array of boolean*/
    },
    "notRelatedZoneNo": {  
/*optional, object, No. of the unlinked zones*/
      "@size":  1,  
/*optional, int, the maximum number of unlinked zones*/
      "@min":  1,  
/*optional, int, the minimum value*/
      "@max":  2  
/*optional, int, the maximum value*/
    },
    "modifiedZoneNo": {  
/*optional, object, Zone No. after it is modified*/
      "@min":  0,  
/*optional, int, the minimum value*/
      "@max":  255  
/*optional, int, the maximum value*/
    },
    "finalDoorExitEnabled": {  
/*optional, object, whether to enable Final Door Exit function: true-enable, false-disable, If Final Door Exit is enabled on a door magnetic contact (a detector), the area will be armed immediately after the magnetic contact detects door opening and door closing. If disabled, the area has to wait until a fixed countdown is over before being armed*/
      "@opt": [true, false]  
/*optional, array of boolean*/
    },
    "swingerLimitActivation": {  
/*optional, object, allowed times of triggers*/
      "@min":  0,  
/*optional, int, the minimum value*/
      "@max":  10  
/*optional, int, the maximum value*/
    },
    "detectorContactMode": {  
/*optional, object, detector mode: "NO"-always open, "NC"-always closed, "rollerShutter"(customized)*/
      "@opt": ["NO", "NC", "rollerShutter"]  
/*optional, array of string*/
    },
    "impulseCountTime": {  
/*optional, object, pulse count time, unit:second*/
      "@opt": [10, 20, 30, 40, 50, 60]  
/*optional, array of int*/
    },
    "impulsesBeforeAlarm": {  
/*optional, object, number of pulses before alarm*/
      "@opt": [2, 4, 6]  
/*optional, array of int, range:[2,30]*/
    },
    "detectorInputMode": {  
/*optional, object, detector input mode: "pulse", "latch";this node is valid when the value of detectorContactMode is "NO" or "NC"*/
      "@opt": ["pulse", "latch"]
    },
    "pulseDuration": {  
/*optional, object, pulse interval, unit: second, this node is valid when the value of detectorInputMode is "pulse"*/
      "@min":  5,  
/*optional, int, the minimum value*/
      "@max":  600  
/*optional, int, the maximum value*/
    },
    "detectorTamperMode": {  
/*optional, object, detector tamper mode: "NO"-always enabled, "NC"-always disabled*/
      "@opt": ["NO", "NC"]
    },
    "antiMasking": {  
/*optional, object, anti-masking mode: "NO"-always enabled, "NC"-always disabled*/
      "@opt": ["NO", "NC"]
    },
    "detectorContactModeList": [  
/*optional, array, list of detector contact modes*/
      {
        "detectorContactMode":  "NO",  
/*optional, enum, detector contact mode: "NO" (always open), "NC" (always closed), "A" (custom), "EOL", "DEOL-NO", "DEOL-NC"*/
        "pulseSensitivity": {  
/*optional, object, pulse sensitivity, unit: ms, when detectorContactMode is "NO" or "NC", the values can be 30,100,1000; when detectorContactMode is "EOL", "DEOL-NO", or "DEOL-NC", the values can be 10,100,250,500,750, and the default value is 250*/
          "@opt": [10, 30, 100, 250, 500, 750, 1000]  
/*optional, array of int, unit: ms*/
        }
      }
    ],
    "alarmResistence": {  
/*optional, object, alarm resistance, unit: k, this node is valid when detectorContactMode is "EOL", "DEOL-NO", or "DEOL-NC"*/
      "@opt": [1.0, 2.2, 4.7, 8.2]  
/*optional, array of float*/
    },
    "tamperResistence": {  
/*optional, object, tamper resistance, unit: k, this node is valid when detectorContactMode is "DEOL-NO", "DEOL-NC"*/
      "@opt": [1.0, 2.2, 4.7, 8.2]  
/*optional, array of float*/
    },
    "accessModuleType": {  
/*optional, object, access module type: "transmitter"-transmitter peripheral, "multiTransmitter", "localTransmitter", "localZone","keypad"*/
      "@opt": ["transmitter", "multiTransmitter", "localTransmitter", "localZone","keypad"]
    },
    "relatedAccessModuleID": {  
/*optional, object, ID of linked access module*/
      "@min":  0,  
/*optional, int, the minimum value*/
      "@max":  255  
/*optional, int, the maximum value*/
    },
    "armMode": {  
/*optional, object, arming mode, which is valid for public zone*/
      "@opt": ["and", "or"]
    },
    "AccessModuleNotSupportDetectorList": [  
/*optional, array, list of detectors that are not supported by the access module*/
      {
        "accessModuleType":  "transmitter",  
/*optional, enum, access module type*/
        "notSupportDetectorType": {  
/*optional, object, detector type that is not supported*/
          "@opt": ["tamperDetector"]  
/*optional, array, "tamperDetector"*/
        }
      }
    ]
  }
}

Remarks

  • The "trigger" timeout type (timeoutType) indicates that the alarm will not be triggered until the configured timeout of detector is ended, e.g., for the regions that only the passing is allowed, but the loitering is not allowed, if you loiter for the certain time duration, the alarm will be triggered.

  • The "recover" timeout type (timeoutType) indicates that the target should be detected by the detector continuously, if the detector cannot detect the target for the configured timeout, the alarm will be triggered, e.g., if the security is absent for the certain time duration, the alarm will be triggered.