Skip to main content

tuwunel_admin/query/pusher/
remove_pusher.rs

1use ruma::OwnedUserId;
2use tuwunel_core::Result;
3
4use crate::admin_command;
5
6#[admin_command]
7pub(super) async fn remove_pusher(&self, user_id: OwnedUserId, pushkey: String) -> Result {
8	let exists = self
9		.services
10		.pusher
11		.get_pusher(&user_id, &pushkey)
12		.await
13		.is_ok();
14
15	self.services
16		.pusher
17		.delete_pusher(&user_id, &pushkey)
18		.await;
19
20	let message = if exists {
21		"Pusher deleted."
22	} else {
23		"Pusher was not found but deletion was still attempted."
24	};
25
26	self.write_str(message).await
27}