全频道元数据指南 | Woztell 聊天机器人优化

全频道元数据

全频道元数据 是一个可以应用于频道中所有树的JSON对象。此元数据可以是数据源ID、高级功能的API路径,甚至是基本的问候响应。您可以在“树设置”的“频道”中编辑元数据。

您可以利用全频道元数据来提高 可重用性 并减少树构建的频道 部署时间。例如,在将 FAQ树构建 部署到新频道时,您可以保持完全相同的树构建,只需更改新频道元数据设置中的数据源ID即可。

预期结果

在下面的示例中,用户在Facebook Messenger和WhatsApp的 全频道元数据 中应用了不同的 数据源ID。您可以明显看到内容略有不同,但对话流程相同。

Facebook 5级FAQ聊天机器人
Facebook 5级FAQ聊天机器人
WhatsApp 5级FAQ聊天机器人
相同的FAQ聊天机器人构建部署于Facebook和WhatsApp
Facebook数据源
Facebook数据源
WhatsApp数据源
Facebook和WhatsApp使用不同的数据源

实操指南

  1. 您应决定在不同频道中要更改聊天机器人的哪一部分构建内容。

  2. 定位该聊天机器人的部分,并相应地应用 this.channel.metadata。例如,如果您想为不同频道使用不同的数据源,您可以找到并 替换所有 原始数据源ID为 this.channel.metadata.faqDataSourceId 在 collectionName中。

示例预操作

return new Promise(async (resolve, reject) => {
console.log("in Save Category 1 answers")
let result = await this.fetchDataFromDataSource({
channel: this.channel,
collectionName: this.channel.metadata.faqDataSourceId,
filter: {}
})
console.log("result", result)
result = this.lodash.uniqBy(result, "类别 1")
console.log("result", result)
result = this.lodash.reject(result, { "类别 1": "" })
console.log("result", result)

result = this.lodash.sortBy(result, "类别 1 优先级")

this.member.botMeta.tempData.currentAnswers = result.map(obj => obj["类别 1"])
this.member.botMeta.tempData.listLength = result.length

resolve({
member: this.member,
})
Copy
  1. 前往指定频道,并在“全频道元数据”的“树设置”中添加元数据JSON对象。
全频道元数据
全频道元数据

下面是一个 FAQ数据源 的示例元数据对象:

{
"this.channel.metadata.faqDataSourceId": "5ea26a9d54dasd3dasd2_faq_level_5",
}
Copy
  • 对于metadata.后面的文本,您可以根据您的使用场景指定任何名称。
  • 对于"this.channel.metadata.faqDataSourceId"后面的字符串,您可以输入实际数据(例如数据源ID或API路径),以应用于特定频道。