python - 使 1 个消息处理程序向每个输入返回相同的函数
问题描述
我试图让 1 个消息处理程序对其获得的每个输入返回一个相同的函数。
例如,当输入等于“编辑”或“添加”时,不是让这 2 个消息处理程序返回相同的函数“编辑”:
messageHandler(
Filters.regex('^(Edit)$'), editing),
messageHandler(
Filters.regex('^(ADD)$'), editing)
我想添加类似的内容:
messageHandler(
Filters.regex('^(%s)$' %(user_input)), editing)
所以它输入的所有内容都返回相同的函数“编辑”
对于更具体的情况,如有必要,请考虑此代码。如果出于某种原因,我只想添加 1 个消息处理程序,它将函数“开始”返回到用户键入的所有内容。怎么可能做到?
解决方案
这个问题已经在Github 讨论中得到回答,python-telegram-bot
其中指出可以Filters.text
用来过滤所有传入的文本消息。或者,Filters.all
甚至会接受所有非短信。