Exemple #1
0
        static async void Bot_OnMessage(object sender, MessageEventArgs args)
        {
            var processingMiddleware = new ProcessingMiddlewareBuilder()
                                       .AddTelegramClient((ITelegramBotClient)sender)
                                       .AddComponent(new IncomingMessageLogger())
                                       //.AddComponent(new IncomingMessageThrottler(InMemoryRateLimiter.GetInstance()))
                                       .AddComponent(new IncomingMessageThrottler(new MemuraiDbRateLimiter(), 50))
                                       .AddComponent(new MessageProcessingLogic(InMemoryStateRepository.GetInstance()))
                                       .Build();

            processingMiddleware.ProcessRequest(args);

            await Task.CompletedTask;
        }