{
  "subscribeTopic": "#",
  "topics": [
    {
      "deviceType": "devices.types.thermostat",
      "stateTopic": "<user_name>/climate/<device_id>/state",
      "configTopic": "<user_name>/climate/<device_id>/config",
      "availableTopic": "<user_name>/climate/<device_id>/available",
      "commandTopics": [
        {
          "capability": {
            "type": "devices.capabilities.on_off",
            "stateInstance": "on"
          },
          "topic": "<user_name>/climate/<device_id>/power/set",
          "topicStateKeys": ["mode"],
          "messageValueMapping": {
            "off": false,
            "__default": true
          }
        },
        {
          "capability": {
            "type": "devices.capabilities.range",
            "stateInstance": "temperature"
          },
          "topic": "<user_name>/climate/<device_id>/temperature/set",
          "topicStateKeys": ["target_temp"]
        },
        {
          "capability": {
            "type": "devices.capabilities.mode",
            "stateInstance": "thermostat"
          },
          "topic": "<user_name>/climate/<device_id>/thermostat/set",
          "topicStateKeys": ["mode"],
          "messageValueMapping": {
            "off": "auto"
          }
        },
        {
          "capability": {
            "type": "devices.capabilities.toggle",
            "stateInstance": "oscillation"
          },
          "topic": "<user_name>/climate/<device_id>/oscillation/set",
          "topicStateKeys": []
        },
        {
          "property": {
            "type": "devices.properties.float",
            "stateInstance": "temperature"
          },
          "topic": "",
          "topicStateKeys": ["temp"]
        },
        {
          "property": {
            "type": "devices.properties.event",
            "stateInstance": "vibration"
          },
          "topic": "",
          "topicStateKeys": ["vibration"]
        }
      ]
    }
  ]
}