Marc Mueller
84618fa831
Use assignment expressions 30 ( #58714 )
2021-10-30 16:33:42 +02:00
J. Nick Koston
5958e6a3f9
Ensure zeroconf uses the newest non-link local address in discovery ( #58257 )
2021-10-23 08:50:19 -10:00
J. Nick Koston
b86e19143d
Prevent event loop delay / instability from discovery ( #57463 )
2021-10-13 08:37:14 -07:00
J. Nick Koston
26f73779cc
Avoid enabling ipv6 dual stack for zeroconf on unsupported platforms ( #56584 )
2021-09-26 09:51:34 -07:00
J. Nick Koston
1325b38256
Handle case where location_name is set to "" for zeroconf ( #54880 )
2021-08-20 14:33:23 -07:00
J. Nick Koston
6d0ce814e7
Add new network apis to reduce code duplication ( #54832 )
2021-08-18 12:33:26 -05:00
J. Nick Koston
5d19575a84
Exclude global scope IPv6 when setting up zeroconf interfaces ( #54632 )
2021-08-18 09:00:09 -07:00
Ville Skyttä
939fde0a50
ConfigType and async_setup/setup type hint improvements ( #54739 )
2021-08-18 13:22:05 +02:00
J. Nick Koston
74a30af79b
Always set interfaces explicitly when IPv6 is present ( #54268 )
2021-08-09 21:13:55 +02:00
J. Nick Koston
5f790f6bd9
Fetch interface index from network integration instead of socket.if_nametoindex in zeroconf ( #54152 )
2021-08-06 09:15:35 -07:00
Yuxiang Zhu
ce663f629c
Fix various zeroconf IPv6 compatibility issues ( #53505 )
2021-07-27 19:31:51 +02:00
J. Nick Koston
25229a9670
Allow zeroconf name change if there is another Home Assistant running on the local network ( #53476 )
...
* Allow zeroconf name change if there is another Home Assistant running on the local network
* Remove unused try/except
2021-07-26 09:27:49 +02:00
Simone Chemelli
75f7d3d696
Replace util.get_local_ip in favor of components.network.async_get_source_ip() - part 1 ( #52980 )
2021-07-22 08:12:33 -10:00
J. Nick Koston
9f16e390f5
Deprecate IPv6 zeroconf setting in favor of the network integration ( #51173 )
2021-06-29 17:13:31 -10:00
J. Nick Koston
64661ee2b7
Add network configuration integration ( #50874 )
...
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-26 09:06:30 -07:00
J. Nick Koston
f1d02bb137
Expand homekit zeroconf matching to use fnmatch ( #50381 )
2021-05-19 00:20:56 -05:00
J. Nick Koston
e37256570c
Add missing return type in zeroconf ( #50847 )
2021-05-18 22:49:10 -05:00
J. Nick Koston
3cc3cacd08
Start ServiceBrowser as soon as possible in zeroconf ( #50784 )
...
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-05-17 20:51:05 -07:00
J. Nick Koston
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 Koston
909a20b36d
Use async zeroconf registration functions ( #50168 )
2021-05-11 11:03:36 -05:00
Ville Skyttä
153d6e891e
Use config_entries.SOURCE_* constants ( #49631 )
2021-04-25 11:27:40 +02:00
Marc Mueller
f1d48ddfe3
Update pylint to 2.8.0 ( #49637 )
2021-04-24 14:39:24 -10:00
J. Nick Koston
cb4558c088
Autodetect zeroconf interface selection when not set ( #49529 )
2021-04-21 22:10:34 -07:00
J. Nick Koston
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
Ruslan Sayfutdinov
82c94826fb
Enable strict typing for zeroconf ( #48450 )
...
* Enable strict typing for zeroconf
* Fix lutron_caseta
* Fix pylint warning
* Fix tests
* Fix xiaomi_aqara test
* Add __init__.py in homeassistant.generated module
* Restore add_job with type: ignore
2021-03-30 06:48:04 -10:00
J. Nick Koston
da7fd8a294
Listen on the default interface by default for zeroconf ( #48302 )
2021-03-24 15:04:55 -10:00
Franck Nijhof
6932cf9534
Use contextlib.suppress where possible ( #48189 )
2021-03-23 14:36:43 +01:00
Marc Mueller
4cb7718192
Update typing 16 ( #48087 )
2021-03-18 22:58:19 +01:00
Paulus Schoutsen
46e593485e
Handle zeroconf updated events ( #47683 )
2021-03-09 10:14:00 -10:00
Paulus Schoutsen
caf14b78d1
Homekit has two types ( #44879 )
2021-01-07 08:44:34 -10:00
Paulus Schoutsen
c7bf7b32a2
Zeroconf lowercase ( #44675 )
2020-12-31 01:06:26 +01:00
J. Nick Koston
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
J. Nick Koston
9389a7c9be
Limit zeroconf discovery to name/macaddress when provided ( #39877 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-11 12:19:21 +02:00
J. Nick Koston
5a9246468e
Prevent invalid data from being passed to zeroconf ( #39009 )
2020-08-21 14:31:17 +02:00
J. Nick Koston
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 Koston
444df4a7d2
Use the shared zeroconf instance when attempting to create another Zeroconf instance ( #38744 )
2020-08-12 16:08:33 +02:00
J. Nick Koston
d0d0403664
Add zeroconf/homekit/ssdp discovery support for custom components ( #38466 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-08-05 15:50:56 +02:00
J. Nick Koston
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 Koston
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
J. Nick Koston
abe3e3094e
Provide workaround for missing/disabled/broken IPv6 ( #37887 )
2020-07-15 11:26:40 -07:00
J. Nick Koston
bfbb2826bc
Fix homekit_controller discovery via zeroconf ( #37725 )
2020-07-13 17:45:05 -07:00
Paulus Schoutsen
9ac1475251
Simplify logger integration ( #37780 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-07-13 10:20:18 -07:00
Franck Nijhof
4950cbee1c
Fix iOS app crashing on None values in Zeroconf service info ( #36490 )
2020-06-05 12:43:58 -07:00
Erik Montnemery
c7e97f0cf8
Bump zeroconf, pychromecast. Log if zeroconf.get_service_info fails. ( #36185 )
2020-05-27 07:31:26 -04:00
Erik Montnemery
b136390647
Reset zeroconf log level ( #36002 )
2020-05-23 11:29:13 -05:00
J. Nick Koston
b0578018cb
Use a single service browser for zeroconf discovery ( #35997 )
2020-05-23 18:05:41 +02:00
Franck Nijhof
ee92d64088
Add UUID to ZeroConf service info ( #35623 )
2020-05-20 08:37:32 +02:00
J. Nick Koston
a42a654590
Fix reversed logic in zeroconf homekit pairing check ( #35596 )
...
* Fix reversed logic in zeroconf homekit pairing check
* s/server_info/service_info/
2020-05-14 18:58:40 +02:00
J. Nick Koston
16cc4aed06
Ensure homekit_controller recieves zeroconf c# updates ( #35545 )
...
* Ensure homekit_controller recieves zeroconf c# updates
If an integration has a homekit config flow step
homekit controller would not see updates for
devices that were paired with it and would not
rescan for changes.
* Only send updates to homekit controller if the device is paired
This avoids the device showing up a second time.
* remove debug
* fix refactor error
2020-05-12 14:59:29 -05:00
J. Nick Koston
3315c4c6c3
Pre-filter zeroconf service browser updates ( #35518 )
...
Each ServerBrowser currently runs in its own thread which
processes every A or AAAA record update per instance.
As the list of zeroconf names we watch for grows, each additional
ServiceBrowser would process all the A and AAAA updates on the network.
To avoid overwhemling the system we pre-filter here and only process
DNSPointers for the configured record name (type)
2020-05-11 18:30:15 -05:00