Tapo v0.8.12
·
143 commits
to main
since this release
Rust
Added
DeviceType: added enum that categorizes Tapo devices by their handlers (e.g.Light,Plug,Hub), with afrom_modelconstructor for mapping model strings.DiscoveryResult: added accessor methodsdevice_type(),model(),ip(),device_id(), andnickname()for convenient access to common properties without pattern matching.- All handlers: added
debugfeature flag that gates inspection methodsget_device_info_json(),get_child_device_list_json(),get_child_device_component_list(),get_supported_ringtone_list(), andget_component_list(). - All handlers: added
get_component_list()method (behinddebugfeature) for inspecting device capabilities.
Changed
DeviceDiscovery: changed thediscovermethod stream to raisetapo::TapoDiscoveryErrorinstead oftapo::TapoErrorfor more specific error handling, such as including the IP of the device that caused the error.HubHandler,PowerStripHandler,PowerStripEnergyMonitoringHandler: replacedget_child_device_component_list_json()withget_child_device_component_list()(behinddebugfeature) returningVec<ChildDeviceComponentList>instead of raw JSON.
Python
Added
DeviceType: added enum that categorizes Tapo devices by their handlers (e.g.Light,Plug,Hub).DiscoveryResult: added accessor propertiesdevice_type,model,ip,device_id, andnicknamefor convenient access to common properties without pattern matching.Component: added class (behinddebugfeature) for inspecting device capabilities returned byget_component_list().- All handlers: added
get_component_list()method (behinddebugfeature) for inspecting device capabilities. - All response and request classes: added
to_dict()method for converting to a Python dictionary.
Changed
DeviceDiscovery: changed thediscovermethod stream to raisetapo.TapoDiscoveryErrorinstead oftapo.TapoErrorfor more specific error handling, such as including the IP of the device that caused the error.HubHandler,PowerStripHandler,PowerStripEnergyMonitoringHandler: replacedget_child_device_component_list_json()withget_child_device_component_list()returninglist[ChildDeviceComponentList]instead of raw JSON.ApiClient: changed thediscover_devicesmethod'stimeout_sparameter to default to10seconds, making it optional.
Fixed
ApiClient: corrected thetimeout_sparameter type toOptional[int].ApiClient: correctedp316()return type fromPowerStripHandlertoPowerStripEnergyMonitoringHandler.HubHandler: corrected missingselfparameter onget_supported_ringtone_list().S200Handler: added missing module registration that preventedfrom tapo import S200Handlerfrom working.ColorLightSetDeviceInfoParams: addedRgbicLightStripHandlerto thesend()method's accepted handler types.PlugEnergyMonitoringHandler,PowerStripPlugEnergyMonitoringHandler: correctedstart_dateandend_dateparameter types inget_energy_data()fromdatetimetodate.LightHandler,ColorLightHandler,RgbLightStripHandler,RgbicLightStripHandler: correctedget_device_usage()return type fromDeviceUsageResulttoDeviceUsageEnergyMonitoringResult.
Full Changelog: v0.8.11...v0.8.12