将API应用于聊天机器人
Stella是一个高度可定制的机器人构建工具,为任何商业用例提供了构建个性化聊天机器人流程的灵活性。你可以利用Stella中的 "actions",其中包括 "Pre-actions "和 "Post-actions"。
请参考下面关于从JSON占位符获取数据的示例代码。
示例代码的逻辑如下。
- Stella有一个特定的动作语法。你必须返回一个新的承诺,并在最后解决它。
- 假设聊天机器人询问了客户的用户ID,然后聊天机器人将从客户那里得到问题的答案(用户ID),并将其保存为Javascript中的常量。
- 从JSON占位符中获取数据。Stella在这里使用node-fetch npm包。
- 用
this.lodash.set
将用户数据分配给this.member
。 - 通过使用resolve更新
this.member
。
return new Promise((resolve) => {
const userId = this.messageEvent.data.text
const userInfo = fetch(`https:\/\/jsonplaceholder.typicode.com/users/${userId}`)
.then(res => res.json())
this.lodash.set(this.member, "botMeta.tempData.userInfo", userInfo)
resolve({
member: this.member
})
})
在以后的使用中,你可以用this.lodash.get(this.member, "botMeta.tempData.userInfo", null)
来访问to-dos数据。