From fbcf7dd4672955fd5d37a71c41034e05adf602f9 Mon Sep 17 00:00:00 2001 From: Sergey Nazarov Date: Fri, 22 Mar 2024 00:23:43 +0400 Subject: [PATCH] Add ChatUserName --- .../Handlers/Implementation/NewMessageHandler.cs | 8 ++++++++ .../Events/TextUpdateReceived.cs | 2 ++ .../Nocr.TelegramListener.Async.Api.Contracts.csproj | 6 +++--- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/Nocr.TelegramListener.AppServices/UpdateListeners/Handlers/Implementation/NewMessageHandler.cs b/src/Nocr.TelegramListener.AppServices/UpdateListeners/Handlers/Implementation/NewMessageHandler.cs index 5e7e697..d0beec7 100644 --- a/src/Nocr.TelegramListener.AppServices/UpdateListeners/Handlers/Implementation/NewMessageHandler.cs +++ b/src/Nocr.TelegramListener.AppServices/UpdateListeners/Handlers/Implementation/NewMessageHandler.cs @@ -35,10 +35,18 @@ public sealed class NewMessageHandler : INewMessageHandler m.from_id.Peer(_telegramRegistry.Users, _telegramRegistry.Chats) ?? m.post_author, m.peer_id.Peer(_telegramRegistry.Users, _telegramRegistry.Chats), m.message); + var chatUserName = m.peer_id.Peer(_telegramRegistry.Users, _telegramRegistry.Chats).Split("@").Last(); + if (string.IsNullOrWhiteSpace(chatUserName)) + { + _logger.LogWarning("Failed to get chat user name for chat {ChatId}", m.peer_id.ID); + break; + } + var @event = new MessageReceived { From = m.from_id.ID, ChatId = m.peer_id.ID, + ChatUserName = chatUserName, Text = m.message, OccuredDateTime = _dateProvider.UtcNow }; diff --git a/src/Nocr.TelegramListener.Async.Api.Contracts/Events/TextUpdateReceived.cs b/src/Nocr.TelegramListener.Async.Api.Contracts/Events/TextUpdateReceived.cs index 27465d2..f3f4a84 100644 --- a/src/Nocr.TelegramListener.Async.Api.Contracts/Events/TextUpdateReceived.cs +++ b/src/Nocr.TelegramListener.Async.Api.Contracts/Events/TextUpdateReceived.cs @@ -10,5 +10,7 @@ public sealed class MessageReceived : IEvent public long ChatId { get; set; } + public string ChatUserName { get; set; } + public DateTimeOffset OccuredDateTime { get; set; } } diff --git a/src/Nocr.TelegramListener.Async.Api.Contracts/Nocr.TelegramListener.Async.Api.Contracts.csproj b/src/Nocr.TelegramListener.Async.Api.Contracts/Nocr.TelegramListener.Async.Api.Contracts.csproj index 00ae2e5..e3f40b7 100644 --- a/src/Nocr.TelegramListener.Async.Api.Contracts/Nocr.TelegramListener.Async.Api.Contracts.csproj +++ b/src/Nocr.TelegramListener.Async.Api.Contracts/Nocr.TelegramListener.Async.Api.Contracts.csproj @@ -8,9 +8,9 @@ net8.0 enable enable - $(Version) - Lev Grishin - Nocr + $(Version) + Lev Grishin + Nocr readme.md