JSON message about siren configuration capability
{ "SirenCap":{ "id":{ /*required, siren No. range*/ "@min": , "@max": }, "name":{ /*optional, range of siren name length*/ "@min": , "@max": }, "volume":{ /*optional, siren volume range: 0 (muted), 1 (low), 2 (medium), 3 (high). The values in the capability message returned by the device are the supported volume values*/ "@min": , "@max": }, "supportVolumeIDList": , /*optional, ID list of sirens that support volume configuration. If this node is not returned and volume is returned, it indicates that all sirens support volume configuration; if this node is not returned and volume is not returned, it indicates that all sirens do not support volume configuration; if this node is returned, it indicates that sirens with the returned ID support volume configuration (e.g., [1,3] indicates that siren 1 and siren 3 support volume configuration)*/ "related":{ /*required, whether the siren is linked*/ "@opt":"true,false" }, "seq":{ /*required, range of siren serial No. length*/ "@min": , "@max": }, "address":{ /*optional, read-only, module address, this node is only returned by wired modules*/ "@opt":[1,2,3] }, "linkageAddress":{ /*optional, read-only, linked module address, this node is only returned by wireless modules*/ "@opt":[1,2,3] }, "checkTime":{ /*optional, offline duration, unit: hour*/ "@min": , "@max": }, "sirenAttrib":{ /*optional, read-only, siren attribute: "wired", "wireless"*/ "@opt":["wired","wireless"] }, "sirenLinkageType":{ /*optional, type of siren that supports being linked: "wired"*/ "@opt":["wired"] }, "linkage":{ /*optional, event type linked to the siren: "alarm", "arming", "disarming", "manualCtrl"-manually control, "zone"*/ "@opt":["alarm","arming","disarming","manualCtrl","zone"] }, "LinkageList":{ /*optional, linked event list. If the device supports linking multiple event types with multiple minor event types and multiple partitions, this node can be configured. For compatibility, linking an event type with multiple minor event types and multiple partitions should also be supported*/ "@size":2, /*int, maximum number of event types that can be linked*/ "linkage":""{ /*optional, string, event types that can be linked to the siren*/ "@opt":"alarm,arming,disarming,manualCtrl,zone" }, "zoneEvent ":{ "@min":1, "@max":2, /*optional, int, maximum No. of the zone*/ "@size":2, /*optional, int, maximum number of zones that can be linked*/ } "subSystem":{ "@min":1, "@max":2, /*optional, int, maximum No. of the partition*/ "@size":2, /*optional, int, maximum number of partitions that can be linked*/ } }, "zoneEvent":{ /*optional, string, zone event type, this node is valid when linkage contains "zone". For example, [1,3] indicates that zone 1 and zone 3 are enabled. If this node is not configured when linkage contains "zone", it indicates enabling all zones*/ "@opt":[0,1,2,3] }, "method":{ /*required, methods supported by the function: "add", "put"-edit, "getAll"-get all*/ "@opt":"add,put,getAll" }, "subSystem":{ /*optional, number of partitions that can be linked*/ "@min": , "@max": }, "subSystemNo":{ /*optional, range of partition No.*/ "@min": , "@max": }, "LEDEnabled": { /*optional, boolean, whether to enable the LED indicator*/ "@opt":[true,false] }, "LEDLatchTime": { /*optional, int, delay time of the LED indicator, unit: second*/ "@min":0, "@max":0 }, "findMeEnabled": { /*optional, boolean, whether to enable the Find Me function*/ "@opt":[true,false] }, "location":{ /*optional, string, siren location: "outdoor", "indoor"*/ "@opt":["indoor","outdoor"] }, "ArmAndDisarmIndicatorCfg":{ /*optional, indicator settings for arming and disarming*/ "LEDEnabled": { /*optional, boolean, whether to enable the LED indicator to flicker for arming and disarming*/ "@opt":[true,false] }, "LEDTimes": { /*optional, int, LED indicator flickering times*/ "@min": , "@max": }, "LEDFrequency": { /*optional, int, LED indicator flickering frequency, unit: Hz*/ "@min": , "@max": }, "buzzerEnabled": { /*optional, boolean, whether to enable the buzzer to buzz for arming and disarming*/ "@opt":[true,false] }, "buzzerTimes": { /*optional, int, buzzer buzzing times*/ "@min": , "@max": } }, "company":{ /*optional, string, read-only, company name: "pyronix", "longhorn", "hikvision". When the value of company is "hikvision", the siren supports test*/ "@opt":["pyronix","longhorn","hikvision"] }, "supportSirenCtrlIDList": [1,3] /*optional, ID list of the sirens that support test (e.g., if [1,3] is returned, sirens with IDs 1 and 3 support test)*/ "tamperEnabled": { /*optional, boolean, whether to enable siren tampering*/ "@opt":[true,false] }, "tryAlarmEnabled": { /*optional, boolean, whether to enable alarm attempt*/ "@opt":[true,false] }, "preRegisterEnabled":{ /*optional, boolean, whether to enable pre-registration*/ "@opt":[true,false] }, "buzzEnabled":{ /*optional, boolean, whether to enable linking the buzzer to buzz when the alarm is triggered*/ "@opt":[true,false] }, "disarmTamperEnabled": { /*optional, object, whether to enable tampering alarm when it is disarmed*/ "@opt": [true, false] }, "alarmStrobeFlashEnabled":{ /*optional, boolean, whether to enable linking the alarm lamp to flicker when the alarm is triggered*/ "@opt":[true,false] }, "sounderAlarmDuration":{ /*optional, int, siren's output duration when the alarm is triggered, unit: second*/ "@min":0, "@max":1 }, "heartBeatInterval":{ /*optional, int, heartbeat interval of the security control panel and the peripheral, unit: second*/ "@opt":[5,10,20,30] }, "isSupportSignalTest": , /*optional, boolean, whether it supports signal strength detection: true-support, false or this node is not returned-no*/ "isSupportZoneTest": , /*optional, boolean, whether it supports zone detection: true-support, false or this node is not returned-no*/ "supportSirenCtrlIDList": /*optional, array, ID list of sirens that support siren test alarm. For example, [1,3] indicates that siren 1 and siren 3 support siren test alarm*/ "alarmLinkedEventCfg": { /*optional, object, linked event configuration: "alarmTrigger" (current alarm event), "alarmConfirm" (confirm alarm event)*/ "@size": 2, "@opt": ["alarmTrigger", "alarmConfirm"] /*optional, array of string*/ }, "accessModuleType": { /*optional, string, access module type: "localSiren"*/ "@opt": ["localSiren"] } } }