From 422aa290302567993cb1c2a0216ce87084ebbfe2 Mon Sep 17 00:00:00 2001 From: icey-yu <1186114839@qq.com> Date: Mon, 14 Oct 2024 09:54:07 +0800 Subject: [PATCH] feat: online and offline webhook --- internal/msggateway/online.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/internal/msggateway/online.go b/internal/msggateway/online.go index 22a9e38e3..f29869b6e 100644 --- a/internal/msggateway/online.go +++ b/internal/msggateway/online.go @@ -92,7 +92,12 @@ func (ws *WsServer) ChangeOnlineStatus(concurrent int) { } for _, ss := range req.Status { for _, online := range ss.Online { - ws.webhookAfterUserOnline(ctx, &ws.msgGatewayConfig.WebhooksConfig.AfterUserOnline, ss.UserID, int(online), false, ss.ConnID) + client, _, _ := ws.clients.Get(ss.UserID, int(online)) + back := false + if len(client) > 0 { + back = client[0].IsBackground + } + ws.webhookAfterUserOnline(ctx, &ws.msgGatewayConfig.WebhooksConfig.AfterUserOnline, ss.UserID, int(online), back, ss.ConnID) } for _, offline := range ss.Offline { ws.webhookAfterUserOffline(ctx, &ws.msgGatewayConfig.WebhooksConfig.AfterUserOffline, ss.UserID, int(offline), ss.ConnID)