fix: combine session image and text into single Telegram message
When creating a session with an image, send it as a single SendPhoto with the schedule text as caption (+ reply markup), instead of two separate messages. Falls back to two messages if caption exceeds Telegram's 1024-char limit. Also adds BatchMessageEditor helper that transparently handles EditMessageText vs EditMessageCaption depending on whether the batch message is a text or photo message. Updated all handlers and web service to use this helper. Version bump to 1.9.7.
This commit is contained in:
@@ -1048,11 +1048,11 @@ public sealed class SessionService(
|
||||
|
||||
var renderResult = SessionBatchRenderer.Render(title, sessions, participants);
|
||||
|
||||
await bot.EditMessageText(
|
||||
await BatchMessageEditor.EditBatchMessageAsync(
|
||||
bot,
|
||||
chatId: chatId,
|
||||
messageId: messageId,
|
||||
text: renderResult.Text,
|
||||
parseMode: Telegram.Bot.Types.Enums.ParseMode.Html,
|
||||
replyMarkup: renderResult.Markup);
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
||||
Reference in New Issue
Block a user