电报InlineKeyboardButton可以保存callback_data字符串,如果用户按下该按钮,该字符串将移交给回调处理程序。为了识别事件,我将事件描述作为callback_data移交。此外,我将潜在的元数据(如ID)附加到callback_data。一个示例是“ trade-145342323”。
当前,callback_data字符串被硬编码到两个位置。
现在我正在寻找一种解决方案来定义所有这些callback_data字符串,例如 一个string.Template在一个位置,以便我可以在按钮生成过程中填写ID等。此外,我想在处理程序中检查哪个事件类型匹配某个callback_data并提取最终的ID等。 模板对类型敏感可能会很好。
我在想类似的东西:(伪代码)
CALLBACK_DATA1='trade-$id:int'#???
...
InlineKeyboardButton(text='Trade',
callback_data=CALLBACK_DATA1.substitute(id=123))
...
if data matches CALLBACK_DATA1:
id = CALLBACK_DATA1.extract(data) #???
或完全不同的东西:)
预先感谢