【发布时间】:2019-09-27 12:09:50
【问题描述】:
我在寻找一种方法来访问特定聊天以从外部 API 调用进行处理以与内部消息传递系统集成以供操作员进行对话时遇到问题。
通常我的想法是:如果用户想与人交谈 - 他会触发流程(例如在 CustomBot.js 中)并启动通信。但是,为了从不同的系统发送消息 - 我需要通过外部 API 调用访问这个非常特定的用户和聊天,以将消息路由到正确的用户。
所以我从机器人的上下文中获取了 conversationId,但我需要句柄来找到一种方法来通过 restift API 获取相同的上下文。
我想这样写:
server.post('/api/route_messages', (req, res) => {
context = adapter.getContextById(req.conversationId)
context.sendActivity(req.message)
})
不幸的是,我找不到像“adapter.getContextById”这样的合适方法。
您能建议一种方法吗?
谢谢
【问题讨论】:
-
所以你正在尝试进行机器人到人类的切换?操作员如何访问机器人? bot 的
api/route_messages端点是否从通道发送正常的 Bot Framework 活动?如果是这样,req如何填充conversationId属性? -
@KyleDelaney,是的,我要做一个机器人到人类的切换。中间件 API 交换,以防流程被触发 - CustomBot.js 将发出请求,用数据和交换令牌丰富中间件。
标签: javascript botframework restify