Bibliothèque de client Azure Communications Rooms Service pour Java - version 1.0.5
Azure Communication Rooms est utilisé pour fonctionner sur les salles.
| Code sourcePackage (Maven) | Documentation de référence sur les | APIDocumentation produit
Prise en main
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Java Development Kit (JDK) version 8 ou ultérieure.
- Apache Maven.
- Une ressource Communication Services déployée. Vous pouvez utiliser le portail Azure ou le Azure PowerShell pour le configurer.
Inclure le package
Inclure une dépendance directe
Si vous souhaitez dépendre d’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-rooms</artifactId>
<version>1.0.5</version>
</dependency>
Authentifier le client
Authentification par jeton Azure Active Directory
Un DefaultAzureCredential
objet doit être passé à via RoomsClientBuilder
la fonction credential(). Endpoint et httpClient doivent également être définis via les fonctions endpoint() et httpClient() respectivement.
AZURE_CLIENT_SECRET
les AZURE_CLIENT_ID
variables d’environnement et AZURE_TENANT_ID
sont nécessaires pour créer un objet DefaultAzureCredential.
Vous pouvez également fournir l’intégralité du chaîne de connexion à l’aide de la fonction connectionString() au lieu de fournir le point de terminaison et la clé d’accès.
// Find your connection string from your resource in the Azure Portal
String connectionString = "https://<resource-name>.communication.azure.com/;<access-key>";
RoomsClient roomsClient = new RoomsClientBuilder().connectionString(connectionString).buildClient();
Concepts clés
Salles
- Créer une salle
- Mettre à jour la salle
- Obtenir de l’espace
- Supprimer le salon
- Répertorier toutes les salles
Participants
- Ajouter ou mettre à jour des participants
- Supprimer des participants
- Répertorier tous les participants
Exemples
Créer une salle
Utilisez la createRoom
fonction pour créer une salle.
OffsetDateTime validFrom = OffsetDateTime.now();
OffsetDateTime validUntil = validFrom.plusDays(30);
List<RoomParticipant> participants = new ArrayList<>();
// Add two participants
participant1 = new RoomParticipant(new CommunicationUserIdentifier("<ACS User MRI identity 1>")).setRole(ParticipantRole.ATTENDEE);
participant2 = new RoomParticipant(new CommunicationUserIdentifier("<ACS User MRI identity 2>")).setRole(ParticipantRole.CONSUMER);
participants.add(participant1);
participants.add(participant2);
// Create Room options
CreateRoomOptions roomOptions = new CreateRoomOptions()
.setValidFrom(validFrom)
.setValidUntil(validUntil)
.setParticipants(participants);
CommunicationRoom roomResult = roomsClient.createRoom(roomOptions);
Mettre à jour une salle existante
Utilisez la updateRoom
fonction pour mettre à jour une salle existante.
OffsetDateTime validFrom = OffsetDateTime.now();
OffsetDateTime validUntil = validFrom.plusDays(30);
// Update Room options
UpdateRoomOptions updateRoomOptions = new UpdateRoomOptions()
.setValidFrom(validFrom)
.setValidUntil(validUntil);
try {
CommunicationRoom roomResult = roomsClient.updateRoom("<Room Id>", updateRoomOptions);
System.out.println("Room Id: " + roomResult.getRoomId());
} catch (RuntimeException ex) {
System.out.println(ex);
}
Obtenir une salle existante
Utilisez la getRoom
fonction pour obtenir une salle existante.
try {
CommunicationRoom roomResult = roomsClient.getRoom("<Room Id>");
System.out.println("Room Id: " + roomResult.getRoomId());
} catch (RuntimeException ex) {
System.out.println(ex);
}
Supprimer une salle existante
Utilisez la deleteRoom
fonction pour supprimer une salle créée.
try {
roomsClient.deleteRoom("<Room Id>");
} catch (RuntimeException ex) {
System.out.println(ex);
}
Répertorier les salles
Utilisez la list rooms
fonction pour répertorier toutes les salles actives.
try {
PagedIterable<CommunicationRoom> rooms = roomsClient.listRooms();
for (CommunicationRoom room : rooms) {
System.out.println("Room ID: " + room.getRoomId());
}
} catch (Exception ex) {
System.out.println(ex);
}
Ajouter ou mettre à jour des participants dans une salle existante
Utilisez la addOrUpdateParticipants
fonction pour ajouter ou mettre à jour des participants dans une salle existante.
List<RoomParticipant> participantsToaddOrUpdate = new ArrayList<>();
// New participant to add
RoomParticipant participantToAdd = new RoomParticipant(new CommunicationUserIdentifier("<ACS User MRI identity 3>")).setRole(ParticipantRole.ATTENDEE);
// Existing participant to update, assume participant2 is part of the room as a
// consumer
participant2 = new RoomParticipant(new CommunicationUserIdentifier("<ACS User MRI identity 2>")).setRole(ParticipantRole.ATTENDEE);
participantsToaddOrUpdate.add(participantToAdd); // Adding new participant to room
participantsToaddOrUpdate.add(participant2); // Update participant from Consumer -> Attendee
try {
AddOrUpdateParticipantsResult addOrUpdateResult = roomsClient.addOrUpdateParticipants("<Room Id>", participantsToaddOrUpdate);
} catch (RuntimeException ex) {
System.out.println(ex);
}
Supprimer des participants d’une salle existante
Utilisez la removeParticipants
fonction pour supprimer des participants d’une salle existante.
List<CommunicationIdentifier> participantsToRemove = new ArrayList<>();
participantsToRemove.add(participant1.getCommunicationIdentifier());
participantsToRemove.add(participant2.getCommunicationIdentifier());
try {
RemoveParticipantsResult removeResult = roomsClient.removeParticipants("<Room Id>", participantsToRemove);
} catch (RuntimeException ex) {
System.out.println(ex);
}
Répertorier tous les participants d’une salle existante
Utilisez la listParticipants
fonction pour répertorier tous les participants d’une salle existante.
try {
PagedIterable<RoomParticipant> allParticipants = roomsClient.listParticipants("<Room Id>");
for (RoomParticipant participant : allParticipants) {
System.out.println(participant.getCommunicationIdentifier().getRawId() + " (" + participant.getRole() + ")");
}
} catch (RuntimeException ex) {
System.out.println(ex);
}
Dépannage
- Si la création d’un client échoue, vérifiez si vous disposez de l’authentification appropriée.
- En cas d’échecs de création de salle, l’erreur de communication doit dans la plupart des cas donner une brève description du problème.
Étapes suivantes
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.