use crate::config::Config;
use crate::formatter::outgoing_type::MessageType;
use reqwest::{Client, header};
use serde_json::Value;
pub async fn send(config: &Config, message: &MessageType) -> Result<Value, reqwest::Error> {
let client = Client::new();
println!("message ====> {:?}", &message);
let resp = client
.post(format!(
"{}/{}/{}/messages",
config.whatsapp_base_url, config.whatsapp_version, config.whatsapp_phone_number_id
))
.header(header::CONTENT_TYPE, "application/json")
.header(
"Authorization",
format!("Bearer {}", config.whatsapp_system_user_token),
)
.json(message)
.send()
.await?
.json::<Value>()
.await?;
Ok(resp)
}