1
0
Fork 0
mirror of https://forgejo.ellis.link/continuwuation/continuwuity.git synced 2025-07-28 10:48:30 +00:00
continuwuity/src/client_server/capabilities.rs

29 lines
956 B
Rust
Raw Normal View History

use crate::{ConduitResult, Ruma};
use ruma::{
api::client::r0::capabilities::{
get_capabilities, Capabilities, RoomVersionStability, RoomVersionsCapability,
},
RoomVersionId,
};
2020-07-30 18:14:47 +02:00
use std::collections::BTreeMap;
2020-07-31 14:40:28 +02:00
/// # `GET /_matrix/client/r0/capabilities`
///
2021-08-31 19:14:37 +02:00
/// Get information on the supported feature set and other relevent capabilities of this server.
#[tracing::instrument(skip(_body))]
pub async fn get_capabilities_route(
_body: Ruma<get_capabilities::Request>,
) -> ConduitResult<get_capabilities::Response> {
2020-07-30 18:14:47 +02:00
let mut available = BTreeMap::new();
2021-11-26 20:36:40 +01:00
available.insert(RoomVersionId::V5, RoomVersionStability::Stable);
available.insert(RoomVersionId::V6, RoomVersionStability::Stable);
2020-07-30 18:14:47 +02:00
let mut capabilities = Capabilities::new();
capabilities.room_versions = RoomVersionsCapability {
2021-11-26 20:36:40 +01:00
default: RoomVersionId::V6,
available,
};
Ok(get_capabilities::Response { capabilities }.into())
2020-07-30 18:14:47 +02:00
}