本文介绍如何通过 iframe 将 AI 直播控制台的功能页面嵌入自有页面。在自有页面中提供 AI 直播间管理、模型训练、商品库、素材库、知识库等能力后,可以降低控制台集成和页面开发成本。
https 域名。目前支持通过 iframe 嵌入以下 AI 直播功能页面。嵌入页面的最小宽度为 1000 px,最小高度为 500 px。
| 功能页面 | type 取值 | 页面截图 |
|---|---|---|
AI 直播控制 |
|
|
| AI 直播间列表 | AILiveRoom | ![]() |
| 模型训练 > 形象 | AILiveAvatarTraining | ![]() |
| 模型训练 > 音色 | AILiveVoiceTraining | ![]() |
| 商品库 | AILiveProducts | ![]() |
| 素材库 | AILiveMaterials | ![]() |
| 知识库 | AILiveKnowledgeBase | ![]() |
| 服务中心 | AILiveServiceCenter | ![]() |
注意
AI 直播的服务中心页面仅对火山引擎主账号开放,子账号无法访问该页面。
以下为 iframe 嵌入链接的详细说明。
https://vlive.byteoc.com/livesaas/embeded/178179896233****?AppId=AILive&type=AILiveStudio&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN
| 链接/参数 | 位置 | 说明 |
|---|---|---|
https://vlive.byteoc.com/livesaas/embeded | URL | 嵌入链接的公共路由。 |
178179896233**** | URL | 直播间 ID,仅在嵌入 AI 直播控制页面时需要配置。可通过调用 ListActivityAPI 接口获取直播间 ID。 |
AppId | Query | 用于嵌入 AI 直播页面的唯一标识符,固定取值为 AILive。 |
type | Query | 指定要嵌入的功能页面。可选值详见功能列表。 |
AccessKeyId | Query | 临时凭证 AK。通过调用 GetLoginLivesaasSts 接口获取,并按照 RFC3986 规范对取值进行 URL 编码。 |
SecretAccessKey | Query | 临时凭证 SK。通过调用 GetLoginLivesaasSts 接口获取,并按照 RFC3986 规范对取值进行 URL 编码。 |
SessionToken | Query | 使用临时凭证时需要传递的 Token。通过调用 GetLoginLivesaasSts 接口获取,并按照 RFC3986 规范对取值进行 URL 编码。 |
LoginLivesaasToken | Query | 企业直播 Token。通过调用 GetLoginLivesaasSts 接口获取。由于接口已对该取值进行 URL 编码,因此无需再次编码。 |
| 功能页面 | 示例链接 | 说明 |
|---|---|---|
| AI 直播控制 | https://vlive.byteoc.com/livesaas/embeded/178179896233****?AppId=AILive&type=AILiveStudio&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 需在公共路由后拼接直播间 ID。 |
| AI 直播间列表 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveRoom&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 无需拼接直播间 ID。 |
| 模型训练 > 形象 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveAvatarTraining&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 无需拼接直播间 ID。 |
| 模型训练 > 语音 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveVoiceTraining&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 无需拼接直播间 ID。 |
| 商品库 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveProducts&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 无需拼接直播间 ID。 |
| 素材库 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveMaterials&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 无需拼接直播间 ID。 |
| 知识库 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveKnowledgeBase&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 无需拼接直播间 ID。 |
| 服务中心 | https://vlive.byteoc.com/livesaas/embeded/?AppId=AILive&type=AILiveServiceCenter&AccessKeyId=ACCESS_KEY_ID&SecretAccessKey=SECRET_ACCESS_KEY&SessionToken=SESSION_TOKEN&LoginLivesaasToken=LIVESAAS_TOKEN | 仅火山引擎主账号可访问。 |
该示例代码适用于 JavaScript 语言。如果使用其他语言生成嵌入链接,请根据对应语言的规范进行改写。
<html> <header> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> </header> <body style="margin: 0; background-color: rgba(0,0,0,0.1);"> <div id="root" style="height: 100%; width: 100%; display: flex;"></div> <script> async function initIframe() { // 调用 GetLoginLivesaasSts 接口获取临时凭证和企业直播 Token。 var result = await GetLoginLivesaasSts(); var activities = await listActivityAPI(); var activityId = activities[0].ID; var params = { AccessKeyId: result.StsMsg.AccessKeyId, SecretAccessKey: result.StsMsg.SecretAccessKey, SessionToken: result.StsMsg.SessionToken, // 要嵌入的页面。可替换为 AILiveRoom、AILiveAvatarTraining、AILiveVoiceTraining、 // AILiveProducts、AILiveMaterials、AILiveKnowledgeBase、AILiveServiceCenter 等。 type: "AILiveStudio", AppId: "AILive", }; // 注意:/${activityId} 仅适用于 AI 直播控制页面。嵌入其他页面时,请使用: // https://vlive.byteoc.com/livesaas/embeded/?${...} var iframeUrl = `https://vlive.byteoc.com/livesaas/embeded/${activityId}?${new URLSearchParams(params).toString()}&LoginLivesaasToken=${result.LoginLivesaasToken}`; createIframe(iframeUrl); } function createIframe(url) { var dom = document.createElement("iframe"); dom.setAttribute("width", "1000px"); dom.setAttribute("height", "800px"); dom.setAttribute("frameborder", 0); dom.setAttribute("src", url); dom.setAttribute("id", "embededIframe"); document.getElementById("root").appendChild(dom); } </script> </body> </html>