全部產品
Search
文件中心

ApsaraVideo Live:服務端整合

更新時間:Nov 29, 2025

直播互動訊息是用於加強直播間訊息溝通、提升互動體驗的服務。提供了豐富、易整合的SDK,可在使用者開發的直播應用中輕鬆整合評論、彈幕、點贊等能力。本文介紹互動Message Service端整合步驟。

前提條件

  • 您已經建立好ApsaraVideo for Live(包含互動訊息)相關API許可權調用帳號,並建立RAM使用者。詳細說明,請參考建立RAM使用者並授權

  • 您已經建立了互動訊息應用,並記錄App相關資訊。如未建立,請前往ApsaraVideo for Live控制台建立。

部署AppServer

  1. 建立好互動訊息應用後,您會得到App對應的以下資訊:

    1. 應用AppID

    2. 應用鑒權AppKey

    3. 應用簽名AppSign

    4. 開通地區(也叫資料中心),是您選擇的App開通資料中心

      您需要將以上資訊,記錄到您的後端儲存服務中。

  2. 實現您的AppServer。

    AppServer主要功能之一是提供用戶端登入阿里雲互動Message Service的憑證。image.png

    Token採用以下演算法產生,其中role說明請參考下文身份許可權系統說明:

    token = sha256(appId + appKey  + userId + nonce + timestamp + role)

    欄位

    說明

    限制

    appId

    使用者的AppID

    與開通時控制台返回一致

    appKey

    開通時返回的AppKey

    與開通時控制台返回一致

    userId

    要登入的使用者的ID

    僅限A-Z,a-z,0-9及"_",最長64位元組

    nonce

    格式:"AK-隨機串", 最長64位元組

    僅限A-Z,a-z,0-9及"_",可為空白

    role

    角色,為admin時,表示該使用者可以調用“管控類”介面。

    可為空白,如果要給目前使用者admin許可權,固定傳“admin”,否則表示該使用者不允許調用管控類介面。參考身份許可權系統。

    timestamp

    到期時間,到期時間 = 目前時間+到期時間長度,單位秒

    從1970到到期時間的秒數

    產生完Token,需要將Token連同appId,userId,nonce,role,timestamp及AppSign資訊發送給用戶端。請求Token返回樣本如下:

    {
        "auth": {
            "nonce": "產生token所用的nonce",
            "timestamp": 131231234, //<傳產生token所傳遞的timestamp值,數實值型別>
            "role": "產生token所傳遞的role",
            "user_id": "產生token所用的userid"
        },
        "app_id": "{您的應用AppID}", 
        "app_sign": "{您的應用AppSign}",
        "app_token": "{產生的token}"
    }

身份許可權系統說明

登入授予角色

授予方式:登入時傳入role值

角色名稱

role值

說明

普通使用者

非admin

可以調用加入群組,發送訊息等常規操作

管理員身份

admin

普通使用者操作,管控類操作,如:建立群組

群組身份角色

角色名稱

身份擷取方式

說明

群組建立者

群組建立者被自動授予

可以調用群組管控介面,如禁言,刪除群組,發送訊息不受禁言影響

群組管理員

建立群組時指定,或調用修改群組資訊指定

可以調用群組管控介面,如禁言,刪除群組,發送訊息不受禁言影響

其他使用者

登入後調用加入群組進群。用戶端登出或異常退出後,自動結束群組

加入、離開群組,發送訊息等。發送訊息受群組禁言影響

互動Message Service端SDK整合

您可以在您的商務服務器或AppServer中整合服務端介面。服務端介面地址請參考互動訊息(新)。單擊協助文檔中的調試按鈕,可以進入SDK調用頁面。您可以通過此頁面查看SDK整合資訊。

說明
  • ApsaraVideo for Live(包含互動訊息)SDK提供V1.0、V2.0兩個版本的SDK,推薦使用V2.0版本。

  • 地區填寫您建立App的資料中心。當前開通的資料中心為上海(cn-shanghai)、新加坡(ap-southeast-1)。

    • 您可以根據您的應用主要服務地區,選擇已開通的資料中心。不同資料中心之間資料相互隔離。

    • 所有的服務端介面在調用時,傳遞的資料中心應該與您開通時的資料中心保持一致,否則會造成無效調用。

 // Configure Credentials authentication information, including ak, secret, token
        StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()
                // Please ensure that the environment variables ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET are set.
                .accessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                .accessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
                //.securityToken(System.getenv("ALIBABA_CLOUD_SECURITY_TOKEN")) // use STS token
                .build());

        // Configure the Client
        AsyncClient client = AsyncClient.builder()
                .region("cn-qingdao") // Region ID
                //.httpClient(httpClient) // Use the configured HttpClient, otherwise use the default HttpClient (Apache HttpClient)
                .credentialsProvider(provider)
                //.serviceConfiguration(Configuration.create()) // Service-level configuration
                // Client-level configuration rewrite, can set Endpoint, Http request parameters, etc.
                .overrideConfiguration(
                        ClientOverrideConfiguration.create()
                                  // Endpoint 請參考 https://api.aliyun.com/product/live
                                .setEndpointOverride("live.aliyuncs.com")
                        //.setConnectTimeout(Duration.ofSeconds(30))
                )
                .build();

服務端介面調用許可權說明

通過整合服務端SDK,您可以在您的商務服務器中調用相關的介面。例如:向群組發送訊息。詳細介面說明,請參考互動訊息(新)

服務端調用和用戶端調用具有以下區別:

  • 服務端使用RAM使用者鑒權。

  • 服務端調用具有最高許可權,相關介面調用內部執行具有admin,creator許可權。

  • 服務端發送訊息不受禁言影響,不進行安全性稽核。

回調

您可以配置回調,監聽應用的使用者事件,包括:登入、登出、加入群組、離開群組事件。回調說明文檔請參考建立互動訊息應用

Alibaba Content Security Service審核

訊息層級的審核設定

在App開啟安全性稽核的前提下,您可以在訊息層級設定的審核操作包含以下內容。

  • 發送的訊息是否要進行審核(例如:禮物訊息等自訂的非聊天內容可以不進行審核)。

  • 將發送的訊息與待審核的內容分開(例如:待發送的內容文本為hello,但您自訂的訊息包含帳戶圖片等其他裝飾資訊,您可以選擇將發送的訊息與審核內容分開)。