pushlib/remote/
push_remote.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use common::model::status_message::StatusMessage;
use common::remote::{post, services};
use hyper::HeaderMap;
use serde::Deserialize;
use serde::Serialize;
use uuid::Uuid;

#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq)]
pub struct NotificationModel {
    pub user_ids: Vec<Uuid>,
    pub payload: serde_json::Value,
}

pub fn send_notification(
    notification: NotificationModel,
    headers: HeaderMap,
) -> Result<StatusMessage, String> {
    post(
        services::PUSH_API,
        String::from("/push/send"),
        headers,
        notification,
    )
}