use reqwest::Client;
use serde::Deserialize;

use crate::Result;

#[derive(Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct LiveStatus {
    pub online: bool,
    pub viewer_count: u32,
}

pub async fn get_live_status(client: &Client) -> Result<LiveStatus> {
    let endpoint = "https://weirdstar.stream/api/status";
    Ok(client
        .get(endpoint)
        .send()
        .await?
        .json::<LiveStatus>()
        .await?)
}
