Commit Graph

419 Commits

Author SHA1 Message Date
Jesse Hills 6a82766553
Add Bluetooth GATT calls (#259) 2022-09-28 12:50:37 -04:00
Jesse Hills 4426a94638
Add `has_bluetooth_proxy` flag to device info (#247) 2022-08-22 15:50:43 +12:00
Jesse Hills 1273d689f1
Implement Bluetooth LE advertisement receiving (#246) 2022-08-22 15:27:46 +12:00
J. Nick Koston 1ffe252f6f
Change out asyncio.wait_for with async_timeout (#243) 2022-08-22 15:26:53 +12:00
Peter Galantha 7dc2a0d072
state class TOTAL added (#229) 2022-07-07 11:41:22 +12:00
Suryandaru Triandana 5831eb5f2a
Increase ListEntitiesRequest timeout to 30 seconds (#234) 2022-07-07 11:39:01 +12:00
Jesse Hills c502231194
Assume volume (and therefore mute) is always supported (#215) 2022-05-18 21:50:06 +12:00
dependabot[bot] 6b6828043b
Bump mypy from 0.942 to 0.950 (#204)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-05-18 15:39:03 +12:00
Jesse Hills fcd529bb32
Add media player entities (#214) 2022-05-18 13:28:40 +12:00
Otto Winter 3752b8280e
Fix no timeout for handshake (#176) 2022-02-09 16:29:50 +01:00
dependabot[bot] 1eebbfc1e0
Bump black from 21.12b0 to 22.1.0 (#169)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com>
2022-01-31 17:38:57 +01:00
Otto Winter 23467210b1
Export BadNameAPIError in main module (#166) 2022-01-23 20:23:13 +01:00
Otto Winter 9964034f18
Expect a name for connections (#122)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-01-20 12:03:36 +01:00
Keilin Bickar d0d1e526f5
Add lock entity (#158) 2022-01-11 14:29:19 +13:00
dependabot[bot] 014d81350a
Bump mypy from 0.910 to 0.930 (#156)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com>
2022-01-08 13:57:56 +01:00
david reid 8fcb3a58dd
Catch conn reset (#159) 2022-01-05 08:30:22 +13:00
Franck Nijhof 34180576ca
Add device class support to Switch (#157) 2021-12-28 23:04:59 +13:00
Jesse Hills 759e2ef133
Add mode to number entities (#148) 2021-11-30 22:23:18 +13:00
Jesse Hills da0ecd8437
Add unit_of_measurement to number components (#147) 2021-11-30 20:34:30 +13:00
Jesse Hills 3494f804c1
Button device class (#146) 2021-11-30 16:53:22 +13:00
Jesse Hills dcad9cdcb7
Add support for Button entities (#143) 2021-11-29 13:59:23 +13:00
Oxan van Leeuwen f68fc025a8
Fix mypy errors (#139) 2021-11-22 23:08:04 +01:00
Jesse Hills 09d760a3dd
Expose webserver port via native API (#131) 2021-10-29 07:03:39 +13:00
Jesse Hills 6bda4e4797
Add EntityCategory (#130) 2021-10-27 11:45:09 +13:00
Otto Winter ca3a14b1bc
Fix connect login 2 (#128) 2021-10-21 19:24:03 +02:00
Otto Winter 3b8b2d9d66
Fix login error cleanup (#126) 2021-10-21 19:20:05 +02:00
Otto Winter ccf9fcbe2b
Fix protoc lint uses different version than docker image (#125) 2021-10-21 16:53:32 +02:00
Otto Winter 5c37ce907a
Apply float fix for all float attributes (#124) 2021-10-21 16:52:29 +02:00
Jesse Hills e809c10f81
Dont inherit icon for camera entities (#123) 2021-10-21 09:08:47 +02:00
Otto Winter 07d16dc1ab
Prevent showing password in error logs (#121) 2021-10-14 11:25:51 +02:00
Otto Winter 5bfa90e7c8
Update records in one go (#119) 2021-10-13 10:56:29 +02:00
Otto Winter b3d1f13eeb
Add connect_error callback to ReconnectLogic (#111) 2021-10-13 10:46:13 +02:00
Otto Winter dd9d716c10
Require zeroconf >=0.36 (#118) 2021-10-13 10:19:42 +02:00
Otto Winter f3aaf0391d
Remove eventloop parameter (#110) 2021-10-13 10:15:30 +02:00
Otto Winter 9ca228cd1e
Refactor frame_helper into new module (#109) 2021-10-13 10:05:08 +02:00
Paul Monigatti c46d1c3822
Add 'icon' field to Binary Sensor, Climate, Cover, Fan, and Light (#106)
* Added light icon to API

* Added icon property to Binary Sensor, Climate, Cover, and Fan entities
2021-10-10 10:41:37 +02:00
Otto Winter 06806b4490
Fix wrapping native RequiresEncryption error types (#113) 2021-10-05 10:56:35 +02:00
Otto Winter 7a49609ef0
Fix write_packet error not re-raised (#112) 2021-10-04 12:30:03 +02:00
Otto Winter 5b99d5c1dd
Refactor connection class to resolve connect issues (#108) 2021-10-04 12:12:43 +02:00
Otto Winter e18d4b61b6
Fix plaintext logs unexpected when handled (#107) 2021-10-01 11:25:20 +02:00
dependabot[bot] 4e573999c5
Bump pylint from 2.10.2 to 2.11.1 (#104)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-19 19:08:18 +02:00
Martin ae4137364e
fixes connection isssue#87 (#105) 2021-09-17 19:22:20 +02:00
J. Nick Koston 2e22b232fb
Avoid executor jump to resolve ip addresses (#103) 2021-09-17 17:44:30 +02:00
Otto Winter 5c9e7acbce
Emit different Exception types to differentiate between connection errors (#102)
* Emit different Exception types to differentiate between connection errors

* Import in init
2021-09-14 12:44:52 +02:00
Jesse Hills 2350ac78b7
Add support for siren entities (#97) 2021-09-09 13:11:51 +12:00
Otto Winter 015e9c8d5e
Add noise API transport support (#100) 2021-09-09 09:12:07 +12:00
Otto Winter 8d08689b29
Support for old zeroconfs (#88) 2021-09-07 18:52:54 +02:00
Otto Winter 6f131f4bf6
Switch light colormode to be bitfields instead of enums (#95) 2021-08-25 13:45:28 +02:00
Otto Winter a93f22d8f3
Fix log non-utf8 parse error (#94) 2021-08-24 11:48:58 +12:00
Otto Winter 738346c9cb
Fix number rounding for protobuf messages (#93)
* Fix number rounding for protobuf messages

* Switch to converter_field
2021-08-24 11:39:18 +12:00
Jesse Hills fff495d607
Add new total/total_increasing state-classes for Home Assistant 2021.9+ (#90) 2021-08-23 17:02:10 +02:00
Otto Winter 595720ed62
Fix log level enum values (#89) 2021-08-16 15:50:35 +12:00
Oxan van Leeuwen 4a091b00a0
Fix old lights with color temperature but no white support (#86)
ESPHome never supported this, and no built-in lights used this, but apparently it was used by third-party components. Without this fix, those lights would show up as on-off lights in HA. Make them RGBCT lights, which doesn't fit perfectly as they don't expect a white value, but they already got that anyway and it's better than being totally broken.
2021-08-10 10:56:50 +02:00
Jesse Hills 655b99e2cb
Add disabled_default to entity infos (#85) 2021-08-03 23:30:51 +12:00
github-actions[bot] 61c87fb1af Update protobuf files 2021-08-03 03:30:13 +00:00
Oxan van Leeuwen 32d2df8e24
Color mode implementation (#74)
Co-authored-by: Otto Winter <otto@otto-winter.com>
2021-07-29 19:16:25 +02:00
Jesse Hills 551a1acd0d
Add select entities (#75) 2021-07-27 06:51:12 +12:00
Jesse Hills 2ec375af36
Add last_reset_type to sensor entity info (#70) 2021-07-21 08:44:55 +12:00
Otto Winter 3a7a47f649
Add pytest unit testing (#64) 2021-07-12 20:09:17 +02:00
Otto Winter 33e49a19b5
Fix camera not merging packets (#63) 2021-07-09 09:19:39 +02:00
Jesse Hills 1a2c2b69fa
Rename image field to data to match the proto field (#62) 2021-07-09 00:00:53 +12:00
Otto Winter ff10a20bce
Add reconnect logic class (#54) 2021-06-30 17:10:30 +02:00
Otto Winter 0ac14489c8
Implement PEP561 typing support (#55) 2021-06-30 17:05:44 +02:00
Otto Winter 2629e8d86c
Update host_resolve for zeroconf 0.32.0 (#52) 2021-06-30 17:00:22 +02:00
Otto Winter 29b1902577
Dataclasses better legacy UserService compat (#49) 2021-06-29 16:07:12 +02:00
github-actions[bot] bf9e37b73a Update protobuf files 2021-06-29 13:45:52 +00:00
Otto Winter acfc46e12a
Add project name+version (#48) 2021-06-29 15:45:05 +02:00
Otto Winter 872c643058
Switch from attrs to dataclasses (#36) 2021-06-29 15:36:14 +02:00
Jesse Hills e0f09de715
Add number entities (#47) 2021-06-29 22:42:38 +12:00
Otto Winter 86a8ab9130
Fix bad typing for LogLevel (#45)
* Fix bad typing for LogLevel

* Lint
2021-06-24 09:55:35 +02:00
github-actions[bot] 0ba4ed41ee Update protobuf files 2021-06-23 21:41:34 +00:00
Otto Winter b1b36754ec
Climate preset, custom fan mode and custom preset (#42)
Co-authored-by: Otto Winter <otto@otto-winter.com>
Co-authored-by: Lumpusz <marton.keri@gmail.com>
2021-06-23 23:40:41 +02:00
github-actions[bot] 3e2baa3f14 Update protobuf files 2021-06-18 15:57:48 +00:00
Otto Winter 52cf01e11a
Add flake8, black, isort and mypy linting (#39) 2021-06-18 17:57:02 +02:00
Otto Winter a72957e2f0
Safe enum conversion (#37) 2021-06-18 16:57:07 +02:00
Otto Winter ee2c5d9152
Fix bad default values in model (#40) 2021-06-18 16:16:20 +02:00
Franck Nijhof a6a25d88b7
Add support for Sensor state class (#33) 2021-05-26 09:39:01 +12:00
Franck Nijhof fa6d8de974
Add entity attribute to Home Assistant state subscribtions (#30) 2021-05-12 20:57:01 +12:00
Jim Ekman 8cdfa9c4ea
Add support for fan speed level (#27)
* Add support for percentage based fan speeds

* Use speed levels
2021-03-13 21:21:09 -03:00
J. Nick Koston 96b75c5337
Avoid a jump to the executor to unpack an ip address string (#26)
Avoids executor overload on Home Assistant startup

2021-02-13 18:31:38 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.211.201', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.210.102', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.211.180', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.210.100', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.214.225', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.213.240', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.213.168', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.210.29', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.250', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.214.56', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:31:51 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.137', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:32:04 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:32:14 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:32:23 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:32:58 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:33:10 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-13 18:33:19 DEBUG (MainThread) [homeassistant.runner] Calling executor with function: <function getaddrinfo at 0x7f00184c8ca0>, args: ('10.45.209.89', 6053, <AddressFamily.AF_INET: 2>, 0, 6, 0), kwargs: {}
2021-02-15 11:58:11 -03:00
marecabo 10b0d82a23
Add device_class attribute to sensor (#25) 2021-02-15 11:55:10 -03:00
Jim Ekman fa48a08445
Add support for fan direction (#8) 2020-12-14 00:16:37 -03:00
J. Nick Koston ff70932064
Ability to use the shared Home Assistant Zeroconf instance (#13) 2020-08-22 00:45:29 -03:00
Otto Winter 8bf95336d6
Add pylint 2020-07-14 20:00:12 +02:00
Otto Winter d225cb305a
Merge branch 'master' of https://github.com/esphome/aioesphomeapi 2020-07-14 19:46:55 +02:00
Otto Winter 90f32e7a63
Update requirements 2020-07-14 19:46:45 +02:00
Paulus Schoutsen 7a186109d7
Remove cmp=True from APIVersion 2020-01-29 22:03:58 -08:00
Otto Winter dbf4797537
Add more climate actions
See also https://github.com/esphome/esphome/pull/859
2019-11-23 20:36:12 +01:00
Otto Winter 9b39ce7f42
Regenerate api_pb2.py 2019-11-16 16:35:29 +01:00
Guillermo Ruffino 511cb62dd9 Add climate feature fan (#4)
* f1

* renamed to fan_mode

* fixes, add back compat with ha

* revert client_version - add swing
2019-11-16 16:34:14 +01:00
Otto Winter 91b2e0ceb4
Add missing_state property 2019-11-12 14:55:35 +01:00
Otto Winter a30e6c2f8c
Bump version to 2.4.2
Forgot to commit a file 😐
2019-10-24 19:38:12 +02:00
Otto Winter 10724ea3e5
Add defaults to all fields in model.py
See also https://github.com/home-assistant/home-assistant/issues/28157
2019-10-24 13:59:06 +02:00
Otto Winter 9c514ebe54
Add sensor force_update option (#3) 2019-10-21 15:09:07 +02:00
Otto Winter 3aa6da676a
Update to use new enum 2019-10-17 21:25:54 +02:00
Otto Winter 1ee792ff39
Update proto to match esphome 2019-10-17 21:25:39 +02:00
Marcel van der Veldt 8cb72b7e69 add climate action attribute to climate state
for backwards compatability
2019-09-26 19:50:59 +02:00
Otto Winter 2b7a4b27b3
Rename ServiceCall to HomeassistantServiceCall 2019-06-18 11:10:32 +02:00
Otto Winter 7ade99a614
New api.proto format, user-defined service arrays
See https://github.com/esphome/esphome/pull/633
2019-06-17 23:40:23 +02:00
Otto Winter 0e813dfd44
Use zeroconf resolver for .local domains first 2019-06-03 14:54:23 +02:00
Otto Winter 2f499c71d1
Fix Home Assistant Cannot Deserialize Models 2019-04-19 16:22:50 +02:00
Otto Winter e74118923e
Big Refactor 2019-04-07 19:03:26 +02:00
Otto Winter 46bd04631f
Add climate support 2019-03-27 22:10:33 +01:00
Otto Winter 0d67c464d7
CameraImageRequest 2019-03-09 11:02:44 +01:00
Otto Winter 97c0f496a8
Merge branch 'master' into camera
# Conflicts:
#	aioesphomeapi/api_pb2.py
#	aioesphomeapi/client.py
2019-03-08 13:50:48 +01:00
Otto Winter 2907240972
Add native API 2019-02-24 18:16:12 +01:00
Otto Winter 39b5ffca1a
Add zeroconf host resolver 2019-02-11 16:56:18 +01:00
Otto Winter 38c82e3971
Increase timeout 2019-01-29 14:31:53 +01:00
Otto Winter 9bcb7f1cce
Fix race condition 2019-01-19 15:26:29 +01:00
Otto Winter d37602cfdd
Unexpected error exception handling 2019-01-19 15:25:58 +01:00
Otto Winter 19118f9f3c
Recover from protobuf errors 2019-01-19 15:25:48 +01:00
Otto Winter 16fb2bff90
Fix transition length and flash length operation 2019-01-19 15:25:31 +01:00
Otto Winter d4c04f46e9
Camera 2019-01-19 15:10:00 +01:00
Otto Winter 9e7c0b9101
Bump version 2019-01-07 10:52:40 +01:00
Otto Winter fadcdb1501
Restructure API for prevent race conditions 2019-01-04 18:35:38 +01:00
Otto Winter 0213daa0a2
Home Assistant States 2018-12-18 14:53:52 +01:00
Otto Winter aed15d8859
Rename to ESPHome Core 2018-12-17 09:31:56 +01:00
Otto Winter 632b002b09
Update 2018-12-16 18:03:03 +01:00
Otto Winter f8ec2684cb
Initial commit 2018-12-13 21:34:57 +01:00