From b8edf273c6de799e30c95c607f315f02b0dcacdd Mon Sep 17 00:00:00 2001 From: Der Mundschenk & Compagnie Date: Thu, 4 Jan 2024 14:38:29 +0100 Subject: [PATCH] fix: Support legacy_availability_payload for Home Assistant connection_state (#20547) --- lib/extension/homeassistant.ts | 3 ++- test/homeassistant.test.js | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/extension/homeassistant.ts b/lib/extension/homeassistant.ts index 7fe7740f1..a1e6b9405 100644 --- a/lib/extension/homeassistant.ts +++ b/lib/extension/homeassistant.ts @@ -1796,6 +1796,7 @@ export default class HomeAssistant extends Extension { const discovery: DiscoveryEntry[] = []; const bridge = new Bridge(coordinatorIeeeAddress, coordinatorVersion, discovery); const baseTopic = `${settings.get().mqtt.base_topic}/${bridge.name}`; + const legacyAvailability = settings.get().advanced.legacy_availability_payload; discovery.push( // Binary sensors. @@ -1809,7 +1810,7 @@ export default class HomeAssistant extends Extension { entity_category: 'diagnostic', state_topic: true, state_topic_postfix: 'state', - value_template: '{{ value_json.state }}', + value_template: !legacyAvailability ? '{{ value_json.state }}' : '{{ value }}', payload_on: 'online', payload_off: 'offline', availability: false, diff --git a/test/homeassistant.test.js b/test/homeassistant.test.js index bae0f8e0a..db3b746e8 100644 --- a/test/homeassistant.test.js +++ b/test/homeassistant.test.js @@ -2290,7 +2290,7 @@ describe('HomeAssistant extension', () => { 'device_class': 'connectivity', 'unique_id': 'bridge_0x00124b00120144ae_connection_state_zigbee2mqtt', 'state_topic': 'zigbee2mqtt/bridge/state', - 'value_template': '{{ value_json.state }}', + 'value_template': '{{ value }}', 'payload_on': 'online', 'payload_off': 'offline', 'origin': origin,