我正在使用NodeJS构建基于MS bot框架的bot。我想使用TypeScript + React构建客户端,但是,我希望能够在用户登录后发送消息。通过在线搜索,我想我能够使用backchannel执行此操作,如this页面中所述。
但是,我想在React应用程序中使用它,如here所述
我可以让React应用程序在我的应用程序中工作,但是我也需要集成反向通道。
我不明白为什么在每个样本中我们都使用不同的东西。例如,在React应用程序中,我们使用BotChat.Chat
..但在backchannel中,我们使用BotChat.App
..这两者之间有什么区别?
另外,我将在我的React应用程序中使用反向通道,我需要声明BotChannel并将其传递给BotChat.App
,这将如何在我们使用BotChat.Chat
的React中工作?
有关这些差异以及如何使用React实现反向通道的任何示例或明确文档将非常感激。
谢谢。
为了在稍后引用聊天,您可以初始化聊天div,如下所示:
<div>
<Chat ref={(chat) => {this._chat = chat;}} directLine={{ secret: "<secret>" }} user={{ id: 'user_id', name: 'user_name' }} />
</div>
这里的重要部分是你包含一个ref的定义,如下所示:
ref={(chat) => {this._chat = chat;}}
在初始化之后,您可以稍后通过this._chat.botConnection
访问botConnection并使.postActivity()
调用如下:
this._chat.botConnection
.postActivity({ type: "message", value: "hi", from: { id: "me" } })
.subscribe(id => console.log("success"));
关于应用程序和聊天之间的区别,快速的方式是,应用程序是一个完整的模式,而聊天分解更多一点,以便于自定义。应用扩展聊天。