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,
https://www.yourfirm.com
逗号分隔。只有这些域名嵌入 widget 才会被 API 接受,防止他人盗用您的 lawfirm-id。
默认语言 可选 en | zh 没传 data-language 也没法识别浏览器语言时的兜底。
主色 / theme 可选 HEX 色值 如要使用 LegalLink 默认蓝,可不提供。
业务领域 建议 交通、移民、家事 … 影响 AI 的范围判断:超出领域的问题会被礼貌劝阻,避免误导。
时区 建议 Australia/Melbourne 预约时段卡片上显示。访客本地时区会做相应换算。
律师 / Assistant 名称 可选 John Doe / 助理 展示在头部和预约卡片。不提供则显示通用 "LegalLink"。
您不需要手动整理这些字段,合作意向表单已经把上述所有项做成结构化输入。

第 4 步

接入 checklist

  1. 1

    提交合作意向表(您在这里)

    3 分钟填完上述律所配置。

  2. 2

    LegalLink 创建您的 lawfirm 配置

    2 个工作日内,我们把 lawfirm-id 发到您留的邮箱。

  3. 3

    技术团队粘贴 embed.js

    通常在网站 layout / template 中粘一行即可。

  4. 4

    联合测试 1 轮

    我们会发 3 条预约测试请求,确认邮件能落到您指定的信箱。

  5. 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 也无法在自己域名调起服务。

下一步

准备好了?