use crate::{error::Result, Bravia, RequestBodyBuilder, RequestBuilder};
use serde_json::{Map, Value};
const ENDPOINT: &str = "videoScreen";
pub struct VideoScreenService<'a>(&'a Bravia);
impl<'a> VideoScreenService<'a> {
pub fn new(bravia: &'a Bravia) -> Self {
Self(bravia)
}
pub async fn set_scene_settings(&self, value: String) -> Result<()> {
let mut params = Map::new();
params.insert(String::from("value"), Value::from(value));
let body = RequestBodyBuilder::default()
.id(40)
.method("setSceneSetting")
.params(Value::from(params))
.build()?;
RequestBuilder::default()
.endpoint(ENDPOINT)
.body(body)
.is_protected()
.make(self.0)
.await?;
Ok(())
}
}