我将一些照片发送到我的电报机器人组。如何获取file_id
我上传的所有照片?
我使用webhooks,但响应中不包含有关所有照片的任何数据,只包含有关上次上传照片和media_group_id
的一些数据。如何获取我上传的群组照片的所有file_id
个
答案 0 :(得分:1)
Telegram Bot API不会给您的Web挂钩任何有关媒体组中每个项目顺序的可靠信息。 https://core.telegram.org/bots/api#message
建议:
如果漫游器正在进行私人聊天,请将传入的file_id
保存到其media_group_id
中。每当media_group_id
进行更改时,您将拥有所有需要使用的内容。以其他方式吸引用户,以便您可以快速确定media_group_id
的更改并对该处理进行快速响应。
如果漫游器正在群聊中,请针对用户file_id
和id
保存传入的media_group_id
,并类似地监视media_group_id
和用户{ {1}}采取行动。
当解决方案开始变得太复杂而无法满足我的喜好时,我宁愿回到我需要的基本原因,也许会发现我不需要做API负担不起的事情,例如“获取所有上传的照片”由id
”。也许我可以在更新流中单独处理它们。
提示:如果媒体组中有一个media_group_id
,而您只关心该组中的第一个媒体项,那么监视传入消息的caption
和media_group_id
就足够了
caption
答案 1 :(得分:0)
好的,这种方式不简单和不优雅,但它正在发挥作用。
media_group_id
元素中看到 - 这意味着这是一组媒体。media_group_id
)示例:[“media_group_id”=> [[关于照片的一些数据]]]
media_group_id
,如果它是相同的 - 好吧,把他加到阵列...... 示例:[“media_group_id”=> [[有关照片的一些数据],[有关照片的一些数据]]
如果没有 - 好的,创建一个新的数组元素:
示例:[“media_group_id”=> [[有关照片的一些数据]],“media_group_id2”=> [[关于照片的一些数据]]]
嗯...我不喜欢这种方式,但是如何变得更好?