UNPKG

matterbridge-hass

Version:
475 lines (315 loc) 17 kB
# <img src="matterbridge.svg" alt="Matterbridge Logo" width="64px" height="64px">&nbsp;&nbsp;&nbsp;Matterbridge hass plugin changelog All notable changes to this project will be documented in this file. If you like this project and find it useful, please consider giving it a star on GitHub at https://github.com/Luligu/matterbridge-hass and sponsoring it. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="120"> </a> ## [0.2.1] - 2025-07-26 ### Breaking changes - [helpers]: All single entities are no more composed devices. This helps the controllers that have issues with composed devices (i.e. Alexa). ### Added - [airquality]: Refactor the airQuality converter to allow conversion from numbers in the range 0-500 and strings like 'good', 'fair' etc. ### Changed - [package]: Updated dependencies. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.2.0] - 2025-07-14 ### Breaking changes - [helpers]: All single entities are no more composed devices. This helps the controllers that have issues with composed devices (i.e. Alexa). ### Added - [platform]: Added the ability to merge HA entities in a single Matter device. - [temperature]: Added conversion from Fahrenheit to Celsius on single entity state for domain climate. - [pressure]: Added conversion from kPa and inHg to hPa. - [sensor]: Added domain sensor with deviceClass 'voltage' unit 'mV'. It sets the battery voltage of the Power Source cluster. - [sensor]: Added domain sensor with deviceClass 'voltage' unit 'V'. It sets the voltage of the Electrical Sensor cluster. - [sensor]: Added domain sensor with deviceClass 'current' unit 'A'. It sets the activeCurrent of the Electrical Sensor cluster. - [sensor]: Added domain sensor with deviceClass 'power' unit 'W'. It sets the activePower of the Electrical Sensor cluster. - [sensor]: Added domain sensor with deviceClass 'energy' unit 'kWh'. It sets the energy of the Electrical Sensor cluster. - [sensor]: Added domain sensor with deviceClass 'aqi' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'volatile_organic_compounds' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'carbon_dioxide' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'carbon_monoxide' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'nitrogen_dioxide' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'ozone' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'formaldehyde' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'radon' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'pm1' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'pm25' for the Air Quality clusters. - [sensor]: Added domain sensor with deviceClass 'pm10' for the Air Quality clusters. - [airquality]: Added airQualityRegex to the config to match not standard air quality sensors entities (e.g., '^sensor\..\*\_air_quality$'). See the README.md. ### Changed - [package]: Updated dependencies. - [storage]: Bumped `MutableDevice` to 1.2.3. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.1.5] - 2025-07-07 ### Added - [converters]: Added endpoint to sensor and binary_sensor converters to merge HA entities. - [platform]: Add subscribeHandler. - [platform]: Refactor commandHandler with new Matterbridge API. - [temperature]: Added conversion from Fahrenheit to Celsius on single entity state for domain sensor and device class temperature. ### Changed - [PowerSource]: Moved PowerSource cluster to the main endpoint. - [package]: Updated dependencies. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.1.4] - 2025-06-28 ### Added - [homeassistant]: Added HassLabel. - [homeassistant]: Added core_config_updated message handler to fetch the new config. - [homeassistant]: Add queue for fetching updates. - [config]: Added applyFiltersToDeviceEntities option to schema. - [config]: Improved filtering logic for label. Now is possible to use the label id or the label name in the label filter. - [DevContainer]: Added support for the [**Matterbridge Plugin Dev Container**](https://github.com/Luligu/matterbridge/blob/dev/README-DEV.md#matterbridge-plugin-dev-container) with optimized named volumes for `matterbridge` and `node_modules`. - [GitHub]: Added GitHub issue templates for bug reports and feature requests. - [ESLint]: Refactored the flat config. - [ESLint]: Added the plugins `eslint-plugin-promise`, `eslint-plugin-jsdoc`, and `@vitest/eslint-plugin`. - [Jest]: Refactored the flat config. - [Vitest]: Added Vitest for TypeScript project testing. It will replace Jest, which does not work correctly with ESM module mocks. - [JSDoc]: Added missing JSDoc comments, including `@param` and `@returns` tags. - [CodeQL]: Added CodeQL badge in the readme. - [Codecov]: Added Codecov badge in the readme. ### Changed - [package]: Updated package to Automator v. 2.0.1. - [package]: Update dependencies. - [storage]: Bumped `node-storage-manager` to 2.0.0. - [logger]: Bumped `node-ansi-logger` to 3.1.1. - [package]: Requires matterbridge 3.1.0. - [worflows]: Removed workflows running on node 18 since it reached the end-of-life in April 2025. ### Fixed - [state]: Fix state update when both old and new state are unavailable. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.1.3] - 2025-06-13 ### Added - [binary_sensor]: Added domain binary_sensor with deviceClass 'presence'. It creates an occupancySensor with OccupancySensing cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'carbon_monoxide'. It creates a smokeCoAlarm with SmokeCoAlarm cluster and feature CoAlarm. - [sensor]: Added domain sensor with deviceClass 'atmospheric_pressure'. It creates a pressureSensor with PressureMeasurement cluster. - [sensor]: Added domain sensor with deviceClass 'battery'. It creates a powerSource with PowerSource cluster. - [binary_sensor]: Added domain sensor with deviceClass 'battery'. It creates a powerSource with PowerSource cluster. ### Changed - [package]: Update package. - [package]: Update dependencies. ### Fixed - [select]: Fixed ghost devices in the Device Home page. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.1.2] - 2025-06-07 ### Added - [homeassistant]: Typed HassWebSocketResponses and HassWebSocketRequests. - [homeassistant]: Added subscribe() and Jest test. - [homeassistant]: Added unsubscribe() and Jest test. - [binary_sensor]: Added domain binary_sensor with deviceClass 'garage_door'. It creates a contactSensor with BooleanState cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'window'. It creates a contactSensor with BooleanState cluster. - [jest]: Added real Jest test to test the HomeAssistant api with a real Home Assistant setup. ### Changed - [config]: Enhanced reconnect config description and set minimum value to 30 secs for reconnectTimeout. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.1.1] - 2025-06-04 ### Added - [binary_sensor]: Added domain binary_sensor with deviceClass 'smoke'. It creates a smokeCoAlarm with SmokeCoAlarm cluster and feature SmokeAlarm. ### Changed - [readme]: Updated readme for clarity. - [package]: Update package. - [package]: Update dependencies. ### Fixed - [reconnect]: Added missed call to fetchData and subscribe on reconnect. - [startup]: Added the value from state for BooleanState cluster to avoid controller alarms. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.1.0] - 2025-06-02 ### Added - [npm]: The dev of matterbridge-hass is published with tag **dev** on **npm** each day at 00:00 UTC if there is a new commit. - [input_button]: Added domain input_button for individual entities. - [switch]: Added domain switch for template individual entities. - [binary_sensor]: Added domain binary_sensor with deviceClass 'door'. It creates a contactSensor with BooleanState cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'vibration'. It creates a contactSensor with BooleanState cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'motion'. It creates an occupancySensor with OccupancySensing cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'occupancy'. It creates an occupancySensor with OccupancySensing cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'cold'. It creates a waterFreezeDetector with BooleanState cluster. - [binary_sensor]: Added domain binary_sensor with deviceClass 'moisture'. It creates a waterLeakDetector with BooleanState cluster. - [online]: Added online / offline setting based on unavailable state. - [filterByArea]: Added filter of individual entities and devices by Area. - [filterByLabel]: Added filter of individual entities and devices by Label. - [HomeAssistant]: Bump HomeAssistant class to v. 1.0.2. Fully async and promise based. ### Changed - [update]: Skip attributes update when state is off. Provisional! - [config]: Removed individualEntityWhiteList and individualEntityBlackList. Use the normal white and black lists. - [config]: Changed serialPostfix to postfix. ### Fixed - [colorControl]: Fixed possibly missed attributes in the cluster creation (#39). <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.11] - 2025-05-29 ### Added - [homeassistant]: Updated interfaces for Entities and States. - [homeassistant]: Updated Jest tests. - [areas]: Added HassArea interface and fetch areas. - [reconnectRetries]: Added reconnectRetries in the config. - [ssl]: Added the possibility to use ssl WebSocket connection to Home Assistant (i.e. wss://homeassistant:8123). - [ssl]: Added certificatePath to the config: enter the fully qualified path to the SSL ca certificate file. This is only needed if you use a self-signed certificate and rejectUnauthorized is enabled. - [ssl]: Added rejectUnauthorized to the config: it ignores SSL certificate validation errors if enabled. It allows to connect to Home Assistant with self-signed certificates. ### Changed - [package]: Update package. - [package]: Update dependencies. - [package]: Requires matterbridge 3.0.4. - [platform]: Changed the timeout of the first connection to 30 seconds. ### Fixed - [reconnect]: Fixed reconnection loop. Now when Home Assistant reboots, the connection is reeastablished correctly if reconnectTimeout and/or reconnectRetries are enabled. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.10] - 2025-04-04 ### Added - [select]: Added calls to select API. ### Changed - [package]: Update package. - [package]: Update dependencies. - [package]: Requires matterbridge 2.2.6. ### Fixed - [device]: Fixed case where current_temperature is not available on thermostats. - [device]: Fixed case with device name empty. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.9] - 2025-02-07 ### Added - [hass]: Added support for helpers with domain input_boolean. - [plugin]: Added check for duplicated device and individual entity names. ### Changed - [package]: Updated dependencies. - [package]: Requires matterbridge 2.1.4. ### Fixed - [cover]: Fixed state closed on domain cover. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.8] - 2025-02-02 ### Added - [config]: Added uniqueItems flag to the lists. - [readme]: Clarified in the README the difference between single entities and device entities. ### Changed - [package]: Update package. - [package]: Update dependencies. - [package]: Requires matterbridge 2.1.0. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.7] - 2025-01-08 ### Added - [selectDevice]: Added selectDevice to get the device names from a list in the config editor. - [selectDevice]: Added selectEntity to get the entity names from a list in the config editor (requires matterbridge >= 1.7.2). - [config]: Added the possibility to validate individual entity in the white and black list by entity_id. - [config]: Added the possibility to postfix also the Matter device name to avoid collision with other instances. - [package]: Requires matterbridge 1.7.1. ### Changed - [package]: Update dependencies. ### Fixed - [config]: Fix the Matter serial number postfix. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.6] - 2024-12-24 ### Added - [entity]: Added individual entity of domain automation, scene and script. - [config]: Added individual entity white and black list. ### Changed - [package]: Update package. - [package]: Update dependencies. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.5] - 2024-12-16 ### Added - [package]: Verified to work with Matterbridege edge. - [package]: Jest coverage 91%. - [homeassistant]: Added Jest test. ### Changed - [package]: Requires Matterbridege 1.6.6. - [package]: Update dependencies. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.4] - 2024-12-12 ### Added - [homeassistant]: Add the possibility to white and black list a device with its name or its device id. - [homeassistant]: Add the possibility to black list one or more device entities with their entity id globally or on a device base. - [homeassistant]: Add sensor domain with temperature, humidity, pressure and illuminance. ### Changed - [package]: Requires Matterbridege 1.6.6. - [package]: Update dependencies. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.3] - 2024-12-07 ### Added - [climate]: Add state heat_cool and attributes target_temp_low target_temp_high to domain climate. ### Changed - [homeassistant]: Changed to debug the log of processing event. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.2] - 2024-12-06 ### Added - [climate]: Add domain climate. ### Changed - [fan]: Update domain fan. - [command]: Jest on hassCommandConverter. - [command]: Refactor hassCommandConverter. - [homeassistant]: Refactor HomeAssistant. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.1-dev.6] - 2024-12-05 ### Added - [homeassistant]: Add event processing for device_registry_updated and entity_registry_updated. - [homeassistant]: Refactor validateDeviceWhiteBlackList and added validateEntityBlackList. - [homeassistant]: Add reconnectTimeout configuration. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.1-dev.5] - 2024-12-05 ### Added - [homeassistant]: Add cover domain to supported devices. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.1-dev.4] - 2024-12-04 ### Changed - [homeassistant]: Change reconnect timeout to 60 seconds. - [homeassistant]: Add callServiceAsync and reconnect timeout. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> ## [0.0.1-dev.2] - 2024-12-03 First published release. <a href="https://www.buymeacoffee.com/luligugithub"> <img src="bmc-button.svg" alt="Buy me a coffee" width="80"> </a> <!-- Commented out section ## [1.1.2] - 2024-03-08 ### Added - [Feature 1]: Description of the feature. - [Feature 2]: Description of the feature. ### Changed - [Feature 3]: Description of the change. - [Feature 4]: Description of the change. ### Deprecated - [Feature 5]: Description of the deprecation. ### Removed - [Feature 6]: Description of the removal. ### Fixed - [Bug 1]: Description of the bug fix. - [Bug 2]: Description of the bug fix. ### Security - [Security 1]: Description of the security improvement. -->