use crate::client::{AriClient, url_encode};
use crate::error::Result;
pub use crate::event::DeviceState;
pub async fn list(client: &AriClient) -> Result<Vec<DeviceState>> {
client.get("/deviceStates").await
}
pub async fn get(client: &AriClient, name: &str) -> Result<DeviceState> {
client
.get(&format!("/deviceStates/{}", url_encode(name)))
.await
}
pub async fn update(client: &AriClient, name: &str, state: &str) -> Result<()> {
client
.put_empty(&format!(
"/deviceStates/{}?deviceState={}",
url_encode(name),
url_encode(state)
))
.await
}
pub async fn delete(client: &AriClient, name: &str) -> Result<()> {
client
.delete(&format!("/deviceStates/{}", url_encode(name)))
.await
}