diff options
| author | Owen Jacobson <owen@grimoire.ca> | 2025-07-24 22:32:27 -0400 |
|---|---|---|
| committer | Owen Jacobson <owen@grimoire.ca> | 2025-07-24 22:32:27 -0400 |
| commit | b63380b251d04dd92f06aa5bbc22a72ca3e4bf8e (patch) | |
| tree | 3956ec457131ce049fd91f2f53309bc0620fffe2 /src/push/handlers/echo.rs | |
| parent | 2e42057694851b82574e0a406ded429fb95a07fa (diff) | |
wip: 83B78D40-D7CB-4419-9FE7-E7D858909443
Diffstat (limited to 'src/push/handlers/echo.rs')
| -rw-r--r-- | src/push/handlers/echo.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/push/handlers/echo.rs b/src/push/handlers/echo.rs new file mode 100644 index 0000000..4b4de57 --- /dev/null +++ b/src/push/handlers/echo.rs @@ -0,0 +1,20 @@ +use axum::extract::{Json, State}; + +use crate::{app::App, push::Id, token::extract::Identity}; + +#[derive(serde::Deserialize)] +pub struct Request { + subscription: Id, + msg: String, +} + +pub async fn handler( + State(app): State<App>, + identity: Identity, + Json(request): Json<Request>, +) -> Result<(), crate::error::Internal> { + let Request { subscription, msg } = request; + app.push().echo(&identity.user, &subscription, &msg).await?; + + Ok(()) +} |
