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"] }'