Skip to content

Releases: mihai-dinculescu/tapo

Tapo Python v0.1.5

20 Jan 21:41
e9d2953
Compare
Choose a tag to compare

Added

  • Added the device_reset method to all plugs and lights.

Fixed

  • The device info response for the L510, L520, and L610 devices has been fixed to have the re_power_type field as optional.

Tapo Rust v0.7.7

13 Jan 14:50
eb06a73
Compare
Choose a tag to compare

Changed

  • The anyhow::anyhow!("Local hash does not match server hash") error has been replaced with the more specific tapo::TapoResponseError::InvalidCredentials error.

Fixed

  • The default_states field that's part of the device info response has been changed for the L510, L520, and L610 devices to match the actual response from the device.
  • A handful of edge cases around the Klap Protocol that were causing panics have been fixed to return tapo::TapoResponseError::SessionTimeout or tapo::TapoResponseError::InvalidResponse errors instead.

Tapo Python v0.1.4

13 Jan 14:51
76f0ea7
Compare
Choose a tag to compare

Changed

  • The "Local hash does not match server hash" error has been replaced with the more specific tapo::TapoResponseError::InvalidCredentials error.

Fixed

  • The default_states field that's part of the device info response has been changed for the L510, L520, and L610 devices to match the actual response from the device.
  • A handful of edge cases around the Klap Protocol that were causing panics have been fixed to return tapo::TapoResponseError::SessionTimeout or tapo::TapoResponseError::InvalidResponse errors instead.

Tapo Rust v0.7.6

25 Nov 18:36
c342bef
Compare
Choose a tag to compare

Added

  • Added support for the KE100 thermostatic radiator valve (TRV) devices (thanks to @pwoerndle).

Fixed

  • Fixed an issue that was preventing the nickname field from being decoded in the get_device_info results of child devices of the H100 hub.

Tapo Rust v0.7.5

05 Nov 10:44
ef9cb4a
Compare
Choose a tag to compare

Added

  • Added support for the T300 water sensor.
  • Added a dedicated handler for the L520 devices.

Tapo Python v0.1.3

04 Nov 10:41
352bf24
Compare
Choose a tag to compare

Added

  • Added support for the L510, L520 and L610 light bulbs.

Changed

  • The minimum required version of Python has been changed to 3.8, up from 3.7.

Fixed

  • Fixed an issue that was preventing get_device_info_json from working on the plug devices.

Tapo Python v0.1.2

10 Oct 20:27
e794f6b
Compare
Choose a tag to compare

Added

  • Added support for generic devices.
  • Added get_device_info_json to all currently supported devices.

Tapo Python v0.1.1

01 Oct 11:46
3068f62
Compare
Choose a tag to compare

This is the first version of the Python wrapper library.
It supports the plug devices P100, P105, P110 and P115.

v0.7.4

15 Sep 19:17
c129382
Compare
Choose a tag to compare

Fixed

  • Fixed the minimum version of the chrono dependency by setting it to 0.4.25.

Changes

  • DeviceUsageResult has been split into DeviceUsageResult and DeviceUsageEnergyMonitoringResult. The former is now returned for the P100 and P105 devices while the latter is returned for all the other devices that support energy monitoring.
  • EnergyMonitoringPlugHandler has been renamed to PlugEnergyMonitoringHandler.
  • All ___DeviceInfoResult structs have been renamed to DeviceInfo___Result.
  • All ___DefaultState structs have been renamed to Default___State.

Removed

  • get_device_usage has been removed from the GenericDeviceHandler because it is not supported by all devices.

Full Changelog: v0.7.3...v0.7.4

v0.7.3

14 Sep 19:53
851d714
Compare
Choose a tag to compare

Added

  • Added support for the newly introduced KLAP protocol, which is required to interact with the latest firmware version of multiple devices.

Changed

  • All uses of time have been replaced with chrono:
    • EnergyDataInterval's time::OffsetDateTime and time::Date fields have been replaced with chrono::NaiveDate.
    • EnergyUsageResult::local_time field is now chrono::NaiveDateTime instead of time::OffsetDateTime.
    • EnergyDataResult::local_time field is now chrono::NaiveDateTime instead of time::OffsetDateTime.
    • TemperatureHumidityRecords's and TemperatureHumidityRecord datetime fields are now chrono::DateTime<chrono::Utc> instead of time::OffsetDateTime.
  • EnergyDataInterval::Hourly::start_datetime and EnergyDataInterval::Hourly::end_datetime have been renamed to start_date and end_date because the time component is not required.
  • The login function on all handlers has been renamed to refresh_session to better reflect its purpose and it now takes and returns a &mut self instead of self.
  • L510DeviceInfoResult has been renamed to LightDeviceInfoResult to better reflect its purpose when used for L510 and L610 devices.
  • L530DeviceInfoResult has been renamed to ColorLightDeviceInfoResult to better reflect its purpose when used for L530, L630 and L900 devices.
  • L930DeviceInfoResult has been renamed to ColorLightStripDeviceInfoResult to better reflect its purpose when used for L920 and L930 devices.
  • The default_states field of LightDeviceInfoResult, ColorLightDeviceInfoResult, ColorLightStripDeviceInfoResult and PlugDeviceInfoResult is now a struct instead of an enum.

Full Changelog: v0.7.2...v0.7.3