Commit graph

60 commits

Author SHA1 Message Date
starkillerOG
9a4a66b33f
Use insecure SSL cipher for Reolink aiohttp clientsession (#126687) 2024-09-24 21:50:45 +02:00
starkillerOG
15bf6222f5
Use Home Assistant aiohttp session for Reolink (#125948) 2024-09-16 11:53:13 +02:00
starkillerOG
2174ee18dc
Implement Reolink reconfiguration flow (#126004)
Co-authored-by: Robert Resch <robert@resch.dev>
2024-09-16 09:21:23 +02:00
starkillerOG
a8b55a16fd
Add 100% coverage of Reolink host.py (#124577)
* Add 100% host test coverage

* Add missing test
2024-08-30 16:24:27 +02:00
starkillerOG
b46b74df90
Check for incompatible special chars in Reolink password (#122461) 2024-07-23 15:22:23 +02:00
starkillerOG
1b88448914
Do not wait for Reolink firmware check (#120377) 2024-06-26 09:34:45 +02:00
starkillerOG
bbb8bb31f9
Only raise Reolink re-auth flow when login fails 3 consecutive times (#120291) 2024-06-24 21:03:41 +02:00
starkillerOG
8b4a5042bb
Use UID instead of MAC or channel for unique_ID in Reolink (#119744) 2024-06-21 20:27:30 +02:00
starkillerOG
c8ce935ec7
Check Reolink IPC channels for firmware repair issue (#119241)
* Add IPC channels to firmware repair issue

* fix tests

* fix typo
2024-06-21 11:57:48 +02:00
starkillerOG
3a672642ea
Reolink extend diagnostic data (#119745)
* Add diagnostic info

* fix

* change order

* update tests
2024-06-16 14:02:10 +02:00
starkillerOG
da64f61083
Add firmware update entities for Reolink IPC channel cameras (#119637) 2024-06-14 08:12:55 -04:00
starkillerOG
678c06beb3
Conserve Reolink battery by not waking the camera on each update (#118773)
* update to new cmd_list type

* Wake battery cams each 1 hour

* fix styling

* fix epoch

* fix timezone

* force full update when using generic update service

* improve comment

* Use time.time() instead of datetime

* fix import order
2024-06-04 21:54:31 -04:00
starkillerOG
cba07540e9
Bump reolink-aio to 0.9.1 (#118655)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-06-04 08:00:40 +02:00
Sid
2cc916db6d
Replace pylint broad-except with Ruff BLE001 (#116250) 2024-05-07 14:00:27 +02:00
Sid
a5b609f081
Enable ruff TRY401 (#114395)
* Enable ruff TRY401

* fix tests
2024-03-29 07:20:36 +01:00
Sid
f7b7f74d10
Enable Ruff TRY201 (#114269)
* Enable Ruff TRY201

* remove redundant rules
2024-03-28 10:18:07 +01:00
Marc Mueller
a033574ee2
Add empty line after module docstring [r] (#112703) 2024-03-08 15:05:07 +01:00
Joost Lekkerkerker
a82410d5e9
Deduplicate constants E-Z (#105657) 2023-12-13 17:05:37 +01:00
starkillerOG
3316f6980d
Do not fail if Reolink ONVIF cannot be connected (#104947) 2023-12-04 10:44:29 +01:00
starkillerOG
381036e46a
Reolink only fetch data for enabled entities (#104157) 2023-12-02 14:10:44 +01:00
starkillerOG
6b138a276a
Add diagnostics platform to Reolink (#104378) 2023-11-23 12:55:21 +01:00
starkillerOG
1df69f52e5
Bump reolink-aio to 0.7.14 and improve typing of Reolink (#103129)
* Improve typing

* fix mypy

* Further improve typing

* Restore Literal typing

* Bump reolink_aio to 0.7.13

* Bump reolink-aio to 0.7.14
2023-11-03 17:05:27 +01:00
starkillerOG
8474c25cf1
Reolink remove unneeded str() (#100718) 2023-09-22 14:20:34 +02:00
starkillerOG
868afc037e
Try Reolink ONVIF long polling if ONVIF push not supported (#100375) 2023-09-17 22:28:52 +02:00
starkillerOG
0037385336
Reolink onvif not supported fix (#99714)
* only subscibe to ONVIF if supported

* Catch NotSupportedError when ONVIF is not supported

* fix styling
2023-09-06 14:46:24 +02:00
starkillerOG
b1e5b3be34
Bump Reolink_aio to 0.7.7 (#98425) 2023-08-15 10:43:19 +02:00
starkillerOG
d72057f41b
Add repair issue for Reolink when using it with an incompatible global ssl certificate (#91597) 2023-08-07 11:52:14 +02:00
starkillerOG
121fc7778d
Bump reolink_aio to 0.7.6 + Timeout (#97464) 2023-07-31 21:01:25 +02:00
starkillerOG
b266514068
Delay creation of Reolink repair issues (#97476)
* delay creation of repair issues

* fix tests
2023-07-31 09:07:13 +02:00
starkillerOG
f4e79bbab8
Regard long poll without events as valid (#97383) 2023-07-30 18:49:27 +02:00
starkillerOG
c32b15c754
Reolink long poll recover (#97465) 2023-07-30 18:49:00 +02:00
Franck Nijhof
e449f8e0e5
Remove Reolink event connection sensor (#96903) 2023-07-19 14:40:00 +02:00
starkillerOG
bc9b9048f0
Add Reolink sensor platform (#96323)
* Add Reolink sensor platform

* fix styling

* Add state class

* Add Event connection sensor

* Update homeassistant/components/reolink/sensor.py

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

* Use translation keys

* fix json

* fix json 2

* fix json 3

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-11 21:36:44 +02:00
starkillerOG
0bec93fa37
Reolink ONVIF long polling (#94770) 2023-06-26 21:54:40 +02:00
starkillerOG
ee7f44b3da
Bump reolink-aio to 0.7.1 (#94761) 2023-06-18 13:13:21 +02:00
starkillerOG
117ab4a0e5
Bump reolink-aio to 0.6.0 (#94259) 2023-06-09 17:00:07 +02:00
starkillerOG
49f10eecaa
Fix false reolink ONVIF webhook warning (#91015) 2023-05-30 23:13:08 +02:00
starkillerOG
051d631504
Poll Reolink motion when ONVIF not available (#92837)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-12 18:48:32 +02:00
starkillerOG
88bde2a914
Reolink ONVIF move read to primary callback (#91478)
* Move read to primary callback

* fix styling

* Do not raise on ConnectionResetError

* Split request.text() to .read() and decode("utf-8")
2023-04-16 22:48:39 -10:00
starkillerOG
adc8a13f93
Reolink prevent ONVIF push being lost due to ConnectionResetError (#91070)
* Make "Connection lost" error less likely

* Handle connection loss during ONVIF event reading

* tweak

* fix styling

* catch asyncio.CancelledError from request.text()

* missing ()

* re-raise cancelation for proper cleanup

* Simplify

* Also set webhook_reachable if connection lost

* fix styntax

* Send HTTP_OK directly after data read done

* protect agains garbage collection

* Protect shielded task (inner) not shielded future (outer)

* fix black

* Make sure exceptions are logged

* fix spelling

* fix black

* fix spelling

* Simplify using hass.async_create_task

* clarify comment

* Eleborate comment

* Update homeassistant/components/reolink/host.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Apply suggestions from bdraco

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-14 21:05:22 -04:00
starkillerOG
b47ac524ea
Use async_timeout instead of asyncio.wait_for (#90496)
* Use async_timeout instead of asyncio.wait_for

* fix imports

* fix imports

* break out Event.wait patch

* Update tests/components/reolink/conftest.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Simplify

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-01 17:47:31 +02:00
starkillerOG
d427c35c87
Reolink improve config flow login (#90036) 2023-03-29 14:41:38 +02:00
starkillerOG
e9925f6062
Check webhook url is reachable in Reolink (#89585)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 22:46:59 +02:00
starkillerOG
939fce4607
Shield Reolink webhook callback from cancelation (#89798)
* shield Reolink webhook callback from cancelation

* Update homeassistant/components/reolink/host.py

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

* fix styling

* fix black

* Revert to using asyncio.shield

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-03-19 23:35:16 -04:00
starkillerOG
4eee626770
Reolink check firmware (#88903) 2023-03-15 18:54:28 +01:00
starkillerOG
6e10cd81dd
Use repair issue when port enable fails in Reolink (#89591)
* Reolink use repair issue for disabled ports

* fix styling

* Add port repair issue tests

* Update homeassistant/components/reolink/strings.json

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-13 11:43:41 +01:00
epenet
4a3c0cd0a8
Adjust docstrings for ruff D404 (#89077) 2023-03-03 11:26:13 +01:00
starkillerOG
bcf8cf4d8b
Add reolink https webhook warning (#87332)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
fixes undefined
2023-02-09 09:24:18 +01:00
starkillerOG
17aee5e3a3
Bump reolink-aio to 0.4.0 (#87733)
bump reolink-aio to 0.4.0
2023-02-08 22:52:23 +01:00
starkillerOG
5e214f2e43
Reolink unregistered webhook on unexpected error (#87538) 2023-02-08 12:23:27 +01:00