我正在用MS Teams Bot Framework编写一个交互式聊天机器人,并试图从聊天消息中删除所有提及的内容。即我正在写给机器人的消息(在Team频道内部,带有@general提及以推送通知):
“ @general @bot hello world”我的代码只希望文本消息无任何提及-> “ hello world”。
我的代码:
async def on_message_activity(self, turn_context: TurnContext):
user = turn_context.activity.from_property.name
turn_context.remove_recipient_mention(turn_context.activity)
user_input = turn_context.activity.text.strip()
我希望“turn_context。remove_recipient_mention(turn_context.activity)”来处理它,并从短信中删除收件人。
如果我只有@bot提及,那么它会起作用,但是当消息中有多个提及时,它将不起作用。
如何摆脱聊天消息中的所有提及?
您可以在发送的链接上查看上面的一种方法,即“ remove_mention_text”。每次提及都需要一个ID,但是如果您看一下代码(在此处),它基本上会访问TurnContext.get_mentions(activity)
,因此您实际上可以创建自己的方法,例如remove_all_mentions
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句