如何为 IBM Watson Assistant 中的预设变量赋值

问题描述 投票:0回答:1

我希望当我启动系统并且 Watson 聊天机器人打开时,我的 user_name 变量已经具有已登录用户的名称。

onLoad: async (instance) => {
 
       /*Here I get the user name from HTML*/
        let userName = document.getElementById("user_name").value || '';
        instance.restartConversation();
        instance.updateHomeScreenConfig({
            is_on: true,
            greeting: `Hola ${userName}! Soy tu asistente virtual, dime algo y te ayudo!`
        });
        instance.send({
            input: {
                text: ""
            },
            context: {
                global: {
                    system: {
                        /*Here is my problem*/
                        user_name: userName
                    }
                }
            }
        }).then((eve) => {
            console.log("Nombre del usuario enviado al contexto:", userName);
        }).catch(err => {
            console.error("Error al enviar el nombre al contexto:", err);
        });
 

        await instance.render();
    }

在此输入图片描述

如果它正确地向我显示问候语,但我希望我的变量更新其值,那么我已经在 Watson 中创建了该变量,并且我也有一个意图告诉我我的名字是什么。

我的变量已正确初始化

javascript chatbot ibm-watson watson-assistant
1个回答
0
投票

您无法更新

context.global.system
。您只能设置
skill_variables
参见此示例

© www.soinside.com 2019 - 2024. All rights reserved.