java - 使用 MediaGroup 发送多个图像
问题描述
我正在使用这个库:https ://github.com/rubenlagus
我想在一封邮件中发送多张图片。我该怎么做?我知道 SendMediaGroup,但似乎我不明白它是如何工作的。
例如,我有图像的 URL,它适用于单个 SendPhoto 方法,但我无法使用 MediaGroup 配置它。它需要InputMedia
.
public void handlePhoto(Update update) {
String image1 = "https://lh3.googleusercontent.com/af9mFH4XinZ7f6dx-Ygm9molYPAcMHhhZyQ0udDBd9S9-44v_VBdeA0rjSlQyJRpQg=w1920-h937-rw";
String image2 = "https://lh3.googleusercontent.com/mo0CZaV_aGflOPB8Tzo697l1WoZuoYUN9TiPMWq0zE29v_I99n1Qg185MfHrU-53nxAG=w1920-h937-rw";
String image3 = "https://lh3.googleusercontent.com/FEiHmVyoT1MU3rbAxSkE_aNDuXBuo3YHQOnqfMAfehS-d4k6CvxuyxpX6KKSbJp3Xv28=w1920-h937-rw";
List<InputMedia> media = new ArrayList<>();
InputMedia photo1 = new InputMediaPhoto();
photo1.setMedia(image1);
InputMedia photo2 = new InputMediaPhoto();
photo2.setMedia(image2);
InputMedia photo3 = new InputMediaPhoto();
photo3.setMedia(image3);
media.add(photo1);
media.add(photo2);
media.add(photo3);
SendMediaGroup mediaGroup = new SendMediaGroup();
mediaGroup.setChatId(update.getMessage().getChatId());
mediaGroup.setMedia(media);
try {
execute(mediaGroup);
}
catch (TelegramApiException e) {
e.printStackTrace();
}
}
我收到此错误:
org.telegram.telegrambots.meta.exceptions.TelegramApiRequestException: Error sending media group: [400] Bad Request: wrong type of the web page content
wrong type of the web page content
意味着 Telegram(或此 API)无法处理 .webp 图像。有什么技巧吗?
解决方案
Telegram API 支持 .webp 格式。也许您违反了以下规则之一:`照片大小不得超过 10 MB。照片的宽高合计不得超过10000。宽高比不得超过 20。
推荐阅读
- raspberry-pi - 无法让 ALSA 识别我在 Raspberry Pi 上的 mic softvol 控制
- c# - 如何不时连接到套接字
- connection - 简单的 Salesforce 无法连接
- python-3.x - 我应该如何在 def discord.py 中给出 Int
- entity-framework - 在 Azure 函数中禁用实体框架日志记录
- postgresql - QueryDef 可更新,Recordset 不可更新
- spring - Kafka Binder 的运行状况未显示
- elasticsearch - Elasticsearh 的索引策略或索引模板
- java - 如何在guice的另一个模块中使用一个模块的单例类?
- java - 调用 completeExceptionally 时未在 CompletableFuture 上执行最后一次转换