I have been able to control brightness (Dimmer) and color_temp (CT) using light.mqtt template schema as per below:
Note I have SetOption89, SetOption 100 and SetOption 112 enabled, if you dont, the command template could need adjusting a little
- platform: "mqtt"
unique_id: zigbee_light
name: "Zigbee Light"
schema: template
state_topic: "tele/tasmota/DeviceName/SENSOR"
command_topic: "cmnd/tasmota_zigbee/DeviceName/SENSOR/ZbSend"
command_on_template: >
{%- if brightness is defined -%}
{"Device":"DeviceName","send":{"Dimmer": {{ brightness }}}}
{%- endif -%}
{%- if color_temp is defined -%}
{"Device":"DeviceName","send":{"CT": {{ color_temp }}}}
{%- endif -%}
{%- if state is defined -%}
{"Device":"DeviceName","send":{"Power": {{ state }}}}
{%- endif -%}
command_off_template: '{"Device":"DeviceName","send":{"Power": {{ state }}}}'
state_template: '{{ value_json.state }}'
brightness_template: '{{ value_json.brightness }}'
color_temp_template: '{{ value.json.color_temp }}'
qos: 0
optimistic: true
hope its helpful for someone.
light.mqtt template schema documentation here: MQTT Light - Home Assistant
unfortunately the template schema only supports rgb color mode and not hs or xy which tasmota supports. I’ve made a feature request here, but cant see it getting may upvotes!