Tous les produits
Search
Centre de documentation

ApsaraVideo Live:Intégration côté serveur

Dernière mise à jour :Aug 19, 2026

La messagerie interactive enrichit la communication dans les salles de diffusion en direct en activant des fonctionnalités telles que les commentaires, les commentaires défilants et les mentions « J'aime ». ApsaraVideo Live fournit des SDK faciles à intégrer pour ajouter ces fonctionnalités à vos applications de streaming en direct.

Prérequis

  • Créez un compte Alibaba Cloud capable d'accéder à l'API ApsaraVideo Live, ainsi qu'un utilisateur Resource Access Management (RAM) auquel vous accordez les autorisations nécessaires. Pour plus d'informations, consultez Créer un utilisateur RAM et lui accorder des autorisations.

  • Créez une application de messagerie interactive et enregistrez les informations la concernant. Si aucune application de messagerie interactive n'est disponible, créez-en une dans la console ApsaraVideo Live.

Déployer un AppServer

  1. Une fois l'application de messagerie interactive créée, récupérez les informations suivantes :

    1. ID de l'application (AppID)

    2. Clé de l'application (AppKey)

    3. Signature de l'application (AppSign)

    4. Région de l'application (correspondant au centre de diffusion où l'application est déployée).

      Enregistrez ces informations dans votre stockage backend.

  2. Implémentez votre AppServer.

    Un AppServer fournit les identifiants permettant aux clients de se connecter à la messagerie interactive Alibaba Cloud.image.png

    Générez un jeton à l'aide de l'algorithme suivant. Pour plus d'informations sur les rôles, consultez la section « Autorisations basées sur l'identité ».

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

    Champ

    Description

    Limite

    appId

    ID de l'application.

    L'ID est renvoyé par la console lors de la création de l'application.

    appKey

    AppKey.

    La clé est renvoyée par la console lors de la création de l'application.

    userId

    ID de l'utilisateur.

    L'ID peut comporter jusqu'à 64 caractères et ne contenir que des lettres, des chiffres et des traits de soulignement (_).

    nonce

    Valeur aléatoire (nonce). Elle est au format AK-String et peut atteindre 64 octets.

    La valeur de ce champ ne peut contenir que des lettres, des chiffres et des traits de soulignement (_). Ce champ peut également être laissé vide.

    role

    Rôle. La valeur admin indique que l'utilisateur peut effectuer des opérations de gestion.

    Ce champ peut être laissé vide. Pour accorder les autorisations d'administrateur à l'utilisateur, définissez la valeur sur admin. Toute autre valeur indique que l'utilisateur ne peut pas effectuer d'opérations de gestion. Pour plus d'informations, consultez la section « Autorisations basées sur l'identité » de cette rubrique.

    timestamp

    Heure d'expiration. Unité : secondes. Heure d'expiration = Heure actuelle + Durée de validité.

    La valeur est un horodatage Unix, correspondant au nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC jusqu'à l'expiration du jeton.

    Après avoir généré le jeton, envoyez-le au client avec les paramètres appId, userId, nonce, role, timestamp et la signature de l'application. Exemple de code :

    {
        "auth": {
            "nonce": "The nonce that is specified when you generate the token.",
            "timestamp": 131231234, //<The timestamp that is specified when you generate the token, which is a numeric value.>
            "role": "The role that is specified when you generate the token.",
            "user_id": "The user ID that is specified when you generate the token."
        },
        "app_id": "{Your application ID.}", 
        "app_sign": "{Your application signature.}",
        "app_token": "{The generated token.}"
    }

Autorisations basées sur l'identité

Rôles de connexion

Le rôle de connexion d'un utilisateur est spécifié lors de la connexion.

Nom du rôle

Valeur

Description

Utilisateur standard

Toute valeur autre que admin

L'utilisateur peut effectuer des opérations standard, telles que rejoindre un groupe et envoyer un message.

Administrateur

admin

L'utilisateur peut effectuer des opérations standard et des opérations de gestion, telles que la création d'un groupe.

