Add appservice room visibility management endpoint

This commit is contained in:
iinuwa 2020-10-04 10:17:21 -05:00 committed by GitHub
parent b3196d7f64
commit 9dc92c31cf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 37 additions and 0 deletions

View File

@ -1,5 +1,9 @@
# [unreleased] # [unreleased]
Improvements:
* Add room visibility management endpoint
Breaking changes: Breaking changes:
* Fix endpoint versioning * Fix endpoint versioning

View File

@ -0,0 +1,3 @@
//! Endpoints to manage public room directories.
pub mod set_room_visibility;

View File

@ -0,0 +1,30 @@
//! [PUT /_matrix/client/r0/directory/list/appservice/{networkId}/{roomId}](https://matrix.org/docs/spec/application_service/r0.1.2#put-matrix-client-r0-directory-list-appservice-networkid-roomid)
use ruma_api::ruma_api;
use ruma_identifiers::RoomId;
ruma_api! {
metadata: {
description: "Updates the visibility of a given room on the application service's room directory.",
method: PUT,
name: "set_room_visibility",
path: "/_matrix/client/r0/directory/list/appservice/:network_id/:room_id",
rate_limited: false,
authentication: QueryOnlyAccessToken,
}
request: {
/// The protocol (network) ID to update the room list for.
#[ruma_api(path)]
pub network_id: String,
/// Room ID of the room to add or remove from the directory.
#[ruma_api(path)]
pub room_id: RoomId,
/// Whether the room should be visible (public) in the directory or not (private).
pub visibility: Visibility,
}
response: {}
}