小编Kaz*_*uki的帖子

如何解析对话框流v2的detectIntent响应中的结构对象?

我想了解最佳方法来解析dialogflow v2的detectIntent的响应。

dialogflow v2的响应包括在协议缓冲区中定义的struct对象。例如,queryResult中的参数。

我知道这是可能通过使用分析它structToJson包含在dialogflow V2 SDK用于Node.js的示例代码。因此,我当前的代码如下所示。

const dialogflow = require("dialogflow");
const structjson = require("./dialogflow/structjson");

identify_intent(sentence, options){
    const session_path = this._sessions_client.sessionPath(this._project_id, options.session_id);

    // The text query request.
    const request = {
        session: session_path,
        queryInput: {
            text: {
                text: sentence,
                languageCode: this._language
            }
        }
    };

    // Send request and log result
    return this._sessions_client.detectIntent(request).then(responses => {
        let result = responses[0].queryResult;

        if (result.parameters){
            result.parameters = structjson.structProtoToJson(result.parameters);
        }

        return result;
    });
}
Run Code Online (Sandbox Code Playgroud)

我正在使用示例代码后的 structProtoToJson()手动解析响应,但这是不切实际的,因为我不仅必须对参数进行响应,而且还必须对实现和其他以struct格式化的对象进行响应。

我想知道什么是解析Node.js应用程序中detectIntent响应的最佳实践。

dialogflow-es

6
推荐指数
1
解决办法
838
查看次数

标签 统计

dialogflow-es ×1