Bibliothèque cliente commune Azure Communication Service pour Java - version 1.2.13

Azure Communication Common contient des structures de données couramment utilisées pour communiquer avec Azure Communication Services. Il est destiné à fournir des préoccupations transversales, par exemple l’authentification.

Prise en main

Prérequis

Inclure le fichier de nomenclature

Incluez le kit azure-sdk-bom à votre projet pour qu’il soit dépendant de la version disponibilité générale (GA) de la bibliothèque. Dans l’extrait de code suivant, remplacez l’espace réservé {bom_version_to_target} par le numéro de version. Pour en savoir plus sur la nomenclature, consultez LE FICHIER README DE NOMENCLATURE DU KIT DE DÉVELOPPEMENT LOGICIEL AZURE.

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-sdk-bom</artifactId>
            <version>{bom_version_to_target}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Incluez ensuite la dépendance directe dans la section des dépendances sans la balise de version.

<dependencies>
  <dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-common</artifactId>
  </dependency>
</dependencies>

Inclure une dépendance directe

Si vous souhaitez prendre la dépendance sur une version particulière de la bibliothèque qui n’est pas présente dans la nomenclature, ajoutez la dépendance directe à votre projet comme suit.

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-common</artifactId>
    <version>1.2.13</version>
</dependency>

Concepts clés

Pour utiliser Azure Communication Services, une clé d’accès aux ressources est utilisée pour l’authentification.

Azure Communication Service prend en charge l’authentification HMAC avec la clé d’accès aux ressources. Pour appliquer l’authentification HMAC, construisez CommunicationClientCredential avec la clé d’accès et instanciez un CommunicationIdentityClient pour gérer les utilisateurs et les jetons.

CommunicationTokenCredential

L’objet CommunicationTokenCredential est utilisé pour authentifier un utilisateur auprès de Communication Services, comme Chat ou Appel. Il fournit éventuellement un mécanisme d’actualisation automatique pour garantir un état d’authentification stable en continu pendant les communications.

Selon votre scénario, vous pouvez initialiser le CommunicationTokenCredential avec :

  • un jeton statique (adapté aux clients de courte durée utilisés pour envoyer des messages de conversation ponctuels, par exemple) ou
  • fonction de rappel qui garantit un état d’authentification continue (idéal, par exemple, pour les sessions d’appel longues).

Les jetons fournis au par le biais du constructeur ou du rappel de l’actualisation de jeton peuvent être obtenus à l’aide CommunicationTokenCredential de la bibliothèque Azure Communication Identity.

Exemples

Créer des informations d’identification avec un jeton statique

Pour les clients de courte durée, l’actualisation du jeton à l’expiration n’est pas nécessaire et CommunicationTokenCredential peut être instanciée avec un jeton statique.

String token = System.getenv("COMMUNICATION_SERVICES_USER_TOKEN");
CommunicationTokenCredential tokenCredential = new CommunicationTokenCredential(token);

Créer des informations d’identification avec une actualisation proactive avec un rappel

Vous pouvez également créer un CommunicationTokenCredential avec un rappel pour renouveler les jetons s’il a expiré. Ici, nous partons du principe que nous avons une fonction fetchTokenFromMyServerForUser qui effectue une demande réseau pour récupérer une chaîne de jeton pour un utilisateur. Il est nécessaire que la fetchTokenFromMyServerForUser fonction retourne un jeton valide (avec une date d’expiration définie à l’avenir) à tout moment.

Si vous le souhaitez, vous pouvez activer l’actualisation proactive des jetons où un nouveau jeton est acquis dès que le jeton précédent approche de l’expiration. À l’aide de cette méthode, vos demandes sont moins susceptibles d’être bloquées pour acquérir un nouveau jeton :

String token = System.getenv("COMMUNICATION_SERVICES_USER_TOKEN");
CommunicationTokenRefreshOptions tokenRefreshOptions = new CommunicationTokenRefreshOptions(fetchTokenFromMyServerForUser)
    .setRefreshProactively(true)
    .setInitialToken(token);
CommunicationTokenCredential tokenCredential = new CommunicationTokenCredential(tokenRefreshOptions);     

Dépannage

En cours.

Étapes suivantes

Consultez d’autres bibliothèques clientes pour le service de communication Azure

Contribution

Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) spécifiant que vous avez le droit de nous accorder les droits d’utiliser votre contribution, et que vous nous les accordez.

Quand vous envoyez une demande de tirage (pull request), un bot CLA détermine automatiquement si vous devez fournir un contrat CLA et agrémenter la demande de tirage de façon appropriée (par exemple, avec une étiquette ou un commentaire). Suivez simplement les instructions fournies par le bot. Vous ne devez effectuer cette opération qu’une seule fois sur tous les dépôts utilisant notre contrat CLA.

Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.