mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-03 21:34:48 -04:00
Add delete room admin endpoint (#7613)
The Delete Room admin API allows server admins to remove rooms from server
and block these rooms.
`DELETE /_synapse/admin/v1/rooms/<room_id>`
It is a combination and improvement of "[Shutdown room](https://github.com/matrix-org/synapse/blob/develop/docs/admin_api/shutdown_room.md)" and "[Purge room](https://github.com/matrix-org/synapse/blob/develop/docs/admin_api/purge_room.md)" API.
Fixes: #6425
It also fixes a bug in [synapse/storage/data_stores/main/room.py](synapse/storage/data_stores/main/room.py) in ` get_room_with_stats`.
It should return `None` if the room is unknown. But it returns an `IndexError`.
901b1fa561/synapse/storage/data_stores/main/room.py (L99-L105)
Related to:
- #5575
- https://github.com/Awesome-Technologies/synapse-admin/issues/17
Signed-off-by: Dirk Klimpel dirk@klimpel.org
This commit is contained in:
parent
77d2c05410
commit
491f0dab1b
12 changed files with 782 additions and 120 deletions
|
@ -73,7 +73,11 @@ from synapse.handlers.profile import BaseProfileHandler, MasterProfileHandler
|
|||
from synapse.handlers.read_marker import ReadMarkerHandler
|
||||
from synapse.handlers.receipts import ReceiptsHandler
|
||||
from synapse.handlers.register import RegistrationHandler
|
||||
from synapse.handlers.room import RoomContextHandler, RoomCreationHandler
|
||||
from synapse.handlers.room import (
|
||||
RoomContextHandler,
|
||||
RoomCreationHandler,
|
||||
RoomShutdownHandler,
|
||||
)
|
||||
from synapse.handlers.room_list import RoomListHandler
|
||||
from synapse.handlers.room_member import RoomMemberMasterHandler
|
||||
from synapse.handlers.room_member_worker import RoomMemberWorkerHandler
|
||||
|
@ -144,6 +148,7 @@ class HomeServer(object):
|
|||
"handlers",
|
||||
"auth",
|
||||
"room_creation_handler",
|
||||
"room_shutdown_handler",
|
||||
"state_handler",
|
||||
"state_resolution_handler",
|
||||
"presence_handler",
|
||||
|
@ -357,6 +362,9 @@ class HomeServer(object):
|
|||
def build_room_creation_handler(self):
|
||||
return RoomCreationHandler(self)
|
||||
|
||||
def build_room_shutdown_handler(self):
|
||||
return RoomShutdownHandler(self)
|
||||
|
||||
def build_sendmail(self):
|
||||
return sendmail
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue