尝试用标签回答内联查询会导致错误400 Bad Request: STICKER_DOCUMENT_INVALID
。
我的回复如下所示
const sticker = {
type: 'sticker',
id: '0',
sticker_file_id: 'file_id_obtained_from_upload_sticker_method'
};
ctx.telegram.answerInlineQuery(query.id, [sticker]);
根据Telegram文档here和Telegraf文档here,一切似乎都是正确的。实际上:
{
code: 400,
response: {
ok: false,
error_code: 400,
description: 'Bad Request: STICKER_DOCUMENT_INVALID'
},
description: 'Bad Request: STICKER_DOCUMENT_INVALID',
parameters: {},
on: {
method: 'answerInlineQuery',
payload: { inline_query_id: '3997901566750938248', results: [Array] }
}
}
在Google或官方文档中没有答案。有类似的经验吗?
该标签先前已成功使用方法uploadStickerFile上传,并提供了用于请求图像文件的网址。
答案 0 :(得分:0)
上传png并将其添加到贴纸上,只需返回一个file_id
的png文件即可。但是您必须使用sendSticker
方法或使用getStickerSet
方法获取不干胶标签集中的.WEBP并获得file_unique_id
。看一下Sticker in Telegram Doc以及file_id
和file_unique_id
之间的区别。