小组件选项卡
小组件选项卡
将 ElevenLabs 智能体小组件嵌入 Microsoft Teams 选项卡,支持点击通话。
概述
托管一个加载智能体小组件的小型 HTML 页面,并将其作为 Teams 选项卡显示。用户可在 Teams 客户端中打开选项卡并与智能体交谈,无需电话号码或电话服务。这是最轻量的方式,适合内部自助助手和演示。

工作原理
该小组件是一个 Web 组件。Teams 会在 webview(iframe)中渲染选项卡的 contentUrl,因此小组件的运行方式与在网站上完全相同,包括麦克风采集,前提是该页面允许嵌入 Teams 并已获得媒体权限。
Teams 不会执行粘贴到聊天、消息或 Loop 页面中的原始 <script>。小组件
脚本必须位于你托管的页面上,然后由 Teams 将其嵌入为选项卡。
要求
- 一个公开的 ElevenLabs 智能体,且已禁用身份验证(智能体设置的“高级”选项卡)。小组件需要此配置。
- 用于托管单个静态 HTML 文件的 HTTPS 主机(Vercel、Netlify、Cloudflare Pages、Azure Static Web Apps 等)。
- 如果使用自定义选项卡方案,需要拥有在租户中上传自定义 Teams 应用的权限(Teams 管理中心 → 管理应用 → 上传自定义应用)。
第 1 步:创建小组件页面
创建包含小组件嵌入代码和智能体 ID 的 agent-widget.html:
将其部署到 HTTPS 主机,并先确认它能正常加载,且麦克风可在普通浏览器中使用。
在配置 Teams 前,先在浏览器中单独测试该页面。如果麦克风在浏览器中无法使用, 在 Teams webview 中同样无法使用。
第 2 步:添加到 Teams
有两种选择,语音可靠性依次提高。
选项 A:网站选项卡(最快,但可能仅以链接方式打开)
在聊天或频道中,选择 + 添加选项卡 → 网站,粘贴 HTTPS URL 并保存。
内置的 网站选项卡有时会将页面作为外部链接打开,而不是嵌入页面。 即使已嵌入,Teams 桌面版 webview 也可能阻止麦克风访问。如果语音 不可用,请使用选项 B。
选项 B:自定义选项卡应用(推荐用于语音)
一个小型自定义 Teams 应用会将页面声明为静态选项卡,并且请求媒体权限,这样才能让麦克风在 Teams 内稳定运行。
第 3 步:允许 Teams 嵌入页面
主机必须允许 Teams 通过 iframe 嵌入页面。如果可以控制响应标头,请设置:
如果 Teams 始终在浏览器中打开页面而不是嵌入,说明页面被阻止通过 iframe 嵌入。请在主机上修复 CSP / X-Frame-Options。
故障排除
选项卡在浏览器中打开页面,而不是嵌入页面
页面被阻止通过 iframe 嵌入。移除所有 X-Frame-Options: DENY/SAMEORIGIN,并设置上文所示的
frame-ancestors CSP 以允许 Teams 域名。自定义选项卡应用(选项 B)
也比内置网站选项卡更可靠。
小组件已加载,但麦克风无法使用
这是 Teams webview 的权限层问题。请使用包含
"devicePermissions": ["media"] 的自定义选项卡应用,并在 Teams 中授予应用麦克风权限(选项卡下拉菜单
→ 应用权限)。Teams 网页版和桌面版的行为不同,请同时测试。作为
备用方案,可提供“在浏览器中打开”链接。
小组件始终不显示
请确认智能体是公开的,且已禁用身份验证(智能体高级设置),并确认
unpkg.com 和 *.elevenlabs.io 已添加至清单的 validDomains。
