telegram-client/src/Nocr.TelegramClient.AppServices/Handlers/Messages/StartMessage/StartMessageHandler.cs
Sergey Nazarov ba8c94d962 Добавляет локализацию (#4)
Reviewed-on: #4
Co-authored-by: Sergey Nazarov <insight.appdev@gmail.com>
Co-committed-by: Sergey Nazarov <insight.appdev@gmail.com>
2024-04-15 14:29:54 +00:00

34 lines
1.2 KiB
C#

using Insight.Localizer;
using Insight.TelegramBot;
using Insight.TelegramBot.Handling.Handlers;
using Insight.TelegramBot.Models;
using Nocr.TelegramClient.AppServices.Bots.MessageDispatcher;
using Telegram.Bot.Types;
using Telegram.Bot.Types.Enums;
namespace Nocr.TelegramClient.AppServices.Handlers.Messages.StartMessage;
public class StartMessageHandler : IMatchingUpdateHandler<StartMessageMatcher>
{
private readonly ILocalizer _localizer;
private readonly IMessageDispatcherQueue _messageQueue;
public StartMessageHandler(ILocalizer localizer, IMessageDispatcherQueue messageQueue)
{
_localizer = localizer ?? throw new ArgumentNullException(nameof(localizer));
_messageQueue = messageQueue ?? throw new ArgumentNullException(nameof(messageQueue));
}
public Task Handle(Update update, CancellationToken cancellationToken = default)
{
var telegramId = update.Message.From.Id;
var message = new TextMessage(telegramId)
{
Text = _localizer.Get("messages", "StartMessage"),
ParseMode = ParseMode.Html
};
_messageQueue.Enqueue(message);
return Task.CompletedTask;
}
}