From d694ed2feec6abb6f9f3d0ab9416f367a78d27b1 Mon Sep 17 00:00:00 2001 From: Abdullah Atta Date: Wed, 5 Aug 2026 13:42:49 +0500 Subject: [PATCH] common: send message to subscriptions server on email confirmed --- Streetwriters.Common/Clients.cs | 14 +++++++++++++ .../Messages/EmailConfirmedMessage.cs | 20 +++++++++++++++++++ Streetwriters.Common/WampServers.cs | 1 + 3 files changed, 35 insertions(+) create mode 100644 Streetwriters.Common/Messages/EmailConfirmedMessage.cs diff --git a/Streetwriters.Common/Clients.cs b/Streetwriters.Common/Clients.cs index 2edd2c7..f39a92b 100644 --- a/Streetwriters.Common/Clients.cs +++ b/Streetwriters.Common/Clients.cs @@ -42,6 +42,20 @@ namespace Streetwriters.Common PackageName = "com.streetwriters.notesnook", OnEmailConfirmed = async (userId) => { + if (!Constants.IS_SELF_HOSTED) + { + await WampServers.SubscriptionServer.PublishMessageAsync( + SubscriptionServerTopics.EmailConfirmedTopic, + new EmailConfirmedMessage + { + UserId = userId, + ClientId = "notesnook", + AppId = ApplicationType.NOTESNOOK, + ConfirmedAt = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() + } + ); + } + await WampServers.MessengerServer.PublishMessageAsync(MessengerServerTopics.SendSSETopic, new SendSSEMessage { UserId = userId, diff --git a/Streetwriters.Common/Messages/EmailConfirmedMessage.cs b/Streetwriters.Common/Messages/EmailConfirmedMessage.cs new file mode 100644 index 0000000..362ca15 --- /dev/null +++ b/Streetwriters.Common/Messages/EmailConfirmedMessage.cs @@ -0,0 +1,20 @@ +using System.Text.Json.Serialization; +using Streetwriters.Common.Enums; + +namespace Streetwriters.Common.Messages +{ + public class EmailConfirmedMessage + { + [JsonPropertyName("userId")] + public required string UserId { get; set; } + + [JsonPropertyName("clientId")] + public required string ClientId { get; set; } + + [JsonPropertyName("appId")] + public ApplicationType AppId { get; set; } + + [JsonPropertyName("confirmedAt")] + public long ConfirmedAt { get; set; } + } +} \ No newline at end of file diff --git a/Streetwriters.Common/WampServers.cs b/Streetwriters.Common/WampServers.cs index bf182e1..aadd67e 100644 --- a/Streetwriters.Common/WampServers.cs +++ b/Streetwriters.Common/WampServers.cs @@ -110,6 +110,7 @@ namespace Streetwriters.Common public const string CreateSubscriptionTopic = "co.streetwriters.subscriptions.create"; public const string CreateSubscriptionV2Topic = "co.streetwriters.subscriptions.v2.create"; public const string DeleteSubscriptionTopic = "co.streetwriters.subscriptions.delete"; + public const string EmailConfirmedTopic = "co.streetwriters.subscriptions.email_confirmed"; } public struct IdentityServerTopics