Commit Graph
76 Commits
Author SHA1 Message Date
Franck NijhofandPaulus Schoutsen d82e409d8e Update black to 23.1.0 (#87188) 2023-02-04 21:26:10 -05:00
J. Nick KostonandPaulus Schoutsen 323ab97ff5 Ignore invalid zeroconf names from devices with broken firmwares (#87414) 2023-02-04 21:08:13 -05:00
Franck NijhofandGitHub 4aba3fdad6 Code styling tweaks to the zeroconf integration (#86048) 2023-01-16 18:35:23 -10:00
J. Nick KostonandGitHub 5c38321c4f Ignore unspecified addresses from zeroconf (#81620) 2022-11-07 15:50:45 -06:00
J. Nick KostonandGitHub a72e906ac1 Fix zeroconf when location name has a period (#81022) 2022-10-26 10:39:13 -05:00
J. Nick KostonandGitHub abb3ce6d69 Fix zeroconf starting later than expected (#81023) 2022-10-26 10:06:56 -05:00
Paulus SchoutsenandGitHub 6e893d9162 Store alternative domain for Zeroconf homekit discovery (#79240) 2022-09-29 22:21:00 -04:00
J. Nick KostonandGitHub df6892b908 Offer HKC local push control option when there are multiple zeroconf homekit matches (#74441) 2022-07-05 21:02:18 -07:00
141688e210 Cleanup ServiceInfo compatibility (#60540)
Co-authored-by: epenet <[email protected]>
Co-authored-by: J. Nick Koston <[email protected]>
2022-05-09 14:17:48 +02:00
J. Nick KostonandGitHub cec7e53302 Fix zeroconf tests (#71557) 2022-05-08 19:15:18 -07:00
J. Nick KostonandGitHub ad1241a116 Fix missing patching of homekit matchers in zeroconf tests (#70141) 2022-04-16 16:41:10 +02:00
dbbb5655e5 Bump async-upnp-client to 0.25.0 (#66414)
Co-authored-by: J. Nick Koston <[email protected]>
2022-02-27 08:29:29 -10:00
Joshua RoysandGitHub bc2cc42955 Don't abort zeroconf discovery for IPv6-only devices (#66455) 2022-02-13 15:24:23 -06:00
Joshua RoysandGitHub 9134e5c844 Get discovered zeroconf IPv6 addresses (#65462) 2022-02-11 16:46:17 -06:00
J. Nick KostonandGitHub ee375ff42d Offer local control option when there are multiple zeroconf homekit matches (#62649) 2022-01-04 16:51:38 +01:00
J. Nick KostonandGitHub 615872a5d1 Align zeroconf matching with ZeroconfServiceInfo (#62133) 2021-12-19 02:09:21 -06:00
c05eca1c82 Remove log flooding prevention logic from discovery info (#61243)
Co-authored-by: epenet <[email protected]>
2021-12-08 10:28:26 -10:00
d64bf3cc6c Use dataclass properties in Zeroconf tests (#61109)
Co-authored-by: epenet <[email protected]>
2021-12-06 09:16:39 -10:00
37430e7c9e Add get method to ZeroconfServiceInfo (#60528)
Co-authored-by: epenet <[email protected]>
2021-11-29 17:37:55 +01:00
J. Nick KostonandGitHub 347c4ea137 Bump zeroconf to 0.37.0 (#59932) 2021-11-18 20:23:20 -08:00
J. Nick KostonandGitHub b75476e844 Add support for matching the zeroconf model property (#58922) 2021-11-07 07:44:15 -08:00
J. Nick KostonandGitHub 5958e6a3f9 Ensure zeroconf uses the newest non-link local address in discovery (#58257) 2021-10-23 08:50:19 -10:00
J. Nick KostonandGitHub 26f73779cc Avoid enabling ipv6 dual stack for zeroconf on unsupported platforms (#56584) 2021-09-26 09:51:34 -07:00
J. Nick KostonandGitHub 88e42a540e Remove leftover debug prints in tests (#56409) 2021-09-19 12:43:02 +02:00
Erik MontnemeryandGitHub bce4c5eb11 Prevent 3rd party lib from opening sockets in zeroconf tests (#56324) 2021-09-16 23:19:32 -10:00
J. Nick KostonandGitHub 1325b38256 Handle case where location_name is set to "" for zeroconf (#54880) 2021-08-20 14:33:23 -07:00
J. Nick KostonandGitHub 5d19575a84 Exclude global scope IPv6 when setting up zeroconf interfaces (#54632) 2021-08-18 09:00:09 -07:00
J. Nick KostonandGitHub 74a30af79b Always set interfaces explicitly when IPv6 is present (#54268) 2021-08-09 21:13:55 +02:00
J. Nick KostonandGitHub 5f790f6bd9 Fetch interface index from network integration instead of socket.if_nametoindex in zeroconf (#54152) 2021-08-06 09:15:35 -07:00
Yuxiang ZhuandGitHub ce663f629c Fix various zeroconf IPv6 compatibility issues (#53505) 2021-07-27 19:31:51 +02:00
J. Nick KostonandGitHub 9f16e390f5 Deprecate IPv6 zeroconf setting in favor of the network integration (#51173) 2021-06-29 17:13:31 -10:00
64661ee2b7 Add network configuration integration (#50874)
Co-authored-by: Ruslan Sayfutdinov <[email protected]>
Co-authored-by: Paulus Schoutsen <[email protected]>
Co-authored-by: Martin Hjelmare <[email protected]>
2021-05-26 09:06:30 -07:00
J. Nick KostonandGitHub f1d02bb137 Expand homekit zeroconf matching to use fnmatch (#50381) 2021-05-19 00:20:56 -05:00
3cc3cacd08 Start ServiceBrowser as soon as possible in zeroconf (#50784)
Co-authored-by: Ruslan Sayfutdinov <[email protected]>
2021-05-17 20:51:05 -07:00
J. Nick KostonandGitHub dd3965e4e2 Ensure zeroconf does not generate config flows when matching attributes are missing (#50208)
If macaddress, name, or manufacturer were missing from the
discovery info, the matcher would accept instead of reject.
2021-05-11 21:24:42 -07:00
J. Nick KostonandGitHub 3f547e58d7 Fix zeroconf test inadvertently matching strings that start with name (#49578)
* Fix zeroconf test inadvertently matching strings that start with name

* adjust

* adjust
2021-04-28 11:47:36 +02:00
J. Nick KostonandGitHub cb4558c088 Autodetect zeroconf interface selection when not set (#49529) 2021-04-21 22:10:34 -07:00
J. Nick KostonandGitHub 493bd4cdca Add manufacturer matching support to zeroconf (#48810)
We plan on matching with _airplay which means we need
to able to limit to specific manufacturers to avoid
generating flows for integrations with the wrong
manufacturer
2021-04-08 09:03:10 -10:00
Paulus SchoutsenandGitHub 46e593485e Handle zeroconf updated events (#47683) 2021-03-09 10:14:00 -10:00
Paulus SchoutsenandGitHub caf14b78d1 Homekit has two types (#44879) 2021-01-07 08:44:34 -10:00
Franck NijhofandGitHub 65cf2fcb6f Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Paulus SchoutsenandGitHub c7bf7b32a2 Zeroconf lowercase (#44675) 2020-12-31 01:06:26 +01:00
J. Nick KostonandGitHub 7b016063ca Refactor zeroconf setup to be async (#39955)
* Refactor zeroconf setup to be async

Most of the setup was calling back to async because
we were setting up listeners.  Since we only need
to jump into the executor to create the zeroconf
instance, its much faster to setup in async.

In testing this cut the setup time in half
or better.

* partial revert to after_deps
2020-09-13 18:06:19 -05:00
9389a7c9be Limit zeroconf discovery to name/macaddress when provided (#39877)
Co-authored-by: Paulus Schoutsen <[email protected]>
2020-09-11 12:19:21 +02:00
Franck NijhofandGitHub 1c2ebdf307 Upgrade black to 20.8b1 (#39287) 2020-08-27 13:56:20 +02:00
J. Nick KostonandGitHub 5a9246468e Prevent invalid data from being passed to zeroconf (#39009) 2020-08-21 14:31:17 +02:00
J. Nick KostonandGitHub 49478298cc Ensure service browser does not collapse on bad dns names (#38851)
If a device on the network presented a bad name, zeroconf
would throw zeroconf.BadTypeInNameException and the service
browser would die off.  We now trap the exception and continue.
2020-08-13 22:00:39 -05:00
J. Nick KostonandGitHub 444df4a7d2 Use the shared zeroconf instance when attempting to create another Zeroconf instance (#38744) 2020-08-12 16:08:33 +02:00
J. Nick KostonandGitHub fdc5208d18 Prevent the zeroconf service browser from terminating when a device without any addresses is discovered. (#38094) 2020-07-22 20:21:57 -10:00
J. Nick KostonandGitHub 5cf7b1b1bc Ensure we do not start discovered flows until after the started event has fired (#38047)
* Ensure we do not start discovered flows until after the start event has fired

This change makes zeroconf and ssdp match discovery behavior of not
creating config flows until the start event has been fired.  This
prevents config flow creation/dependency installs for discovered
config flows from competing for cpu time during startup.

* Start discovery/service browser/ssdp when EVENT_HOMEASSISTANT_STARTED is fired instead of EVENT_HOMEASSISTANT_START
2020-07-21 14:18:43 -10:00