pub struct PowerStripEnergyMonitoringHandler { /* private fields */ }Implementations§
Source§impl PowerStripEnergyMonitoringHandler
impl PowerStripEnergyMonitoringHandler
Sourcepub async fn refresh_session(&mut self) -> Result<&mut Self, Error>
pub async fn refresh_session(&mut self) -> Result<&mut Self, Error>
Refreshes the authentication session.
Sourcepub async fn get_device_info(&self) -> Result<DeviceInfoPowerStripResult, Error>
pub async fn get_device_info(&self) -> Result<DeviceInfoPowerStripResult, Error>
Returns device info as DeviceInfoPowerStripResult.
It is not guaranteed to contain all the properties returned from the Tapo API.
If the deserialization fails, or if a property that you care about it’s not present, try [PowerStripEnergyMonitoringHandler::get_device_info_json].
Source§impl PowerStripEnergyMonitoringHandler
impl PowerStripEnergyMonitoringHandler
Sourcepub async fn device_reboot(&self, delay_s: u16) -> Result<(), Error>
pub async fn device_reboot(&self, delay_s: u16) -> Result<(), Error>
Reboots the device.
Notes:
- Using a very small delay (e.g. 0 seconds) may cause a
ConnectionResetorTimedOuterror as the device reboots immediately. - Using a larger delay (e.g. 2-3 seconds) allows the device to respond before rebooting, reducing the chance of errors.
- With larger delays, the method completes successfully before the device reboots. However, subsequent commands may fail if sent during the reboot process or before the device reconnects to the network.
§Arguments
delay_s- The delay in seconds before the device is rebooted.
Sourcepub async fn device_reset(&self) -> Result<(), Error>
pub async fn device_reset(&self) -> Result<(), Error>
Hardware resets the device.
Warning: This action will reset the device to its factory settings. The connection to the Wi-Fi network and the Tapo app will be lost, and the device will need to be reconfigured.
This feature is especially useful when the device is difficult to access and requires reconfiguration.
Source§impl PowerStripEnergyMonitoringHandler
impl PowerStripEnergyMonitoringHandler
Sourcepub async fn get_child_device_list(
&self,
) -> Result<Vec<PowerStripPlugEnergyMonitoringResult>, Error>
pub async fn get_child_device_list( &self, ) -> Result<Vec<PowerStripPlugEnergyMonitoringResult>, Error>
Returns child device list as Vec<PowerStripPlugEnergyMonitoringResult>.
It is not guaranteed to contain all the properties returned from the Tapo API.
If the deserialization fails, or if a property that you care about it’s not present,
try [PowerStripEnergyMonitoringHandler::get_child_device_list_json].
Source§impl PowerStripEnergyMonitoringHandler
Child device handler builders.
impl PowerStripEnergyMonitoringHandler
Child device handler builders.
Sourcepub async fn plug(
&self,
identifier: Plug,
) -> Result<PowerStripPlugEnergyMonitoringHandler, Error>
pub async fn plug( &self, identifier: Plug, ) -> Result<PowerStripPlugEnergyMonitoringHandler, Error>
Returns a PowerStripPlugEnergyMonitoringHandler for the given Plug.
§Arguments
identifier- a PowerStrip plug identifier.
§Example
// Connect to the hub
let power_strip = ApiClient::new("tapo-username@example.com", "tapo-password")
.p304("192.168.1.100")
.await?;
// Get a handler for the child device
let device_id = "0000000000000000000000000000000000000000".to_string();
let device = power_strip.plug(Plug::ByDeviceId(device_id)).await?;
// Get the device info of the child device
let device_info = device.get_device_info().await?;Trait Implementations§
Source§impl From<GenericDeviceHandler> for PowerStripEnergyMonitoringHandler
impl From<GenericDeviceHandler> for PowerStripEnergyMonitoringHandler
Source§fn from(value: GenericDeviceHandler) -> Self
fn from(value: GenericDeviceHandler) -> Self
Source§impl HandlerExt for PowerStripEnergyMonitoringHandler
impl HandlerExt for PowerStripEnergyMonitoringHandler
Source§fn get_client<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RwLockReadGuard<'_, dyn ApiClientExt>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_client<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RwLockReadGuard<'_, dyn ApiClientExt>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl Freeze for PowerStripEnergyMonitoringHandler
impl !RefUnwindSafe for PowerStripEnergyMonitoringHandler
impl Send for PowerStripEnergyMonitoringHandler
impl Sync for PowerStripEnergyMonitoringHandler
impl Unpin for PowerStripEnergyMonitoringHandler
impl UnsafeUnpin for PowerStripEnergyMonitoringHandler
impl !UnwindSafe for PowerStripEnergyMonitoringHandler
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more