Skip to content

Releases: Jc2k/aiohomekit

0.2.36

29 Mar 11:34
0.2.36
Compare
Choose a tag to compare

aiohomekit follows the spec for writing to bool characteristics - 1, 0, true and false are meant to be valid values. We used true and false. However it looks like some devices recently got a firmware update and can no longer handle true properly. This release switches to using 1 and 0 like the iOS implementation.

0.2.35

19 Mar 18:09
0.2.35
Compare
Choose a tag to compare

This merges in the changes from 0.2.29.2 into the current dev stream.

0.2.29.2

19 Mar 18:08
0.2.29.2
Compare
Choose a tag to compare

Some fixes from dealing with home-assistant/core#32969:

  • Handle 470 Connection Authorization Required
  • Increase timeout when waiting for crypto operations
  • Don't send port in Host header. This breaks Insignia.

This also includes some attempts to cleanup how we handle HTTP requests than have no headers and no bodies.

0.2.34

16 Mar 11:13
0.2.34
Compare
Choose a tag to compare
Release 0.2.34.

0.2.29.1

14 Mar 13:18
0.2.29.1
Compare
Choose a tag to compare
Release 0.2.29.1.

0.2.33

12 Mar 14:30
0.2.33
Compare
Choose a tag to compare
Release 0.2.33.

0.2.31

12 Mar 13:47
0.2.31
Compare
Choose a tag to compare
Release 0.2.31.

0.2.30

12 Mar 13:10
0.2.30
Compare
Choose a tag to compare
Release 0.2.30.

0.2.29

10 Mar 23:09
0.2.29
Compare
Choose a tag to compare

The release makes some improvements to the retrying logic:

  • Adds a aiohomekit.exceptions.TimeoutError

  • Adds a timeout for the call to loop.create_connection

  • Handles any cancellation exceptions in the reconnect loop

  • Shields the reconnect loop from early cancellation

  • Simplifies the back-off logic

0.2.28

10 Mar 18:03
0.2.28
Compare
Choose a tag to compare

This release adds a helper for building put_characteristic payloads. It takes a mapping of characteristic type against value and works out the (aid, iid) values:

name = "Hue dimmer switch button 3"
a = Accessories.from_file("tests/fixtures/hue_bridge.json").aid(6623462389072572)

service = a.services.first(
    service_type=ServicesTypes.STATELESS_PROGRAMMABLE_SWITCH,
    characteristics={CharacteristicsTypes.NAME: name},
)

payload = service.build_update({CharacteristicsTypes.NAME: "Fred"})

payload == [(6623462389072572, 588410716196, "Fred")]