For 技术 / IT
v1.1 · embed.js · 中英双语
5 分钟把预约机器人接到官网
零依赖 vanilla JS loader + 来源同源的 iframe。所有 API 调用走 LegalLink 自有域名, 不会污染您站点的 Cookie / CSP / 全局样式。
第 1 步
把这段代码粘到 <head> 或 <body> 末尾
<script src="https://cdn.legallink.app/embed.js"
data-lawfirm-id="YOUR_LAWFIRM_ID"
data-language="zh"
data-theme="#2258BF"
data-position="bottom-right"
data-auto-open="false"
defer>
</script>
defer 是必需的——避免阻塞首屏渲染。
放任意页面都可;建议放在 layout/template 里全站生效。
YOUR_LAWFIRM_ID 由我们在配置完成后提供。
第 2 步
data-* 参数说明
| 属性 | 必需 | 类型 / 示例 | 说明 |
|---|---|---|---|
data-lawfirm-id |
必需 | hex 字符串,由 LegalLink 提供 | 唯一识别您律所的 ID,决定 widget 拉哪份配置、AI 走哪个 agent。 |
data-language |
可选 | en | zh |
强制使用某种语言。不传则按访客浏览器语言自动判断。 |
data-theme |
可选 | #2258BF 等 HEX |
替换 widget 主色(按钮、激活态、阴影)。默认 LegalLink 蓝。 |
data-position |
可选 | bottom-right(默认)bottom-left |
浮动按钮 + 面板贴左 / 贴右;移动端会全屏覆盖,与此参数无关。 |
data-auto-open |
可选 | true | false(默认) |
页面加载后是否自动展开会话面板。仅建议在着陆页 / 专属预约页打开。 |
第 3 步
需要您提供给我们的律所配置
这些信息会被写入 lawfirms 配置表,决定 widget 上线后的行为。
| 字段 | 必需 | 示例 | 用途 |
|---|---|---|---|
| 律所名称 | 必需 | Acme Law LLP | 显示在 widget 头部 / 邮件抬头。 |
| 联系人姓名 + 邮箱 | 必需 | Jane <jane@acme.example> | 收预约通知 + 我们对接配置的联系窗口。 |
| 允许嵌入的域名(allowedOrigins) | 必需 | https://yourfirm.com, |
逗号分隔。只有这些域名嵌入 widget 才会被 API 接受,防止他人盗用您的 lawfirm-id。 |
| 默认语言 | 可选 | en | zh |
没传 data-language 也没法识别浏览器语言时的兜底。 |
| 主色 / theme | 可选 | HEX 色值 | 如要使用 LegalLink 默认蓝,可不提供。 |
| 业务领域 | 建议 | 交通、移民、家事 … | 影响 AI 的范围判断:超出领域的问题会被礼貌劝阻,避免误导。 |
| 时区 | 建议 | Australia/Melbourne |
预约时段卡片上显示。访客本地时区会做相应换算。 |
| 律师 / Assistant 名称 | 可选 | John Doe / 助理 | 展示在头部和预约卡片。不提供则显示通用 "LegalLink"。 |
您不需要手动整理这些字段,合作意向表单已经把上述所有项做成结构化输入。
第 4 步
接入 checklist
-
1
提交合作意向表(您在这里)
3 分钟填完上述律所配置。
-
2
LegalLink 创建您的 lawfirm 配置
2 个工作日内,我们把 lawfirm-id 发到您留的邮箱。
-
3
技术团队粘贴 embed.js
通常在网站 layout / template 中粘一行即可。
-
4
联合测试 1 轮
我们会发 3 条预约测试请求,确认邮件能落到您指定的信箱。
-
5
正式上线
第 30 天我们会发一份使用报告(咨询量、转化率、热点问题)。
附录 A
故障排查
浮动按钮没出现 / 控制台报 missing data-lawfirm-id
检查 data-lawfirm-id 是否拼写正确;ID 必须是我们邮件中提供的那串 hex(没有空格或引号嵌套)。
点开会话面板,但发消息没回应
最常见原因:当前页面域名不在 allowedOrigins 白名单里。检查我们在邮件中确认的 origin 列表是否覆盖了实际部署域名(含 www / 非 www)。
主色没生效
data-theme 只接受 HEX 字符串(含 #)。不要传 rgb() / hsl() / 变量名。
移动端切换页面时按钮闪一下
embed.js 是异步加载(defer),首屏渲染时按钮还未注入是预期行为。如果在意,可以在 layout 中把 script 放到 head 末尾以缩短延迟。
附录 B
安全与隐私
- 同源隔离:widget 在 iframe 中渲染,不会访问您站点的 Cookie / localStorage。
- CSP 友好:仅需在
script-src中允许https://cdn.legallink.app,在frame-src中允许https://widget.legallink.app。 - 访客数据保护:访客提交的姓名 / 邮箱只用于本次预约通知,不出售、不用于训练。
- CORS 强制:allowedOrigins 是硬白名单。其他人拿到您的 lawfirm-id 也无法在自己域名调起服务。
下一步