Unify Framework UCL MQTT Reference 1.7.0
All Files Pages
IASWD Cluster

The following commands and attributes are accepted as JSON payloads for the IASWD cluster.



IASWD Attributes

The following attribute topics are used to retrieve the IASWD cluster state.


IASWD/MaxDuration Attribute

MQTT Topic Pattern:

[PREFIX]/IASWD/Attributes/MaxDuration/Reported
[PREFIX]/IASWD/Attributes/MaxDuration/Desired

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Cluster MaxDuration Attribute Properties",
"type": "object",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

To see desired/reported value for MaxDuration attribute under the by-unid topic space:

mosquitto_sub -t 'ucl/by-unid/+/+/IASWD/Attributes/MaxDuration/+'
# Example output
ucl/by-unid/<UNID>/ep0/IASWD/Attributes/MaxDuration/Desired { "value": <DESIRED_MAX_DURATION>}
ucl/by-unid/<UNID>/ep0/IASWD/Attributes/MaxDuration/Reported { "value": <REPORTED_MAX_DURATION>}



IASWD/ClusterRevision Attribute

MQTT Topic Pattern:

[PREFIX]/IASWD/Attributes/ClusterRevision/Reported
[PREFIX]/IASWD/Attributes/ClusterRevision/Desired

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Cluster ClusterRevision Attribute Properties",
"type": "object",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

To see desired/reported value for ClusterRevision attribute under the by-unid topic space:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/Attributes/ClusterRevision/+'
# Example output
ucl/by-unid/<UNID>/<EP>/IASWD/Attributes/ClusterRevision/Desired { "value": <DESIRED_CLUSTER_REVISION> }
ucl/by-unid/<UNID>/<EP>/IASWD/Attributes/ClusterRevision/Reported { "value": <REPORTED_CLUSTER_REVISION> }



IASWD Command Support

MQTT Topic Pattern:

[PREFIX]/IASWD/SupportedCommands
[PREFIX]/IASWD/SupportedGeneratedCommands

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Command Support Properties",
"type": "object",
"properties": {
"value": {
"type": "array",
"items" : {
"type": "string",
"enum": [
"StartWarning",
"Squawk",
"WriteAttributes",
"ForceReadAttributes"
]
}
}
}
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

To see supported commands for IASWD cluster under the by-unid topic space:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/SupportedCommands'
# Example output
ucl/by-unid/<UNID>/<EP>/IASWD/SupportedCommands { "value": ["StartWarning","Squawk","WriteAttributes", "ForceReadAttributes"] }

To see supported generated commands for IASWD cluster under the by-unid topic space:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/SupportedGeneratedCommands'
# Example output
ucl/by-unid/<UNID>/<EP>/IASWD/SupportedGeneratedCommands { "value": [] }



IASWD Commands



IASWD/StartWarning Command

MQTT Topic Pattern:

[PREFIX]/IASWD/Commands/StartWarning
[PREFIX]/IASWD/GeneratedCommands/StartWarning

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Cluster StartWarning Command Properties",
"type": "object",
"properties": {
"SirenConfiguration": {
"type": "StartWarningSirenConfiguration"
},
"WarningDuration": {
"type": "integer"
},
"StrobeDutyCycle": {
"type": "integer"
},
"StrobeLevel": {
"type": "IaswdLevel"
}
},
"required": [
"SirenConfiguration",
"WarningDuration",
"StrobeDutyCycle",
"StrobeLevel"
]
}

Example Mosquitto CLI Tool Usage

To send a IASWD/StartWarning command under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/Commands/StartWarning' -m '{ "SirenConfiguration": <SIREN_CONFIGURATION_VALUE>,"WarningDuration": <WARNING_DURATION_VALUE>,"StrobeDutyCycle": <STROBE_DUTY_CYCLE_VALUE>,"StrobeLevel": <STROBE_LEVEL_VALUE> }'

To receive a IASWD/StartWarning generated command from a UNID/endpoint:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/GeneratedCommands/StartWarning'



IASWD/Squawk Command

MQTT Topic Pattern:

[PREFIX]/IASWD/Commands/Squawk
[PREFIX]/IASWD/GeneratedCommands/Squawk

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Cluster Squawk Command Properties",
"type": "object",
"properties": {
"SquawkConfiguration": {
"type": "SquawkSquawkConfiguration"
}
},
"required": [
"SquawkConfiguration"
]
}

Example Mosquitto CLI Tool Usage

To send a IASWD/Squawk command under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/Commands/Squawk' -m '{ "SquawkConfiguration": <SQUAWK_CONFIGURATION_VALUE> }'

To receive a IASWD/Squawk generated command from a UNID/endpoint:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/GeneratedCommands/Squawk'



IASWD/WriteAttributes Command

MQTT Topic Pattern:

[PREFIX]/IASWD/Commands/WriteAttributes

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Cluster WriteAttributes Command Properties",
"type": "object",
"properties": {
"MaxDuration": {
"type": "integer"
}
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

To update all IASWD attributes under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/Commands/WriteAttributes' -m '{ "MaxDuration": <MAX_DURATION_VALUE> }'

‍NOTE: Specify only the list of attributes to write in this command. Unspecified attributes will not be updated.



IASWD/ForceReadAttributes Command

MQTT Topic Pattern:

[PREFIX]/IASWD/Commands/ForceReadAttributes

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "IASWD Cluster ForceReadAttributes Command Properties",
"type": "object",
"properties": {
"value": {
"type": "array"
"items": {
"type": "string",
"enum": [
"MaxDuration"
]
}
}
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

To force read all IASWD attributes under the by-unid topic space (by sending an empty array):

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/Commands/ForceReadAttributes' -m '{ "value": [] }'

To force read one of the IASWD attributes under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/IASWD/Commands/ForceReadAttributes' -m '{ "value": ["MaxDuration"] }'