From 9aa22af3390a249d1b500d75a7d7189daaed265e Mon Sep 17 00:00:00 2001 From: Fringg Date: Tue, 10 Feb 2026 05:31:39 +0300 Subject: [PATCH] fix: use event field directly as event_name (already includes scope prefix) RemnaWave sends event as "user.modified", not "modified". Concatenating scope + event produced "user.user.modified" which didn't match any handler keys. --- app/webserver/remnawave_webhook.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/webserver/remnawave_webhook.py b/app/webserver/remnawave_webhook.py index a7449b4d..a8e1e0a7 100644 --- a/app/webserver/remnawave_webhook.py +++ b/app/webserver/remnawave_webhook.py @@ -112,8 +112,10 @@ def create_remnawave_webhook_router(bot: Bot) -> APIRouter: if not isinstance(data, dict): data = {} - event_name = f'{scope}.{event}' - logger.info('RemnaWave webhook received: %s', event_name) + # RemnaWave sends event as full qualified name (e.g. "user.modified"), + # so we use event directly instead of concatenating scope + event. + event_name = event + logger.info('RemnaWave webhook received: scope=%s, event=%s', scope, event_name) # Process event — return 200 to prevent retries for application-level errors. # Only return non-200 for infrastructure failures (DB unavailable).