我想从Mongo数据库实现对机器人的自动完整搜索

时间:2019-08-13 12:39:27

标签: botframework

我想对bot实施自动完成搜索。例如,bot应该从Mongo Database获得响应作为自动完成选项。有人可以建议不使用Azure搜索怎么做吗?

我曾尝试像this那样实现,但就我而言,我想从数据库中获取标签。

我可以知道执行此操作的可用选项是什么吗?

1 个答案:

答案 0 :(得分:1)

当您从漫游器发送消息时,可以将自动完成选项添加到活动的渠道数据中。然后,在Web Chat中,您可以使用自定义商店中间件来检索选项并更新JQuery Auto完整小部件。

Bot Framework SDK v4(C#)

var reply = turnContext.Activity.CreateReply();
reply.Text = "Hello, World!";
reply.ChannelData = JObject.FromObject( new {
    autocompleteOptions = new List<string>() { "Option 1", "Option 2", "Option 3" }
});
await turnContext.SendActivityAsync(reply);

网络聊天第4版

const store = createStore(
  {},
  ({ dispatch }) => next => action => {
    if (action.type === 'DIRECT_LINE/INCOMING_ACTIVITY') {
      const { payload: { activity: { channelData: { autcompleteOptions } = {}}}} = action;
      if (autcompleteOptions) {
        // Update JQuery Autcomplete Widget with `autocompleteOptions`
      }
    }
    return next(action);
  }
);

有关更多详细信息,请查看Incoming Event网络聊天示例和此堆栈溢出answer

希望这会有所帮助!