pub mod msc4495 {
use js_int::Int;
use ruma_common::{
OwnedUserId,
api::{request, response},
metadata,
};
use crate::authentication::ServerSignatures;
metadata! {
method: GET,
rate_limited: false,
authentication: ServerSignatures,
path: "/_matrix/federation/unstable/org.continuwuity.presence_v2.msc4495/query/presence_recipients",
}
#[request]
pub struct Request {
#[ruma_api(query)]
pub user_id: OwnedUserId,
}
impl Request {
pub fn new(user_id: OwnedUserId) -> Self {
Self { user_id }
}
}
#[response]
pub struct Response {
pub stream_id: Int,
pub recipients: Vec<OwnedUserId>,
}
impl Response {
pub fn new(stream_id: Int, recipients: Vec<OwnedUserId>) -> Self {
Self { stream_id, recipients }
}
}
}