Skip to main content

tuwunel_admin/user/
delete_device.rs

1use ruma::{OwnedDeviceId, OwnedUserId};
2use tuwunel_core::{Err, Result};
3
4use crate::admin_command;
5
6#[admin_command]
7pub(super) async fn delete_device(
8	&self,
9	user_id: OwnedUserId,
10	device_id: OwnedDeviceId,
11) -> Result {
12	if !self.services.globals.user_is_local(&user_id) {
13		return Err!("Cannot delete device of remote user");
14	}
15
16	self.services
17		.users
18		.remove_device(&user_id, &device_id)
19		.await;
20
21	write!(self, "User {user_id}'s device {device_id} removed.").await
22}