我已经创建了一个Azure机器人,用于使用消息传递扩展功能进行快速搜索,但我需要用户的电子邮件来证实一些数据
我用了
print(turn_context.activity.from_property.id)
输出:
29:xxxxxx_-ZeW4Q6vIILx8BGjD-xxx88tLxqZFPYPxxxl_42i-siINFZkxxxfgbgGczHXZxx5crxx_xxxxxxxxxx
不确定如何转换或交叉匹配此字符串以获取用户的电子邮件
我正在将“TeamsActivityHandler”传递到我的SearchBasedMessageExtension类中。 另外,使用github中基于搜索的消息传递扩展采样器进行查询
还有别的办法吗
编辑:100721
我试着像下面那样添加函数,但函数从未被调用
class SearchBasedMessagingExtension(TeamsActivityHandler):
async def _show_members(self, turn_context: TurnContext ):
member = await TeamsInfo.get_member(turn_context, turn_context.activity.from_property.id)
print(member)
async def on_teams_messaging_extension_query(self, turn_context: TurnContext, query: MessagingExtensionQuery):
search_query = str(query.parameters[0].value).strip()
if search_query == "":
await turn_context.send_activity(MessageFactory.text("You cannot enter a blank string for the search"))
return
print(turn_context.activity.from_property.id)
然后我在if条件之后调用它,如下所示:
async def on_teams_messaging_extension_query(self, turn_context: TurnContext, query: MessagingExtensionQuery):
search_query = str(query.parameters[0].value).strip()
if search_query == "":
await turn_context.send_activity(MessageFactory.text("You cannot enter a blank string for the search"))
return
print(await self._show_members(turn_context))
print(turn_context.activity.from_property.id)
并收到下一个错误:
source is not a known attribute of class <class 'botbuilder.schema.teams._models_py3.TeamsChannelData'> and will be ignored
您可以致电get_member以询问成员
请参阅文档中的python sample
相关问题 更多 >
编程相关推荐