Commit Graph

384 Commits (84b483673ec6fdaacc2a5f24ca5e7a756d9bb6d1)

Author SHA1 Message Date
GitHub Action 47d3fb1dec [ci skip] Translation update 2022-01-23 00:13:53 +00:00
Allen Porter e56e25180b
Strip whitespace in nest cloud project id (#64503) 2022-01-20 09:13:49 +01:00
Mick Vleeshouwer 1968257b23
Fix attr spelling error in Nest SDM SensorBase (#64490) 2022-01-19 17:49:52 -08:00
Allen Porter f1435b1385
Add diagnostic information for nest (#64405)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-19 09:30:48 +01:00
Allen Porter 737ac7cb7c
Cleanup nest auth registration, moving out of __init__.py (#63350) 2022-01-17 22:17:23 -08:00
Allen Porter cef0a18e23
Bump google-nest-sdm 1.5.1 (#64334) 2022-01-17 22:16:13 -08:00
Allen Porter b92166e04c
Defer to camera implementation for non-WebRTC cameras (#63182)
Improve nest support for default RTSP to WebRTCdefering to the camera
implementation for cameras that do not natively implement WebRTC so
they can use the registry added in #62962
2022-01-16 22:10:19 -08:00
Allen Porter 849abaca8b
Bump google-nest-sdm to 1.5.0 and add nest mp4 clip transcoding to animated gif (#64155) 2022-01-15 12:31:02 -08:00
Allen Porter 4bce92dd2d
Bump google-nest-sdm to 1.4.0 (#64098) 2022-01-14 10:35:13 +02:00
Allen Porter 64c5f69c3d
Add thumbnails to nest media player (#62532) 2022-01-13 22:31:33 -08:00
Allen Porter 789c0a24dd
Improve nest media player clip/image and event handling for multiple events in a short time range (#63149) 2022-01-11 20:54:49 -08:00
GitHub Action a8fee4c2f6 [ci skip] Translation update 2022-01-09 00:15:18 +00:00
GitHub Action 0827608302 [ci skip] Translation update 2022-01-08 00:14:39 +00:00
Allen Porter 4203e1b064
Delete nest event image fetching and use same APIs as media player (#62789) 2022-01-07 16:37:54 +01:00
Allen Porter d6c8f3965a
Improve nest camera failure handling on removal (#63207) 2022-01-05 16:17:51 +01:00
Allen Porter 224f960050
Set the nest configuration title to a user friendly name (#62886)
* Set the nest configuration title to a user friendly name

Set the config entry title name to be the name of the Google Home or
Nest Home that was authorized. In case more than one home was authorized,
they are all listed since they are all accessed over a single shared
home.

* Fix pylint errors

* Resolve pylint errors
2022-01-04 19:23:20 -08:00
Allen Porter cb76a30233
Add a lock on nest stream URL creation to avoid multiple in flight at once (#63212)
Add a lock to avoid multiple calls to create stream URLs when requests race in parallel
to open streams. This is to avoid # of API calls on the nest server which can be
rate limited, and to avoid any possibility of having too many streams per camera outstanding at once.
2022-01-04 12:27:56 -08:00
Allen Porter 0bcad5579b
Set nest climate hvac_action to report idle when hvac mode is not off (#62811) 2022-01-04 17:28:46 +01:00
Allen Porter fdb4b1d7f0
Cleanup nest config flow (#63351) 2022-01-04 16:33:17 +01:00
Allen Porter 9e3f7d2961
Simplify nest reauth config flow (#63058) 2022-01-02 21:43:50 +01:00
Allen Porter 584e660548
Bump google-nest-sdm to 1.3.0 (#63224) 2022-01-02 18:55:37 +01:00
Allen Porter 15baea4ba3
Use more narrow exception catching in `nest` (#63225) 2022-01-02 18:54:56 +01:00
Allen Porter ebc8e19788
Revert nest reloading due to lock up (#63206) 2022-01-02 17:08:38 +01:00
Allen Porter b17120a511
Bump google-nest-sdm to 1.2.1 (#63151) 2021-12-31 10:11:00 -10:00
Allen Porter 4c46cf79c4
Bump google-nest-sdm to 1.2.0 (#63121) 2021-12-31 10:43:11 +01:00
GitHub Action f205708e56 [ci skip] Translation update 2021-12-31 00:14:15 +00:00
Allen Porter 26972942ca
Deprecate the Legacy Works with Nest API (#63027) 2021-12-29 23:22:31 +01:00
Allen Porter 2df0adfbc7
Reload nest integration when new devices are added (#62976) 2021-12-29 12:20:55 +01:00
Allen Porter 67663dd31a
Bump google-nest-sdm to 1.1.0 (#62977) 2021-12-28 22:19:31 -08:00
Allen Porter 17fbfe2eed
Set a suggested_area on nest devices based on the Google Home room name (#62871) 2021-12-27 11:39:57 -08:00
Allen Porter c54439ef42
Bump google-nest-sdm to 1.0.0 (#62783)
* Bump google-nest-sdm to 1.0.0

See release log in https://github.com/allenporter/python-google-nest-sdm/compare/0.4.9...1.0.0

* Remove typing ignore now that typing is fixed
2021-12-25 21:47:45 -08:00
Allen Porter bf108b9d0d
Update nest mac addresses based on newer generation hardware (#62525)
Add nest mac addresses for cameras and doorbell devices added
in the last few years.

This is in perparation for improving nest discovery, which
currently does not work great because it requires configuration.yaml
2021-12-21 22:38:25 -06:00
GitHub Action babd753610 [ci skip] Translation update 2021-12-21 00:15:06 +00:00
Allen Porter a63fa53275
Persist nest media events to disk backed storage (#61641)
* Persist nest media events to disk backed storage

Persist nest events in the media player to disk, targeting about ~500mb
per camera device as a cap. Events are stored in config/nest/event_media/.

Add a NestEventMediaStore is used for persistence. It has three main jobs:
- Read/write the key/value data that holds event data (event type, time, device, etc)
- Read/write media contents to disk
- Pick the filename for the media event based on device and event deatils

The nest event media manager library handles cache management and eviction, and by
default uses an in memory cache. Home Assistant nest integration now provides the
disk backed implementation, which is invoked by the nest library.

The store reads the event metadata key/value dict on startup, and then writes it
back with a short delay of 5 seconds to avoid unnecessary writes.

Future work planned includes:
- Possibly a small memory buffer for media objects themselves. This could make sense
  when adding thumbnails to the media player grid to avoid unnecessary fetches
- Transcoding mp4 clips to animated image previews

* Address style errors

* Cleanup from CI test/pylint/etc.

* Put media for each device into its own directory

* Update comments for media store

* Decrease # of events to lower disk requirements

Target more like 1k events, to reduce disk needs.

* Address PR feedback

* Update homeassistant/components/nest/media_source.py

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

* Ignore incorrect mypy in nest library

* Fix pylint errors

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-18 23:53:40 -08:00
Allen Porter beb824c452
Bump google-nest-sdm to 0.4.9 (#62160) 2021-12-17 09:07:51 +01:00
epenet 25d33a2126
Use new enums in nest (#61942) 2021-12-15 13:00:10 -08:00
Allen Porter bff677e34e
Bump google-nest-sdm to 0.4.8 (#61851) 2021-12-15 13:12:38 +01:00
GitHub Action 77843be01f [ci skip] Translation update 2021-12-15 00:13:42 +00:00
Allen Porter efbec55818
Suppress errors for legacy nest api when using media source (#61629) 2021-12-13 17:41:45 +01:00
Allen Porter cd001d0243
Only publish nest camera event messages once per thread and bump nest version (#61587) 2021-12-12 14:12:05 -08:00
Allen Porter c3e72bec0a
Update logic for nest media source `can_play` for events (#61537) 2021-12-12 14:10:20 -08:00
Allen Porter 7711f9a391
Use relative import within component for nest media source (#61571) 2021-12-12 07:14:44 -08:00
GitHub Action f75b325ab2 [ci skip] Translation update 2021-12-12 00:14:30 +00:00
Allen Porter 9ffa3b21f6
Display nest media events using local time (#61143) 2021-12-08 21:49:40 -08:00
GitHub Action d69c6e3ab3 [ci skip] Translation update 2021-12-08 00:13:50 +00:00
Allen Porter 6d867e0415
Bump nest to 0.4.5 to fix media player event expiration (#61174) 2021-12-07 11:30:23 -08:00
Allen Porter bbe4a67a98
Coalesce nest media source preview clips by session and bump google-nest-sdm (#61081) 2021-12-05 23:59:24 -08:00
Marc Mueller e0cb33a0a1
Use platform enum (4) [M-O] (#60940) 2021-12-05 17:06:35 -10:00
GitHub Action ecdb18eb0a [ci skip] Translation update 2021-12-06 00:13:37 +00:00
Allen Porter 5bd1139867
Fix regression in nest event media player with multiple devices (#61064) 2021-12-05 13:02:37 -08:00