Unify Framework UCL MQTT Reference 1.7.0
All Files Pages
BarrierControl Cluster

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



BarrierControl Attributes

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


BarrierControl/MovingState Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/MovingState/Reported
[PREFIX]/BarrierControl/Attributes/MovingState/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/MovingState/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/MovingState/Desired { "value": <DESIRED_MOVING_STATE>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/MovingState/Reported { "value": <REPORTED_MOVING_STATE>}



BarrierControl/SafetyStatus Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/SafetyStatus/Reported
[PREFIX]/BarrierControl/Attributes/SafetyStatus/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/SafetyStatus/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/SafetyStatus/Desired { "value": <DESIRED_SAFETY_STATUS>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/SafetyStatus/Reported { "value": <REPORTED_SAFETY_STATUS>}



BarrierControl/Capabilities Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/Capabilities/Reported
[PREFIX]/BarrierControl/Attributes/Capabilities/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/Capabilities/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/Capabilities/Desired { "value": <DESIRED_CAPABILITIES>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/Capabilities/Reported { "value": <REPORTED_CAPABILITIES>}



BarrierControl/OpenEvents Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/OpenEvents/Reported
[PREFIX]/BarrierControl/Attributes/OpenEvents/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/OpenEvents/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/OpenEvents/Desired { "value": <DESIRED_OPEN_EVENTS>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/OpenEvents/Reported { "value": <REPORTED_OPEN_EVENTS>}



BarrierControl/CloseEvents Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/CloseEvents/Reported
[PREFIX]/BarrierControl/Attributes/CloseEvents/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/CloseEvents/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/CloseEvents/Desired { "value": <DESIRED_CLOSE_EVENTS>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/CloseEvents/Reported { "value": <REPORTED_CLOSE_EVENTS>}



BarrierControl/CommandOpenEvents Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/CommandOpenEvents/Reported
[PREFIX]/BarrierControl/Attributes/CommandOpenEvents/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/CommandOpenEvents/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/CommandOpenEvents/Desired { "value": <DESIRED_COMMAND_OPEN_EVENTS>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/CommandOpenEvents/Reported { "value": <REPORTED_COMMAND_OPEN_EVENTS>}



BarrierControl/CommandCloseEvents Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/CommandCloseEvents/Reported
[PREFIX]/BarrierControl/Attributes/CommandCloseEvents/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/CommandCloseEvents/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/CommandCloseEvents/Desired { "value": <DESIRED_COMMAND_CLOSE_EVENTS>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/CommandCloseEvents/Reported { "value": <REPORTED_COMMAND_CLOSE_EVENTS>}



BarrierControl/OpenPeriod Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/OpenPeriod/Reported
[PREFIX]/BarrierControl/Attributes/OpenPeriod/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/OpenPeriod/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/OpenPeriod/Desired { "value": <DESIRED_OPEN_PERIOD>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/OpenPeriod/Reported { "value": <REPORTED_OPEN_PERIOD>}



BarrierControl/ClosePeriod Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/ClosePeriod/Reported
[PREFIX]/BarrierControl/Attributes/ClosePeriod/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/ClosePeriod/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/ClosePeriod/Desired { "value": <DESIRED_CLOSE_PERIOD>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/ClosePeriod/Reported { "value": <REPORTED_CLOSE_PERIOD>}



BarrierControl/BarrierPosition Attribute

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Attributes/BarrierPosition/Reported
[PREFIX]/BarrierControl/Attributes/BarrierPosition/Desired

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_sub -t 'ucl/by-unid/+/+/BarrierControl/Attributes/BarrierPosition/+'
# Example output
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/BarrierPosition/Desired { "value": <DESIRED_BARRIER_POSITION>}
ucl/by-unid/<UNID>/ep0/BarrierControl/Attributes/BarrierPosition/Reported { "value": <REPORTED_BARRIER_POSITION>}



BarrierControl/ClusterRevision Attribute

MQTT Topic Pattern:

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

MQTT Payload JSON Schema:

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



BarrierControl Command Support

MQTT Topic Pattern:

[PREFIX]/BarrierControl/SupportedCommands
[PREFIX]/BarrierControl/SupportedGeneratedCommands

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

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

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

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



BarrierControl Commands



BarrierControl/GoToPercent Command

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Commands/GoToPercent
[PREFIX]/BarrierControl/GeneratedCommands/GoToPercent

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/BarrierControl/Commands/GoToPercent' -m '{ "PercentOpen": <PERCENT_OPEN_VALUE> }'

To receive a BarrierControl/GoToPercent generated command from a UNID/endpoint:

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



BarrierControl/Stop Command

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Commands/Stop
[PREFIX]/BarrierControl/GeneratedCommands/Stop

MQTT Payload JSON Schema:

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

Example Mosquitto CLI Tool Usage

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

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

To receive a BarrierControl/Stop generated command from a UNID/endpoint:

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



BarrierControl/WriteAttributes Command

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Commands/WriteAttributes

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "BarrierControl Cluster WriteAttributes Command Properties",
"type": "object",
"properties": {
"OpenEvents": {
"type": "integer"
},
"CloseEvents": {
"type": "integer"
},
"CommandOpenEvents": {
"type": "integer"
},
"CommandCloseEvents": {
"type": "integer"
},
"OpenPeriod": {
"type": "integer"
},
"ClosePeriod": {
"type": "integer"
},
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

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

mosquitto_pub -t 'ucl/by-unid/<UNID>/<EP>/BarrierControl/Commands/WriteAttributes' -m '{ "OpenEvents": <OPEN_EVENTS_VALUE> ,"CloseEvents": <CLOSE_EVENTS_VALUE> ,"CommandOpenEvents": <COMMAND_OPEN_EVENTS_VALUE> ,"CommandCloseEvents": <COMMAND_CLOSE_EVENTS_VALUE> ,"OpenPeriod": <OPEN_PERIOD_VALUE> ,"ClosePeriod": <CLOSE_PERIOD_VALUE> , }'

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



BarrierControl/ForceReadAttributes Command

MQTT Topic Pattern:

[PREFIX]/BarrierControl/Commands/ForceReadAttributes

MQTT Payload JSON Schema:

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "BarrierControl Cluster ForceReadAttributes Command Properties",
"type": "object",
"properties": {
"value": {
"type": "array"
"items": {
"type": "string",
"enum": [
"MovingState",
"SafetyStatus",
"Capabilities",
"OpenEvents",
"CloseEvents",
"CommandOpenEvents",
"CommandCloseEvents",
"OpenPeriod",
"ClosePeriod",
"BarrierPosition"
]
}
}
},
"required": [
"value"
]
}

Example Mosquitto CLI Tool Usage

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

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

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

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