Unify Framework UCL MQTT Reference 1.7.0
All Files Pages
Identify Cluster

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



Identify Attributes

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


Identify/IdentifyTime Attribute

MQTT Topic Pattern:

[PREFIX]/Identify/Attributes/IdentifyTime/Reported
[PREFIX]/Identify/Attributes/IdentifyTime/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/Identify/Attributes/IdentifyTime/+'
# Example output
ucl/by-unid/<UNID>/ep0/Identify/Attributes/IdentifyTime/Desired { "value": <DESIRED_IDENTIFY_TIME>}
ucl/by-unid/<UNID>/ep0/Identify/Attributes/IdentifyTime/Reported { "value": <REPORTED_IDENTIFY_TIME>}



Identify/ClusterRevision Attribute

MQTT Topic Pattern:

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

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Identify 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>/Identify/Attributes/ClusterRevision/+'
# Example output
ucl/by-unid/<UNID>/<EP>/Identify/Attributes/ClusterRevision/Desired { "value": <DESIRED_CLUSTER_REVISION> }
ucl/by-unid/<UNID>/<EP>/Identify/Attributes/ClusterRevision/Reported { "value": <REPORTED_CLUSTER_REVISION> }



Identify Command Support

MQTT Topic Pattern:

[PREFIX]/Identify/SupportedCommands
[PREFIX]/Identify/SupportedGeneratedCommands

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

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

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

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



Identify Commands



Identify/Identify Command

MQTT Topic Pattern:

[PREFIX]/Identify/Commands/Identify
[PREFIX]/Identify/GeneratedCommands/Identify

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/Identify/Commands/Identify' -m '{ "IdentifyTime": <IDENTIFY_TIME_VALUE> }'

To receive a Identify/Identify generated command from a UNID/endpoint:

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



Identify/IdentifyQueryResponse Command

MQTT Topic Pattern:

[PREFIX]/Identify/Commands/IdentifyQueryResponse
[PREFIX]/Identify/GeneratedCommands/IdentifyQueryResponse

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Identify Cluster IdentifyQueryResponse Command Properties",
"type": "object",
"properties": {
"Timeout": {
"type": "integer"
}
},
"required": [
"Timeout"
]
}

Example Mosquitto CLI Tool Usage

To send a Identify/IdentifyQueryResponse command under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/Identify/Commands/IdentifyQueryResponse' -m '{ "Timeout": <TIMEOUT_VALUE> }'

To receive a Identify/IdentifyQueryResponse generated command from a UNID/endpoint:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/Identify/GeneratedCommands/IdentifyQueryResponse'



Identify/IdentifyQuery Command

MQTT Topic Pattern:

[PREFIX]/Identify/Commands/IdentifyQuery
[PREFIX]/Identify/GeneratedCommands/IdentifyQuery

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

To send a Identify/IdentifyQuery command under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/Identify/Commands/IdentifyQuery' -m '{ }'

To receive a Identify/IdentifyQuery generated command from a UNID/endpoint:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/Identify/GeneratedCommands/IdentifyQuery'



Identify/TriggerEffect Command

MQTT Topic Pattern:

[PREFIX]/Identify/Commands/TriggerEffect
[PREFIX]/Identify/GeneratedCommands/TriggerEffect

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Identify Cluster TriggerEffect Command Properties",
"type": "object",
"properties": {
"EffectIdentifier": {
"type": "TriggerEffectEffectIdentifier"
},
"EffectVariant": {
"type": "TriggerEffectEffectVariant"
}
},
"required": [
"EffectIdentifier",
"EffectVariant"
]
}

Example Mosquitto CLI Tool Usage

To send a Identify/TriggerEffect command under the by-unid topic space:

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/Identify/Commands/TriggerEffect' -m '{ "EffectIdentifier": <EFFECT_IDENTIFIER_VALUE>,"EffectVariant": <EFFECT_VARIANT_VALUE> }'

To receive a Identify/TriggerEffect generated command from a UNID/endpoint:

mosquitto_sub -t 'ucl/by-unid/<UNID>/<EP>/Identify/GeneratedCommands/TriggerEffect'



Identify/WriteAttributes Command

MQTT Topic Pattern:

[PREFIX]/Identify/Commands/WriteAttributes

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/Identify/Commands/WriteAttributes' -m '{ "IdentifyTime": <IDENTIFY_TIME_VALUE> }'

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



Identify/ForceReadAttributes Command

MQTT Topic Pattern:

[PREFIX]/Identify/Commands/ForceReadAttributes

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

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

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

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