Only HDL310 and HDL410 devices support this command
Allows clients to get control settings from a device, including the speaker treble level, the speaker bass level, and whether or not the microphone is muted.
After a request is made, the control settings will be returned via the response body from the device based on which settings were requested. If there is no specified body, or no attributes in the attributes array inside the request body, then it will return all control settings supported.
If an error occurs, the WebSocket will respond with an appropriate status code and message.
Control setting | Description |
---|---|
microphoneMute | When this property is true, the microphone is muted. When this property is false, the microphone is not muted. |
speakerTrebleLevel | This is the speaker treble level. This is measured in whole numbers from 0 to 100. |
speakerBassLevel | This is the speaker bass level. This is measured in whole numbers from 0 to 100. |
Request
{
"request": "v1/devices/commands/getControlSettings",
"requestId": string,
"clientId": string,
"body": {
"attributes": ["microphoneMute", "speakerTrebleLevel", "speakerBassLevel"]
}
}
Response
{
"request": "v1/devices/commands/getControlSettings",
"requestId": string,
"clientId": string,
"body": {
"microphoneMute": boolean,
"speakerTrebleLevel": number,
"speakerBassLevel": number
}
}
Errors
Status code | Description |
---|---|
10000 – Bad request | Request does not conform to the specification. The message field will include detailed information about which part of the request is incorrect. |
12001 – Unsupported attributes | Request body does not conform to the specification. The message field will include detailed information about which part of the request body is incorrect. |
Sample requests
1. Valid request/response with body
Request
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "3abe203s-42b7-4b0b-9awaf-5c381793a192",
"clientId": "test",
"body": {
"attributes": ["microphoneMute"]
}
}
Response
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "3abe203s-42b7-4b0b-9awaf-5c381793a192",
"clientId": "test",
"body": {
"microphoneMute": true
}
}
2. Valid request/response with no body
Request
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "3abe203s-42b7-4b0b-9awaf-5c381793a192",
"clientId": "test"
}
Response
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "3abe203s-42b7-4b0b-9awaf-5c381793a192",
"clientId": "test",
"body": {
"microphoneMute": false,
"speakerTrebleLevel": 48,
"speakerBassLevel": 55
}
}
3. Invalid request - no requestId or clientId
Request
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "",
"clientId": ""
}
Response
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "",
"clientId": "",
"errors": [
{
"statusCode": 10000,
"message": "clientId: String can't be empty or whitespace"
},
{
"statusCode": 10000,
"message": "requestId: String can't be empty or whitespace"
}
]
}
4. Invalid request - bad body
This is an invalid request, since the attributes values are all case sensitive.
Request
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "3abe203s-42b7-4b0b-9awaf-5c381793a192",
"clientId": "test",
"body": {
"attributes": ["microphonemute"]
}
}
Response
{
"request": "v1/devices/commands/getControlSettings",
"requestId": "3abe203s-42b7-4b0b-9awaf-5c381793a192",
"clientId": "test",
"errors": [
{
"statusCode": 12001,
"message": "Unsupported Attributes: attributes 0. Invalid enum value. Expected 'microphoneMute' | 'speakerTrebleLevel' | 'speakerBassLevel', received 'microphonemute'"
}
]
}