# 动态设置UI 组件

从版本 1.1.0 开始,支持获取对话 UI 组件, 获取 ui 组件后可以访问到inputVoiceStart、 inputVoiceEnd 、send 三个 UI 方法注意此方法必须在使用插件 UI 的情况下使用

引入插件,并获取当前 UI 组件

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();

用户需要开始语音输入的时候需要触发的事件

// 用户开始语音输入的时候需要触发的事件
// 调用此方法后operateCard插件内部会抛出inputVoiceStart事件,请注意在operateCard组件上监听
chat.inputVoiceStart();

用户需要结束语音输入的时候需要触发的事件

// 用户结束语音输入的时候需要触发的事件
// 调用此方法后operateCard插件内部会抛出inputVoiceEnd事件,请注意在operateCard组件上监听
chat.inputVoiceEnd();

用户需要发送消息时需要触发的事件

// 用户需要发送消息时需要触发的事件
// 调用此方法后插件内部会主动发送一条消息,如果想悄悄的发送不想用户感知,则设置silence为true即可
chat.send("你好!", {
    silence: false //silence表示发送该query时前端是否展示,默认为false前端展示
});

# 动态设置 guideList

从版本 1.1.0 开始,支持根据上下文,随时修改用户提示语的方法

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.setGuideList(["内容", "内容"]);

# 动态设置 textToSpeech

从版本 1.1.0 开始,支持根据上下文,随时修改是否打开语音播报

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.setTextToSpeech(false);

# 动态设置欢迎语

从版本 1.1.2 开始,支持动态修改欢迎语

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.setWelcome("您好,请问需要什么帮助?");

# 动态设置图片类型的欢迎语

从版本 1.1.5 开始,支持动态修改欢迎语

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.setWelcomeImage(URL地址);

# 动态清除本地缓存的聊天记录

从版本 1.1.5 开始,支持动态清除本地缓存的聊天纪录

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.clearChatRecord();

# 动态设置聊天背景

从版本 1.1.2 开始,支持动态设置聊天背景

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.setBackground("rgba(247,251,252,1)");

# 动态设置 input 的 focus 状态

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.editFoucs(true);

# 动态将页面滚动到最新的聊天记录

var plugin = requirePlugin("chatbot");
var chat = plugin.getChatComponent();
chat.scrollToBottom();

# 动态设置聊天背景获取 UI 组件,控制 UI 进行 发送消息、开始录音、结束录音

从版本 1.1.0 开始,支持获取对话 UI 组件, 获取 ui 组件后可以访问到inputVoiceStartinputVoiceEndsend 三个 UI 方法

var plugin = requirePlugin("chatbot");
const chat = plugin.getChatComponent();

//开始录音
chat.inputVoiceStart();

//结束录音
chat.inputVoiceEnd();

//发送消息
chat.send("你好!");

# 打开 web-view 页面

点击机器人回答里的链接跳转 webview,需要开发者自己配置一个承载 webview 的页面,url 字段对应的小程序页面需要开发者自己创建 开发者需要在小程序后台配置相应的域名

<chat bind:openWebview="openWebview" />

openWebview: function(e) {
    let url = e.detail.weburl
    wx.navigateTo({
      url: `/pages/webviewPage/webviewPage?url=${url}`
    })
  }

# 打开小程序

点击机器人回答中的小程序,需要在开发者自己的小程序内做跳转 开发者需要在小程序配置中指定跳转小程序的 appId

<chat bind:openMiniProgram="openMiniProgram" />
openMiniProgram(e) {
   let {appid, pagepath} = e.detail
   if (appid) {
        wx.navigateToMiniProgram({
            appId: appid,
            path: pagepath,
            extraData: {},
            envVersion: "",
            success(res) {
                // 打开成功
            }
        });
    }
}