问题描述
我想创建一个Telegram机器人,该机器人解释某些缩写词。我想在群聊中使用它,这就是为什么我考虑使用它的原因:/ acronyms blabla。我可以使用通过命令传递的参数。我想将解释添加到这样的给定参数中。
fun <T: Any> List<T>.extractWithSepreation(errorString: String): String {
var errorString = "There is no available $errorString"
if (this.isEmpty()) {
return errorString
}
errorString = ""
this.forEachIndexed { index,item ->
when(T)
}
}
如何传递参数并进行比较以获得正确的解释?由于该命令应该在/ acronym 2B之类的组中使用,因此使用像InlineKeyboardButton这样的Menu没有意义。我觉得CallbackQueryHandler可能会有所帮助,但我无法解决如何在没有菜单的情况下如何使用它的问题。
解决方法
创建字典以存储首字母缩写词和说明
myDictionary = { "acro1": "expl1","acro2": "expl2"}
每次机器人收到命令时,搜索相应的密钥:
for key in myDictionary:
if key == command:
answer=myDictionary[key]