我需要像这样在回调数据中重新发送文件ID:
cd1 = 'publish {}'.format(new_file_id)
cd2 = 'delayed 1 {} *'.format(new_file_id)
...
markup = types.InlineKeyboardMarkup(1)
btn1 = types.InlineKeyboardButton(text='Publish',
callback_data=cd1)
btn2 = types.InlineKeyboardButton(text='Delayed publication',
callback_data=cd2)
markup.add(btn1, btn2)
bot.edit_message_reply_markup(message.chat.id, msg.message_id, reply_markup=markup)
但是file_id的大小,我得到
new_file_id = msg.video_note.file_id
(https://github.com/eternnoir/pyTelegramBotAPI的标准方法) 超过允许的 callback_data 大小(1-64 字节)。
的字符串的实际大小callback_data
是 cd1 的 128 字节和 cd2 的 132 字节。
file_id
看起来DQACAgIAAxkDAAIHZ14-nxWa7ckt2ZG7UQMrq_PuxIxRAAK4BQACzfj4SdBn7Y70cYWSGAQ
和大小是 120 字节。
有任何想法吗?真的希望得到你的帮助。