开发者
聊天机器人
通过安装代码,在组织网站中加入 Keural 聊天机器人按钮。
在组织网站中加入 Keural 聊天机器人。访客点击屏幕角落的按钮后,聊天机器人窗口即会打开。在管理界面中生成安装代码,并将其粘贴到网站中即可完成安装。
创建聊天机器人
- 组织所有者或管理员在 组织管理 → 聊天机器人 中点击 + 添加聊天机器人。
- 输入聊天机器人名称和默认域名(例如
https://example.com),然后完成登记。 - 打开聊天机器人,设置三个标签页。
| 标签页 | 设置 |
|---|---|
| 令牌与安装 | 确认令牌,并复制安装代码(HTML · Next.js) |
| 聊天机器人界面 | 按钮图片(PNG·JPG·GIF·WebP)及是否显示、聊天机器人名称、标题栏的显示、展开和颜色、按钮颜色、按钮位置(左侧或右侧)以及水平和垂直偏移。可通过预览确认 |
| 高级 | 允许聊天机器人打开的页面地址(允许的域名,最多 5 个) |
- 将安装代码粘贴到您的网站中。
安装代码
在 令牌与安装 标签页中复制 HTML 或 Next.js 代码。代码由两部分组成。
- 加载器:创建
Keural函数,页面加载完成后,异步加载聊天机器人脚本(/plugin/keural-widget@1.0.1.js)。脚本加载前调用的命令会排入队列,然后按顺序执行。 - 启动命令:
Keural('boot', { token: '…' })。令牌以wgt_开头。
脚本版本已固定在地址中。发布新版本时,请重新复制安装代码并替换。若在同一页面中放置两次安装代码,第二次的代码会被忽略,并在控制台中记录错误。
<script id="keural-one-script">
/* 从“令牌与安装”标签页复制的代码 */
</script>在 Next.js 中,请使用 next/script 的 <Script id="keural-one-script" strategy="afterInteractive"> 添加。若要在所有页面中显示,请将其放在根布局中。
启动选项
传给 boot 的值优先于管理界面中的设置。需要按页面更改外观时使用。
Keural('boot', {
token: 'wgt_…',
theme: 'system',
header: { enabled: true, extended: true, draggable: true, title: '客户支持', color: '#495BD8' },
button: { visible: true, iconUrl: 'https://example.com/icon.png', color: '#495BD8', position: 'right', offsetX: 30, offsetY: 30 },
});| 选项 | 值 | 管理界面中的设置名称 |
|---|---|---|
token | 必填。安装代码中的令牌 | — |
theme | light · dark · system | — |
header.enabled | 显示标题栏 | 标题栏显示 |
header.extended | 在标题栏中显示放大按钮 | 标题栏展开 |
header.draggable | 拖动标题栏移动窗口(默认 true) | — |
header.title | 标题栏标题 | 聊天机器人名称 |
header.color | 标题栏颜色 | 标题栏颜色 |
button.visible | 显示按钮 | 显示按钮 |
button.iconUrl | 按钮图片地址 | 按钮图片 |
button.color | 按钮颜色 | 按钮颜色 |
button.position | left · right | 按钮位置 |
button.offsetX · button.offsetY | 距离屏幕边缘的距离(px) | X 偏移 · Y 偏移 |
新建聊天机器人的默认值为:标题栏显示与展开开启,标题栏和按钮颜色 #495BD8,位于右侧,偏移 30px,主题 system。
页面控制
| 调用 | 行为 |
|---|---|
Keural('open') · Keural.open() | 打开聊天机器人窗口。 |
Keural('close') · Keural.close() | 关闭。 |
Keural('toggle') · Keural.toggle() | 若已打开则关闭,若已关闭则打开。 |
Keural('reload') · Keural.reload() | 重新加载聊天机器人窗口。 |
Keural('badge', n) · Keural.badge(n) | 在按钮上显示数字徽标。 |
Keural.isLoaded() | 脚本加载完成时为 true |
Keural.onOpen(cb) · Keural.onClose(cb) | 窗口打开或关闭时调用 cb。 |
Keural.open() 等方法仅在脚本加载完成后生效。页面加载后立即调用时,请使用 Keural('open') 这样的函数形式调用,它们会按顺序执行。
<button onclick="Keural('open')">咨询</button>也可以隐藏默认按钮(button.visible: false),改用页面中的按钮打开。
屏幕尺寸
聊天机器人窗口为 390×800px,屏幕宽度为 480px 以下时以全屏打开。通过标题栏的放大按钮可放大窗口。
显示域名
- 聊天机器人只会在主机与默认域名相同的页面中打开。主机比较包括端口号,且不区分大小写。带有
www.的地址和子域名视为不同主机。若要在开发服务器上测试,请另外创建一个以该地址为默认域名的聊天机器人。 - 默认域名创建后不可更改。若要更改,请重新创建聊天机器人。
- 若将 高级 中的允许域名留空,则在默认域名的所有页面中打开。若填写了允许域名,则仅在以这些地址开头的页面中打开。若写明路径(例如
https://example.com/help),则会缩小到该路径下的页面。允许域名以http://或https://开头,最多可填写 5 个。 - 安装代码中的令牌会暴露在页面中。聊天机器人仅连接可公开的内容。
安全策略(CSP)
若网站已应用 Content-Security-Policy,请允许以下内容。地址以 keural.ai 为准。
| 指令 | 允许的内容 |
|---|---|
script-src | https://keural.ai,以及安装代码的内联脚本('unsafe-inline' 或哈希、nonce) |
connect-src | https://api.keural.ai |
frame-src | https://keural.ai |
style-src | 'unsafe-inline' 或 nonce(聊天机器人会将样式写入页面) |
img-src | 按钮图片地址、https://keural.ai、https://api.keural.ai |