Cody Cutrer
32909fa237
[homekit] Add support for TV accessory ( #14055 )
...
* [homekit] TV accessory
Now possible since we support multiple secondary services. Just need to explicitly
declare that InputSource is a linked service to a Television, not just a secondary
service.
Note also that since TV and related services have so many mandatary characteristics
that are often static, I introduced a new way to declare characteristics -
via metadata on the service's item. Honestly, I feel like it's a lot cleaner to
have a factory create the mandatory characteristics the same way as the optional
characteristics, and then construct the service ourselves instead of basing the
service on the specific accessory interface. But this commit is already big enough,
I didn't want to go refactoring _all_ of the accessories to do it that way just
yet. This is why I have "unused" metadata characteristic factory methods for
AirQuality, HeaterCooler, and Thermostat - I started to make those configurable
via metadata, then realized they were mandatory characteristics that couldn't
be found from metadata via the current infrastructure.
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2023-01-12 15:29:50 +01:00
..
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-11 08:58:13 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-12 07:42:15 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-10 15:02:40 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-08 10:57:04 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-08 23:35:01 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-11 15:05:19 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-07 11:19:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-07 00:01:27 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 18:56:53 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 16:28:38 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-07 00:01:27 +01:00
2023-01-06 09:49:54 +01:00
2023-01-11 13:56:40 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-10 08:14:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-12 15:29:50 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-09 17:51:12 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-09 17:51:12 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2023-01-06 09:49:54 +01:00
2022-12-26 10:17:42 +01:00
2022-12-26 10:17:42 +01:00
2022-12-26 15:27:03 +01:00