Rôles liés aux groupes

Nom du rôle

Méthode d'attribution

Description

Créateur du groupe

Attribué automatiquement à l'utilisateur qui crée le groupe.

L'utilisateur peut effectuer des opérations de gestion, telles que mettre en sourdine un utilisateur ou le groupe, et supprimer le groupe. Si le groupe est mis en sourdine, l'utilisateur conserve la possibilité d'envoyer des messages.

Administrateur du groupe

Attribué par le créateur du groupe lors de sa création, ou via l'appel API de modification des informations du groupe.

L'utilisateur peut effectuer des opérations de gestion, telles que mettre en sourdine un utilisateur ou le groupe, et supprimer le groupe. Si le groupe est mis en sourdine, l'utilisateur conserve la possibilité d'envoyer des messages.

Autres

Attribué automatiquement à tout utilisateur rejoignant le groupe qui n'en est ni le créateur ni un administrateur. L'utilisateur quitte automatiquement le groupe en cas de déconnexion ou d'exception.

L'utilisateur peut rejoindre ou quitter un groupe, et envoyer des messages. Si le groupe est mis en sourdine, l'utilisateur ne peut pas envoyer de messages.

Intégrer la messagerie interactive côté serveur

Intégrez l'API côté serveur dans votre serveur métier ou AppServer. Pour plus d'informations sur les opérations API, consultez Messagerie interactive (nouvelle). Cliquez sur Debug dans la page d'une opération sur OpenAPI Explorer pour afficher les informations d'intégration du SDK.

Remarque
  • ApsaraVideo Live propose des SDK (y compris le SDK de messagerie interactive) dans les versions 1.0 et 2.0. Nous vous recommandons d'utiliser la version 2.0.

  • Dans l'exemple de code suivant, spécifiez la région de l'application que vous créez. Valeurs valides : cn-shanghai et ap-southeast-1 (Singapour).

    • Lors de la création de l'application, sélectionnez la région en fonction de vos besoins métier. Les données sont isolées entre les différentes régions.

    • Lorsque vous appelez une opération API, la région spécifiée doit correspondre à celle de l'application. Sinon, l'appel échouera.

 // 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. Visit https://api.alibabacloud.com/product/live for reference.
                                .setEndpointOverride("live.aliyuncs.com")
                        //.setConnectTimeout(Duration.ofSeconds(30))
                )
                .build();

Autorisations d'appel API côté serveur

Après avoir intégré le SDK serveur ApsaraVideo Live, vous pouvez appeler des opérations API depuis votre serveur métier, par exemple pour envoyer des messages à des groupes. Pour plus d'informations, consultez Messagerie interactive (nouvelle).

Les appels côté serveur et côté client présentent les différences suivantes :

  • Le serveur s'authentifie via des utilisateurs RAM.

  • Un appel côté serveur dispose des privilèges les plus élevés, incluant les autorisations d'administrateur et de créateur.

  • Si un groupe est mis en sourdine, vous pouvez toujours envoyer un message via un appel côté serveur. Les messages envoyés de cette manière ne nécessitent pas de modération de contenu.

Rappels

Configurez des rappels pour écouter les événements de l'application tels que la connexion, la déconnexion, l'adhésion à un groupe et le départ d'un groupe. Pour plus d'informations, consultez CreateLiveMessageApp.

Modération de contenu

Paramètres de modération au niveau des messages

Si vous activez la modération de contenu pour l'application, vous pouvez configurer les paramètres suivants au niveau des messages.

  • Spécifiez si un message envoyé doit être modéré. Par exemple, vous pouvez choisir de ne pas modérer le contenu personnalisé non conversationnel, tel que les messages de cadeaux.

  • Séparez le message envoyé des éléments de contenu que vous souhaitez modérer. Par exemple, si le texte d'un message personnalisé est « hello », mais que le message contient des informations supplémentaires telles que l'avatar de l'utilisateur, vous pouvez séparer le texte du message des informations supplémentaires en attente de modération.