pub async fn broadcast_message(
    configuration: &configuration::Configuration,
    collection_id: &str,
    body: crate::models::BroadcastMessageRequest,
) -> Result<crate::models::MultiSendMessageResponse, Error<BroadcastMessageError>> {
    let local_var_client = &configuration.client;

    let local_var_uri_str = format!(
        "{}/collections/{collectionId}/to",
        configuration.base_path,
        collectionId = crate::apis::urlencode(collection_id)
    );
    let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());

    if let Some(ref local_var_user_agent) = configuration.user_agent {
        local_var_req_builder =
            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
    }
    if let Some(ref local_var_apikey) = configuration.api_key {
        let local_var_key = local_var_apikey.key.clone();
        let local_var_value = match local_var_apikey.prefix {
            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
            None => local_var_key,
        };
        local_var_req_builder = local_var_req_builder.header("X-API-Token", local_var_value);
    };
    local_var_req_builder = local_var_req_builder.json(&body);

    let local_var_req = local_var_req_builder.build()?;
    let local_var_resp = local_var_client.execute(local_var_req).await?;

    let local_var_status = local_var_resp.status();
    let local_var_content = local_var_resp.text().await?;

    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
        serde_json::from_str(&local_var_content).map_err(Error::from)
    } else {
        let local_var_entity: Option<BroadcastMessageError> =
            serde_json::from_str(&local_var_content).ok();
        let local_var_error = ResponseContent {
            status: local_var_status,
            content: local_var_content,
            entity: local_var_entity,
        };
        Err(Error::ResponseError(local_var_error))
    }
}
/// Broadcast a message to all devices in the collection. This request will always succeed if the collection exists, even if there are one or more send errors. Individual errors are returned as an array of error messages in the response. Use equivalent to resource for devices to send a message to single device.
Broadcast a message to all devices in the collection. This request will always succeed if the collection exists, even if there are one or more send errors. Individual errors are returned as an array of error messages in the response. Use equivalent to resource for devices to send a message to single device.
Broadcast a message to all devices in the collection . This request will always succeed if the collection exists even if there are one or more send errors . Individual errors are returned as an array of error messages in the response . Use equivalent to resource for devices to send a message to single device .
pub async fn broadcast_message(
    configuration: &configuration::Configuration,
    collection_id: &str,
    body: crate::models::BroadcastMessageRequest,
) -> Result<crate::models::MultiSendMessageResponse, Error<BroadcastMessageError>> {
    let local_var_client = &configuration.client;
    let local_var_uri_str = format!(
        "{}/collections/{collectionId}/to",
        configuration.base_path,
        collectionId = crate::apis::urlencode(collection_id)
    );
    let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
    if let Some(ref local_var_user_agent) = configuration.user_agent {
        local_var_req_builder =
            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
    }
    if let Some(ref local_var_apikey) = configuration.api_key {
        let local_var_key = local_var_apikey.key.clone();
        let local_var_value = match local_var_apikey.prefix {
            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
            None => local_var_key,
        };
        local_var_req_builder = local_var_req_builder.header("X-API-Token", local_var_value);
    };
    local_var_req_builder = local_var_req_builder.json(&body);
    let local_var_req = local_var_req_builder.build()?;
    let local_var_resp = local_var_client.execute(local_var_req).await?;
    let local_var_status = local_var_resp.status();
    let local_var_content = local_var_resp.text().await?;
    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
        serde_json::from_str(&local_var_content).map_err(Error::from)
    } else {
        let local_var_entity: Option<BroadcastMessageError> =
            serde_json::from_str(&local_var_content).ok();
        let local_var_error = ResponseContent {
            status: local_var_status,
            content: local_var_content,
            entity: local_var_entity,
        };
        Err(Error::ResponseError(local_var_error))
    }
}
pub async fn broadcast_message ( configuration : & configuration :: Configuration , collection_id : & str , body : crate :: models :: BroadcastMessageRequest , ) -> Result < crate :: models :: MultiSendMessageResponse , Error < BroadcastMessageError > > { let local_var_client = & configuration . client ; let local_var_uri_str = format ! ( " " configuration base_path collectionId crate apis urlencode ( collection_id ) ) ; let mut local_var_req_builder = local_var_client . post ( local_var_uri_str . as_str ( ) ) ; if let Some ( ref local_var_user_agent ) = configuration . user_agent { local_var_req_builder = local_var_req_builder . header ( reqwest :: header :: USER_AGENT , local_var_user_agent . clone ( ) ) ; } if let Some ( ref local_var_apikey ) = configuration . api_key { let local_var_key = local_var_apikey . key . clone ( ) ; let local_var_value = match local_var_apikey . prefix { Some ( ref local_var_prefix ) => format ! ( " " local_var_prefix local_var_key ) , None => local_var_key , } ; local_var_req_builder = local_var_req_builder . header ( " " , local_var_value ) ; } ; local_var_req_builder = local_var_req_builder . json ( & body ) ; let local_var_req = local_var_req_builder . build ( ) ? ; let local_var_resp = local_var_client . execute ( local_var_req ) . await ? ; let local_var_status = local_var_resp . status ( ) ; let local_var_content = local_var_resp . text ( ) . await ? ; if ! local_var_status . is_client_error ( ) && ! local_var_status . is_server_error ( ) { serde_json :: from_str ( & local_var_content ) . map_err ( Error :: from ) } else { let local_var_entity : Option < BroadcastMessageError > = serde_json :: from_str ( & local_var_content ) . ok ( ) ; let local_var_error = ResponseContent { status : local_var_status , content : local_var_content , entity : local_var_entity , } ; Err ( Error :: ResponseError ( local_var_error ) ) } }
Broadcast a message to all devices in the collection.
Broadcast a message to all devices in the collection .
configuration
&configuration::Configuration
collection_id
&str
body
crate::models::BroadcastMessageRequest
configuration
&configuration::Configuration
collection_id
&str
body
crate::models::BroadcastMessageRequest