1429 Commits

Author SHA1 Message Date
Steven Stallion
73442e8443
Add SensorPush Cloud integration (#134223) 2025-02-20 16:15:47 +01:00
Abílio Costa
8e6f2e6ff2
Add LINAK virtual integration supported by Idasen Desk (#138749) 2025-02-19 21:48:27 +01:00
Maciej Bieniek
c48797804d
Add _shelly._tcp to Shelly zeroconf configuration (#138782)
Add _shelly._tcp to zeroconf
2025-02-18 19:57:10 +01:00
pglab-electronics
8c602d74f3
Add pglab integration (#109725)
* Add PG LAB Electronics integration

* Add time from last boot sensor diagnostic

* Limit the initial new pglab integration to only one platform

* Update FlowHandler with the new return type ConfigFlowResult

* Fix docstring file with the right integration name to PG LAB.

* There is no need for default value in the callback definition.

* Move all mqtt callbacks to be global and also renamed with a better name.

* Removed unused member variables.

* Renaming functions with a better name.

* Adding miss docstring to __build_device.

* Renamed CreateDiscovery with a better name.

* Removing not so meaning comment.

* Avoid to populate hass.data with pglab discovery information. Use hass.data[DOMAIN] instead.

* Revert "Removed unused member variables."

This reverts commit 4193c491ec3c31d5c589abac59028ee9be898785.

* Removed unused member variables.

* Refactoring of const. Be sure to have in const.py constant that are used in at least two other modules

* Restoring back the process to unregister the plaform when unload the integration.

* fix spelling mistake

* Revert "Move all mqtt callbacks to be global and also renamed with a better name."

This reverts commit d94d8010d5d11d3febfcb075859483d9e2beae3c.

* Main refactoring to avoid to store PG Lab discovery in hass.data

* Change class name  BaseEntity in PGLabEntity. And named PyPGLab...  what imported from external python module pypglab.

* Avoid to use dict to create DeviceInfo

* Removing unused parameter

* Removing not necessary call to base class

* Update entity name/id to be compatible with the new integration policy.

* Upate test to new entity id

* Add new line after file description

* avoid to store in local variable data for calling function

* Move PGLABConfigEntry in __init__.py

* change function to pure callback

* to avoid hang, dont' trust the split of the discovery topic... introduce a max split count

* rename method with a more meaning name

* use assignment operator

* rename variable with a better name

* removing unecessary test

* Raise exception in case of unexpected error during discovery

* Review comments all other the intergration.

* Rename classes to be consistent in integration

* Using new feature single_config_entry to allow single instance integration

* rename class FlowHandler to PGLabFlowHandler

* using __package__ to initialize integration logger

* missing to catch the exception when for some reason is not possible to create the discovery instance. This can happen when the discovery MQTT message is not in valid json format.

* using ATTR_ENTITY_ID instead of the string

* using SOURCE_MQTT, SOURCE_USER instead of config_entries.SOURCE_MQTT, config_entries.SOURCE_USER

* Using FlowResultType.ABORT instead of the string value

* Code refactoring for tests of configuration from USER and MQTT

* Remove to the user the possibility to add PGLab integration manually, and remove not needed tests.

* Change test_device_update to use snapshot to check test result

* Raise exeception in case of unexpected device and entity_id

* Avoid to log on info channel.

* Renamed _LOGGER in LOGGER

* Propage the call to the base class

* Remove not needed code because from the manifest it's only allows a single instance

* Using specific type for result test instead of string value

* Code refactoring, avoid not necessary function

* update to the new way to import mqtt components

* Avoid runtime check

* add err variable for catching the exception

* add doc string to mqtt_publish

* add doc string to mqtt_subscribe

* Rename DiscoverDeviceInfo.add_entity_id in add_entity

* add doc string

* removing not meaning documentation string

* fix spelling

* fix wrong case in docstring

* fix spelling mistake in PyPGLab callback name

* rename mqtt message received callback

* Avoid to store hard coded discovery_prefix

* Removing unused strings from strings.json

* Give to the user more information during config_flow, and add the possibility to add manually the integration

* Fix to avoid fails of auto test

* update discovery test

* Be sure to always subscribe to MQTT topic when entity is added to HA

* Update codeowner of PGLAB integration and test

* Add control to check if mqtt is available during integration setup

* New test for check no state change for disable entity switch

* Remore not more used file

* update pypglab to version 0.0.3 and improve the symmetry to subscribe/unsubscribe to mqtt entity topic and to register/deregister the status update callback

* Update codeowner of pglab integration

* Adding quality_scale

* removing async_setup

* Fix spelling mistake

* Added test to cover config_flow.async_step_user

---------

Co-authored-by: Pierluigi <p.garaventa@gmail.com>
2025-02-10 08:19:42 +01:00
J. Diego Rodríguez Royo
91dbe3092f
Only allow single Home Connect config entry (#137088)
* Make Home Connect config entry unique

* Use unique ID for Home connect config entry

* Remove unnecessary code

* Revert "Use unique ID for Home connect config entry"

This reverts commit 424131746990dfbbba05b578f61fd49f4f7cb8d7.

* Added tests
2025-02-08 16:29:00 +01:00
Milan Meulemans
6c74824ac1
Add discovery for Nanoleaf Blocks and 4D (#137792) 2025-02-08 08:51:33 +01:00
J. Nick Koston
c0061dba77
Bump govee-ble to 0.43.0 to fix compat with new H5179 firmware (#137508)
changelog: https://github.com/Bluetooth-Devices/govee-ble/compare/v0.42.1...v0.43.0

fixes #136969
2025-02-06 08:31:23 +01:00
jukrebs
1e99b87868
Add iometer integration (#135513) 2025-02-04 22:36:47 +00:00
starkillerOG
c5e60045b4
Add Smart Rollos virtual motionblinds integration (#137190) 2025-02-03 17:21:28 +01:00
starkillerOG
ce5be8686a
Add Heicko virtual motionblinds integration (#137191) 2025-02-03 17:18:30 +01:00
starkillerOG
94daeffe44
Add Ublockout virtual integration of MotionBlinds (#137179) 2025-02-03 17:10:39 +01:00
TimL
0f641fcb74
Switch to using IP Addresses for connecting to smlight devices (#137204) 2025-02-02 17:08:32 -06:00
starkillerOG
a6781107df
Add Linx virtual motionblinds integration (#137184) 2025-02-02 21:22:04 +01:00
Jan Bouwhuis
8db6a6cf17
Shorten the integration name for incomfort (#136930) 2025-01-30 17:47:09 +02:00
Nathan Spencer
35e3952770
Add DHCP discovery to balboa (#136762) 2025-01-29 17:28:09 +01:00
G Johansson
b93c2382ce
Add config flow to filter helper (#121522)
Co-authored-by: Robert Resch <robert@resch.dev>
2025-01-29 10:35:01 +01:00
tronikos
a2b5a96bc9
Add Google Drive integration for backup (#134576)
* Add Google Drive integration for backup

* Add test_config_flow

* Stop using aiogoogle

* address a few comments

* Check folder exists in setup

* fix test

* address comments

* fix

* fix

* Use ChunkAsyncStreamIterator in helpers

* repair-issues: todo

* Remove check if folder exists in the reatuh flow. This is done in setup.

* single_config_entry": true

* Add test_init.py

* Store into backups.json to avoid 124 bytes per property limit

* Address comments

* autouse=True on setup_credentials

* Store metadata in description and remove backups.json

* improvements

* timeout downloads

* library

* fixes

* strings

* review

* ruff

* fix test

* Set unique_id

* Use slugify in homeassistant.util

* Fix

* Remove RefreshError

* review

* push more fields to the test constant

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2025-01-28 21:43:30 -08:00
Joost Lekkerkerker
cb407bdfc6
Add support for HomeWizard Plug-In Battery and v2 API (#136733) 2025-01-28 19:09:49 +01:00
Josef Zweck
5695582387
Add OneDrive as backup provider (#135121)
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
2025-01-28 14:57:46 +00:00
Allen Porter
58b4556a1d
Add the Model Context Protocol integration (#135058)
* Add the Model Context Protocol integration

* Improvements to mcp integration

* Move the API prompt constant

* Update config flow error handling

* Update test descriptions

* Update tests/components/mcp/test_config_flow.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update tests/components/mcp/test_config_flow.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Address PR feedback

* Update homeassistant/components/mcp/coordinator.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Move tool parsing to the coordinator

* Update session handling not to use a context manager

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2025-01-27 14:38:52 -05:00
Shay Levy
66f945e852
Bump aiowebostv to 0.6.0 (#136206) 2025-01-23 13:51:24 +01:00
rwalker777
6fa4cbd3e1
Revert "Add Tuya based bluetooth lights" (#133386)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-01-22 18:04:39 -10:00
Jan Bouwhuis
b8632063f5
Add dhcp discovery to incomfort integration (#136027)
* Add dhcp discovery to incomfort integration

* Remove duplicate code

* Ensure confirmation when discovered via DHCP

* Validate hostname is not changed

* Fix test

* Create gateway device with unique_id

* Add tests for assertion on via device

* Add registered devices to allow dhcp updates

* Migrate existing entry with host match

* Always load gatewate device an check if exising entry is loaded

* Make isolated flow step for dhcp auth

* Suggestions from code review
2025-01-22 07:55:55 +01:00
J. Nick Koston
016a274698
Bump govee-ble to 0.41.0 (#135750)
Adds support for the H5130 pressure/presence sensor

changelog: https://github.com/Bluetooth-Devices/govee-ble/compare/v0.40.0...v0.41.0
2025-01-16 10:48:29 +02:00
qbus-iot
2d2f4f5cec
Add new integration Qbus (#127280)
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
Co-authored-by: Thomas D <11554546+thomasddn@users.noreply.github.com>
2025-01-13 19:06:52 +00:00
epenet
b84a4dc120
Add zeroconf discovery to onewire (#135295) 2025-01-13 17:52:37 +00:00
Paul Daumlechner
25041aa02d
Add dhcp discovery to velux (#135138)
Co-authored-by: Joostlek <joostlek@outlook.com>
2025-01-13 12:01:04 +01:00
Simon Lamon
b9259b6f77
Add config flow to NMBS (#121548)
Co-authored-by: Joostlek <joostlek@outlook.com>
2025-01-11 10:31:47 +01:00
Joris Pelgröm
4129697dd9
Add LetPot integration (#134925) 2025-01-08 21:38:52 +01:00
starkillerOG
c533f63a87
Add Decorquip virtual motion blinds integration (#134402) 2025-01-06 15:36:38 +01:00
G Johansson
bf0cf1c30f
Set single_config_entry in System monitor manifest (#134838) 2025-01-05 22:17:08 -05:00
Rylie Pavlik
a2c2d37eb1
Add support for "Lumin Smart Light" LD-0003 (#133328) 2025-01-04 13:53:16 -10:00
Markus Adrario
eec5fb2133
Add Homee integration to Core (#133738)
Co-authored-by: Joostlek <joostlek@outlook.com>
2025-01-03 13:44:06 +01:00
Joost Lekkerkerker
23ed62c1bc
Push Overseerr updates via webhook (#134187) 2025-01-03 08:26:01 +01:00
ashionky
87454babfa
Add debug log and Optimize code (#134328)
* debug log

* add sw_version hw_version

* log
2025-01-02 09:10:01 +01:00
Allen Porter
a5d0c3528c
Add the Model Context Protocol Server integration (#134122)
* Add the Model Context Protocol Server integration

* Remove unusued code in init

* Fix comment wording

* Use util.uild for unique ids

* Set config entry title to the LLM API name

* Extract an SSE parser and update comments

* Update comments and defend against already closed sessions

* Shorten description

* Update homeassistant/components/mcp_server/__init__.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Change integration type to service

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2025-01-01 19:38:33 -05:00
Keith
809629c0e2
Add integration for igloohome devices (#130657)
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-01-01 12:55:04 +01:00
Noah Husby
b7541f098c
Add discovery to Russound RIO (#134245) 2024-12-30 22:46:08 +01:00
Joost Lekkerkerker
268c21addd
Add Overseerr integration (#133981)
* Add Overseerr integration

* Add Overseerr integration

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix
2024-12-28 11:50:36 +01:00
Josef Zweck
5e0088feaa
Add azure_data_explorer to microsoft brand (#134088) 2024-12-27 15:36:07 +01:00
Jordi
2d5e2aa4b4
Add Harvey virtual integration (#133874)
Add harvey virtual integration
2024-12-24 08:01:50 +01:00
Joost Lekkerkerker
f2df57e230
Add DHCP discovery to Withings (#133737) 2024-12-21 19:36:13 +01:00
Glenn Vandeuren (aka Iondependent)
0037799bfe
Change niko_home_control library to nhc to get push updates (#132750)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: VandeurenGlenn <8685280+VandeurenGlenn@users.noreply.github.com>
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-12-21 19:28:11 +01:00
G Johansson
b29be34f55
Allow Filter title to be translated (#128929) 2024-12-20 21:21:41 +01:00
Franck Nijhof
3fe08a7223
Add zeroconf discovery to Peblar Rocksolid EV chargers (#133529) 2024-12-19 00:39:14 +01:00
Franck Nijhof
bb2d027532
Add Peblar Rocksolid EV Chargers integration (#133501)
* Add Peblar Rocksolid EV Chargers integration

* Process review comments
2024-12-18 19:11:13 +01:00
Tomer Shemesh
39d781905d
Add ssdp discovery to Onkyo (#131066) 2024-12-18 10:21:37 +01:00
Abílio Costa
e73512e11c
Add integration_type to Idasen Desk (#132486)
* Add Idasen Desk quality scale record

* Update wrong checks

* Add integration_type to Idasen Desk
2024-12-17 23:49:04 +01:00
Klaas Schoute
21c3bf48f9
Allow only single instance of easyenergy integration (#133447) 2024-12-17 21:02:39 +01:00
Klaas Schoute
c9ca1f63ea
Allow only single instance of energyzero integration (#133443) 2024-12-17 20:44:24 +01:00