Exemple #1
0
        public void Execute(Message message, ITelegramBotClient telegramBotClient)
        {
            var meme = knowYourMemeParser.GetRandomMeme();

            if (meme.Description.Length > MaxCaptionLength)
            {
                var chunks = Enumerable.Range(0, meme.Description.Length / MaxCaptionLength)
                             .Select(i => meme.Description.Substring(i * MaxCaptionLength, MaxCaptionLength));

                telegramBotClient.SendPhoto(message.Chat.Id, meme.PhotoUrl, $"<b>{meme.Title}</b>{chunks.First()}", ParseMode.Html);

                foreach (var chunk in chunks.Skip(1))
                {
                    telegramBotClient.SendTextMessage(message.Chat.Id, chunk, ParseMode.Html);
                }
            }
            else
            {
                telegramBotClient.SendPhoto(message.Chat.Id, meme.PhotoUrl, $"<b>{meme.Title}</b>{meme.Description}", ParseMode.Html);
            }
        }