Partager via


Démarrage rapide : configurer le routage vocal par programmation

Configurez des règles d’acheminement vocal sortantes pour le routage direct d’Azure Communication Services.

Prérequis

Notes

Vous trouverez d’autres exemples d’utilisation pour SipRoutingClient sur GitHub.

Ajouter un contrôleur SBC

  1. Dans le volet gauche, sous Appels vocaux - RTC, sélectionnez Routage direct. Sous l’onglet Contrôleur SBC, sélectionnez Configurer.

  2. Entrez un nom de domaine complet et un port de signalisation pour le contrôleur SBC. Les exigences applicables au nom de domaine complet SBC sont les suivantes :

    • Vous devez vérifier la partie domaine du nom de domaine complet avant de pouvoir l’ajouter à votre configuration de routage direct, comme indiqué précédemment dans les conditions préalables.
    • Le certificat SBC doit correspondre au nom. Les certificats utilisant des caractères génériques sont pris en charge.
    • Vous ne pouvez pas utiliser les domaines *.onmicrosoft.com et *.azure.com pour le nom de domaine complet.

    Si vous souhaitez obtenir la liste complète des exigences, veuillez consulter la rubrique Exigences de l’infrastructure de routage direct Azure.

    Screenshot of adding a session border controller on the panel for configuring direct routing.

  3. Cliquez sur Suivant. Si tout est configuré correctement, vous devez voir l’état de SBC comme Actif dans le portail Azure.

    Screenshot of SBC connection properties.

Important

Avant de passer ou recevoir des appels, assurez-vous que l’état SBC est en ligne

Créer des règles d’acheminement vocal

Screenshot of outgoing voice routing configuration.

Donnez un nom à votre itinéraire vocal, spécifiez le modèle de numéro avec des expressions régulières, puis sélectionnez le contrôleur SBC de ce modèle. Voici quelques exemples simples d’expressions régulières :

  • ^\+\d+$ : correspond à un numéro de téléphone comportant un ou plusieurs chiffres commençant par un signe plus.
  • ^\+1(\d{10})$ : correspond à un numéro de téléphone avec 10 chiffres après +1.
  • ^\+1(425|206)(\d{7})$ : correspond à un numéro de téléphone qui commence par +1425 ou +1206, suivi de sept chiffres.
  • ^\+0?1234$ : correspond aux deux numéros de téléphone +01234 et +1234.

Pour plus d’informations sur les expressions régulières, consultez Vue d’ensemble des expressions régulières de .NET.

Vous pouvez sélectionner plusieurs contrôleurs SBC pour un même modèle. Dans ce cas, l’algorithme de routage les choisit dans un ordre aléatoire. Vous pouvez également spécifier plusieurs fois le modèle de numéro exact. La ligne la plus haute a une priorité plus élevée. Si tous les contrôleurs SBC associés à cette ligne ne sont pas disponibles, la ligne suivante est sélectionnée. De cette façon, vous créez des scénarios de routage complexes.

Supprimer une configuration de routage direct

Pour supprimer une route vocale :

  1. Dans le volet gauche, sous Appels vocaux - RTC, accédez à Routage direct.
  2. Sous l’onglet Routes vocales, cochez les cases correspondant à l’itinéraire (ou aux itinéraires) que vous souhaitez supprimer.
  3. Sélectionnez Supprimer.

Pour supprimer un contrôleur SBC :

  1. Dans le volet gauche, sous Appels vocaux - RTC, accédez à Routage direct.
  2. Sous l’onglet Contrôleurs SBC, sélectionnez Configurer.
  3. Effacez les champs du nom de domaine complet et du port relatifs au contrôleur SBC que vous souhaitez supprimer, puis sélectionnez Suivant.
  4. Sous l’onglet Routes vocales, passez en revue la configuration du routage vocal. Apportez des modifications le cas échéant, puis sélectionnez Enregistrer.

Quand vous supprimez un contrôleur SBC associé à un itinéraire vocal, vous pouvez choisir un autre contrôleur SBC pour l’itinéraire sous l’onglet Routes vocales. L’itinéraire vocal sans contrôleur SBC est supprimé.

Prérequis

Code final

Vous trouverez le code finalisé pour ce guide de démarrage rapide sur GitHub.

Vous trouverez également d’autres exemples d’utilisation de SipRoutingClient sur GitHub.

Créer une application C#

Dans une fenêtre de console (par exemple l’invite de commandes, PowerShell ou Bash), utilisez la commande dotnet new pour créer une application de console :

    dotnet new console -o DirectRoutingQuickstart

Cette commande crée un projet C# « Hello World » simple avec un seul fichier source : Program.cs.

Remplacez votre répertoire par le dossier d’application que vous venez de créer, puis utilisez la commande dotnet build pour compiler votre application :

    cd DirectRoutingQuickstart
    dotnet build

Installer le package

Toujours dans le répertoire de l’application, installez la bibliothèque de client Azure Communication PhoneNumbers pour .NET à l’aide de la commande dotnet add package :

    dotnet add package Azure.Communication.PhoneNumbers --version 1.1.0

Ajoutez une directive using en haut du fichier Program.cs pour inclure les espaces de noms :

using Azure.Communication.PhoneNumbers.SipRouting;

Authentifier le client

Authentifiez les clients de numéro de téléphone à l’aide d’une chaîne de connexion d’une ressource Azure Communication Services :

// Get a connection string to the Azure Communication Services resource.
var connectionString = "<connection_string>";
var client = new SipRoutingClient(connectionString);

Configurer une configuration de routage direct

Dans les conditions préalables, vous avez vérifié la propriété du domaine. Les étapes suivantes consistent à créer des jonctions (ajouter des contrôleurs SBC), puis à créer des itinéraires vocaux.

Créer ou mettre à jour des jonctions

Le routage direct d’Azure Communication Services autorise uniquement la communication avec les SBC inscrits. Pour inscrire un contrôleur SBC, vous avez besoin de son nom de domaine complet et de son port :

// Register your SBCs by providing their fully qualified domain names and port numbers.
var usSbcFqdn = "sbc.us.contoso.com";
var euSbcFqdn = "sbc.eu.contoso.com";
var sbcPort = 5061;

var usTrunk = new SipTrunk(usSbcFqdn, sbcPort);
var euTrunk = new SipTrunk(euSbcFqdn, sbcPort);

await client.SetTrunksAsync(new List<SipTrunk> { usTrunk, euTrunk });

Créer ou mettre à jour des itinéraires

Fournissez des règles d’acheminement pour les appels sortants. Chaque règle se compose de deux parties : un modèle regex qui doit correspondre au numéro de téléphone composé et le nom de domaine complet d’une jonction inscrite où l’appel est routé.

L’ordre des itinéraires détermine leur priorité. Le premier itinéraire qui correspond à l’expression régulière sera choisi pour un appel.

Dans cet exemple, vous allez créer un itinéraire pour les numéros qui commencent par +1 et un deuxième itinéraire pour ceux qui commencent uniquement par + :

var usRoute = new SipTrunkRoute("UsRoute", "^\\+1(\\d{10})$", trunks: new List<string> { usSbcFqdn });
var defaultRoute = new SipTrunkRoute("DefaultRoute", "^\\+\\d+$", trunks: new List<string> { usSbcFqdn, euSbcFqdn });

await client.SetRoutesAsync(new List<SipTrunkRoute> { usRoute, defaultRoute });

Mettre à jour une configuration de routage direct

Vous pouvez mettre à jour les propriétés d’une jonction spécifique en remplaçant l’enregistrement par le même nom de domaine complet. Par exemple, vous pouvez définir une nouvelle valeur de port SBC :

var usTrunk = new SipTrunk("sbc.us.contoso.com", 5063);
await client.SetTrunkAsync(usTrunk);

Utilisez la même méthode pour créer, puis mettre à jour des règles d’acheminement. Lorsque vous mettez à jour des itinéraires, envoyez-les tous en une seule mise à jour. La nouvelle configuration de routage remplace complètement l’ancienne.

Supprimer une configuration de routage direct

Vous ne pouvez pas modifier, ni supprimer un seul itinéraire vocal. Vous devez remplacer l’intégralité de la configuration de routage vocal. Voici un exemple de liste vide qui supprime tous les itinéraires et toutes les jonctions :

//delete all configured voice routes
await client.SetRoutesAsync(new List<SipTrunkRoute>());

//delete all trunks
await client.SetTrunksAsync(new List<SipTrunk>());

Vous pouvez utiliser l’exemple suivant pour supprimer une jonction unique (SBC) si aucun itinéraire vocal ne l’utilise. Si le contrôleur SBC est répertorié dans un itinéraire vocal, supprimez d’abord cet itinéraire.

await client.DeleteTrunkAsync("sbc.us.contoso.com");

Prérequis

Code final

Vous trouverez le code finalisé pour ce guide de démarrage rapide sur GitHub.

Vous trouverez également d’autres exemples d’utilisation de SipRoutingClient sur GitHub.

Création d’une application Java

Ouvrez votre fenêtre de terminal ou de commande. Accédez au répertoire où vous souhaitez créer votre application Java. Ensuite, exécutez la commande pour générer le projet Java depuis le modèle maven-archetype-quickstart :

mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false

La tâche generate a créé un répertoire qui porte le même nom que la valeur artifactId. Sous ce répertoire, le répertoire src/main/java contient le code source du projet ; le répertoire src/test/java contient la source de test ; enfin, le fichier pom.xml est le modèle objet du projet (POM, Project Object Model).

Installer le package

Ouvrez le fichier pom.xml dans votre éditeur de texte. Ajoutez les éléments de dépendance suivants au groupe de dépendances :

<dependencies>
	<dependency>
		<groupId>com.azure</groupId>
		<artifactId>azure-communication-phonenumbers</artifactId>
		<version>1.1.0</version>
	</dependency>
</dependencies>

Configurer le framework d’application

À partir du répertoire de projet :

  1. Accédez au répertoire /src/main/java/com/communication/quickstart.
  2. Ouvrez le fichier App.java dans votre éditeur.
  3. Remplacez l’instruction System.out.println("Hello world!");.
  4. Ajouter des directives import.

Utilisez le code suivant pour commencer :

import com.azure.communication.phonenumbers.siprouting.SipRoutingAsyncClient;
import com.azure.communication.phonenumbers.siprouting.SipRoutingClientBuilder;
import com.azure.communication.phonenumbers.siprouting.models.SipTrunk;
import com.azure.communication.phonenumbers.siprouting.models.SipTrunkRoute;
import static java.util.Arrays.asList;

public class App
{
    public static void main( String[] args ) throws IOException
    {
        System.out.println("Azure Communication Services - Direct Routing Quickstart");
        // Quickstart code goes here
    }
}

Authentifier le client

Avec SipRoutingClientBuilder, vous pouvez utiliser l’authentification Microsoft Entra ID :

// You can find your endpoint and access key from your resource in the Azure portal
String endpoint = "https://<RESOURCE_NAME>.communication.azure.com";

SipRoutingAsyncClient sipRoutingAsyncClient = new SipRoutingClientBuilder()
    .endpoint(endpoint)
    .credential(new DefaultAzureCredentialBuilder().build())
    .buildClient();

Sinon, utilisez le point de terminaison et la clé d’accès de la ressource de communication pour l’authentification :

// You can find your connection string from your resource in the Azure portal
String connectionString = "endpoint=https://<RESOURCE_NAME>.communication.azure.com/;accesskey=<ACCESS_KEY>";

SipRoutingAsyncClient sipRoutingAsyncClient = new SipRoutingClientBuilder()
    .connectionString(connectionString)
    .buildClient();

Configurer une configuration de routage direct

Dans les conditions préalables, vous avez vérifié la propriété du domaine. Les étapes suivantes consistent à créer des jonctions (ajouter des contrôleurs SBC), puis à créer des itinéraires vocaux.

Créer ou mettre à jour des jonctions

Le routage direct d’Azure Communication Services autorise uniquement la communication avec les SBC inscrits. Pour inscrire un contrôleur SBC, vous avez besoin de son nom de domaine complet et de son port :

sipRoutingAsyncClient.setTrunksWithResponse(asList(
	new SipTrunk("sbc.us.contoso.com", 5061),
	new SipTrunk("sbc.eu.contoso.com", 5061)
)).block();

Créer ou mettre à jour des itinéraires

Fournissez des règles d’acheminement pour les appels sortants. Chaque règle se compose de deux parties : un modèle regex qui doit correspondre au numéro de téléphone composé et le nom de domaine complet d’une jonction inscrite où l’appel est routé.

L’ordre des itinéraires détermine leur priorité. Le premier itinéraire qui correspond à l’expression régulière sera choisi pour un appel.

Dans cet exemple, vous allez créer un itinéraire pour les numéros qui commencent par +1 et un deuxième itinéraire pour ceux qui commencent uniquement par + :

sipRoutingAsyncClient.setRoutes(asList(
	new SipTrunkRoute("UsRoute", "^\\+1(\\d{10})$").setTrunks(asList("sbc.us.contoso.com")),
	new SipTrunkRoute("DefaultRoute", "^\\+\\d+$").setTrunks(asList("sbc.us.contoso.com", "sbc.eu.contoso.com"))
)).block();

Mettre à jour une configuration de routage direct

Vous pouvez mettre à jour les propriétés d’une jonction spécifique en remplaçant l’enregistrement par le même nom de domaine complet. Par exemple, vous pouvez définir une nouvelle valeur de port SBC :

sipRoutingClient.setTrunk(new SipTrunk("sbc.us.contoso.com", 5063));

Utilisez la même méthode pour créer, puis mettre à jour des règles d’acheminement. Lorsque vous mettez à jour des itinéraires, envoyez-les tous en une seule mise à jour. La nouvelle configuration de routage remplace complètement l’ancienne.

Supprimer une configuration de routage direct

Vous ne pouvez pas modifier, ni supprimer un seul itinéraire vocal. Vous devez remplacer l’intégralité de la configuration de routage vocal. Voici un exemple de liste vide qui supprime tous les itinéraires et toutes les jonctions.

Ajoutez deux importations :

import java.util.Collections;
import java.util.List;

Utilisez le code suivant pour supprimer une configuration de routage direct :

//delete all configured voice routes
System.out.println("Delete all routes");
List<SipTrunkRoute> routes = Collections.<SipTrunkRoute> emptyList();
sipRoutingAsyncClient.setRoutes(routes).block();

//delete all trunks
System.out.println("Delete all trunks");
List<SipTrunk> trunks = Collections.<SipTrunk> emptyList();
sipRoutingAsyncClient.setTrunksWithResponse(trunks).block();

Vous pouvez utiliser l’exemple suivant pour supprimer une jonction unique (SBC) si aucun itinéraire vocal ne l’utilise. Si le contrôleur SBC est répertorié dans un itinéraire vocal, supprimez d’abord cet itinéraire.

sipRoutingClient.deleteTrunk("sbc.us.contoso.com");

Exécuter le code

Accédez au répertoire contenant le fichier pom.xml, puis compilez le projet à l’aide de la commande mvn suivante :

  mvn clean compile

Ensuite, générez le package :

  mvn package

Exécutez la commande mvn suivante pour exécuter l’application :

  mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false

Prérequis

Code final

Vous trouverez le code finalisé pour ce guide de démarrage rapide sur GitHub.

Vous trouverez également d’autres exemples d’utilisation de SipRoutingClient sur GitHub.

Création d’une application Node.js

Ouvrez votre fenêtre de terminal ou de commande, créez un répertoire pour votre application, puis accédez-y :

    mkdir direct-routing-quickstart && cd direct-routing-quickstart

Exécutez npm init -y pour créer un fichier package.json avec les paramètres par défaut :

   npm init -y

Créez un fichier appelé direct-routing-quickstart.js à la racine du répertoire que vous avez créé. Ajoutez-lui l’extrait de code suivant :

async function main() {
    // quickstart code will go here
}

main();

Installer le package

Utilisez la commande npm install pour installer la bibliothèque de client Azure Communication Services Phone Numbers pour JavaScript :

   npm install @azure/communication-phone-numbers --save

L’option --save ajoute la bibliothèque en tant que dépendance dans votre fichier package.json.

Authentifier le client

Importez SipRoutingClient depuis la bibliothèque de client, puis instanciez cet élément avec votre chaîne de connexion. Le code récupère la chaîne de connexion de la ressource à partir d’une variable d’environnement nommée COMMUNICATION_SERVICES_CONNECTION_STRING. Découvrez comment gérer la chaîne de connexion de la ressource.

Ajoutez le code suivant à direct-routing-quickstart.js :

const { SipRoutingClient } = require('@azure/communication-phone-numbers');

// This code demonstrates how to fetch your connection string
// from an environment variable.
const connectionString = process.env['COMMUNICATION_SERVICES_CONNECTION_STRING'];

// Instantiate the phone numbers client
const sipRoutingClient = new SipRoutingClient(connectionString);

Configurer une configuration de routage direct

Dans les conditions préalables, vous avez vérifié la propriété du domaine. Les étapes suivantes consistent à créer des jonctions (ajouter des contrôleurs SBC), puis à créer des itinéraires vocaux.

Créer ou mettre à jour des jonctions

Le routage direct d’Azure Communication Services autorise uniquement la communication avec les SBC inscrits. Pour inscrire un contrôleur SBC, vous avez besoin de son nom de domaine complet et de son port :

  await client.setTrunks([
    {
      fqdn: 'sbc.us.contoso.com',
      sipSignalingPort: 5061
    },{
      fqdn: 'sbc.eu.contoso.com',
      sipSignalingPort: 5061
    }
  ]);

Créer ou mettre à jour des itinéraires

Fournissez des règles d’acheminement pour les appels sortants. Chaque règle se compose de deux parties : un modèle regex qui doit correspondre au numéro de téléphone composé et le nom de domaine complet d’une jonction inscrite où l’appel est routé.

L’ordre des itinéraires détermine leur priorité. Le premier itinéraire qui correspond à l’expression régulière sera choisi pour un appel.

Dans cet exemple, vous allez créer un itinéraire pour les numéros qui commencent par +1 et un deuxième itinéraire pour ceux qui commencent uniquement par + :

   await client.setRoutes([
    {
      name: "UsRoute",
      description: "route's description",
      numberPattern: "^\+1(\d{10})$",
      trunks: [ 'sbc.us.contoso.com' ]
    },{
      name: "DefaultRoute",
      description: "route's description",
      numberPattern: "^\+\d+$",
      trunks: [ 'sbc.us.contoso.com', 'sbc.eu.contoso.com']
    }
  ]);

Mettre à jour une configuration de routage direct

Vous pouvez mettre à jour les propriétés d’une jonction spécifique en remplaçant l’enregistrement par le même nom de domaine complet. Par exemple, vous pouvez définir une nouvelle valeur de port SBC :

  await client.setTrunk({
    fqdn: 'sbc.us.contoso.com',
    sipSignalingPort: 5063
  });

Utilisez la même méthode pour créer, puis mettre à jour des règles d’acheminement. Lorsque vous mettez à jour des itinéraires, envoyez-les tous en une seule mise à jour. La nouvelle configuration de routage remplace complètement l’ancienne.

Supprimer une configuration de routage direct

Vous ne pouvez pas modifier, ni supprimer un seul itinéraire vocal. Vous devez remplacer l’intégralité de la configuration de routage vocal. Voici un exemple de liste vide qui supprime tous les itinéraires et toutes les jonctions :

//delete all configured voice routes
console.log("Deleting all routes...");
await client.setRoutes([]);

//delete all trunks
console.log("Deleting all trunks...");
await client.setTrunks([]);

Vous pouvez utiliser l’exemple suivant pour supprimer une jonction unique (SBC) si aucun itinéraire vocal ne l’utilise. Si le contrôleur SBC est répertorié dans un itinéraire vocal, supprimez d’abord cet itinéraire.

   await client.deleteTrunk('sbc.us.contoso.com');

Exécuter le code

Utilisez la commande node pour exécuter le code que vous avez ajouté au fichier direct-routing-quickstart.js :

   node direct-routing-quickstart.js

Prérequis

Code final

Vous trouverez le code finalisé pour ce guide de démarrage rapide sur GitHub.

Vous trouverez également d’autres exemples d’utilisation de SipRoutingClient sur GitHub.

Créer une application Python

Ouvrez votre fenêtre de terminal ou de commande. Créez un répertoire pour votre application, puis accédez-y :

mkdir direct-routing-quickstart && cd direct-routing-quickstart

Utilisez un éditeur de texte pour créer un fichier appelé direct_routing_sample.py dans le répertoire racine du projet et ajoutez le code suivant :

import os
from azure.communication.phonenumbers.siprouting import SipRoutingClient, SipTrunk, SipTrunkRoute

try:
   print('Azure Communication Services - Direct Routing Quickstart')
   # Quickstart code goes here
except Exception as ex:
   print('Exception:')
   print(ex)

Ajoutez le code de démarrage rapide restant dans les sections suivantes.

Installer le package

Toujours dans le répertoire de l’application, installez la bibliothèque de client Azure Communication Services Administration pour Python à l’aide de la commande pip install :

pip install azure-communication-phonenumbers==1.1.0

Authentifier le client

Avec SipRoutingClient, vous pouvez utiliser l’authentification Microsoft Entra ID. Pour commencer à utiliser Microsoft Entra ID, le plus simple consister à utiliser l’objet DefaultAzureCredential. Vous pouvez l’installer à l’aide de la commande pip install :

pip install azure-identity

Pour créer un objet DefaultAzureCredential, les variables d’environnement AZURE_CLIENT_ID, AZURE_CLIENT_SECRET et AZURE_TENANT_ID doivent déjà être définies avec les valeurs correspondantes de votre application Microsoft Entra inscrite. Pour obtenir rapidement ces variables d’environnement, veuillez consulter la rubrique S’authentifier à l’aide de Microsoft Entra ID.

Une fois la bibliothèque azure-identity installée, vous pouvez poursuivre l’authentification du client :

import os
from azure.communication.phonenumbers.siprouting import SipRoutingClient
from azure.identity import DefaultAzureCredential

# You can find your endpoint from your resource in the Azure portal
endpoint = 'https://<RESOURCE_NAME>.communication.azure.com'
try:
    print('Azure Communication Services - Direct Routing Quickstart')
    credential = DefaultAzureCredential()
    sip_routing_client = SipRoutingClient(endpoint, credential)
except Exception as ex:
    print('Exception:')
    print(ex)

Vous pouvez également utiliser le point de terminaison et la clé d’accès de la ressource de communication pour l’authentification :

import os
from azure.communication.phonenumbers.siprouting import SipRoutingClient

# You can find your connection string from your resource in the Azure portal
connection_string = 'https://<RESOURCE_NAME>.communication.azure.com/;accesskey=<YOUR_ACCESS_KEY>'
try:
    print('Azure Communication Services - Direct Routing Quickstart')
    sip_routing_client = SipRoutingClient.from_connection_string(connection_string)
except Exception as ex:
    print('Exception:')
    print(ex)

Configurer une configuration de routage direct

Dans les conditions préalables, vous avez vérifié la propriété du domaine. Les étapes suivantes consistent à créer des jonctions (ajouter des contrôleurs SBC), puis à créer des itinéraires vocaux.

Créer ou mettre à jour des jonctions

Inscrivez vos contrôleurs SBC en fournissant leurs noms de domaine complets et leurs numéros de port :

new_trunks = [SipTrunk(fqdn="sbc.us.contoso.com", sip_signaling_port=1234), SipTrunk(fqdn="sbc.eu.contoso.com", sip_signaling_port=1234)]
sip_routing_client.set_trunks(new_trunks)

Créer ou mettre à jour des itinéraires

Fournissez des règles d’acheminement pour les appels sortants. Chaque règle se compose de deux parties : un modèle regex qui doit correspondre au numéro de téléphone composé et le nom de domaine complet d’une jonction inscrite où l’appel est routé.

L’ordre des itinéraires détermine leur priorité. Le premier itinéraire qui correspond à l’expression régulière sera choisi pour un appel.

Dans cet exemple, vous allez créer un itinéraire pour les numéros qui commencent par +1 et un deuxième itinéraire pour ceux qui commencent uniquement par + :

us_route = SipTrunkRoute(name="UsRoute", description="Handle US numbers '+1'", number_pattern="^\\+1(\\d{10})$", trunks=["sbc.us.contoso.com"])
def_route = SipTrunkRoute(name="DefaultRoute", description="Handle all numbers", number_pattern="^\\+\\d+$", trunks=["sbc.us.contoso.com","sbc.eu.contoso.com"])
new_routes = [us_route, def_route]
sip_routing_client.set_routes(new_routes)

Mettre à jour une configuration de routage direct

Vous pouvez mettre à jour les propriétés d’une jonction spécifique en remplaçant l’enregistrement par le même nom de domaine complet. Par exemple, vous pouvez définir une nouvelle valeur de port SBC :

new_trunk = SipTrunk(fqdn="sbc.us.contoso.com", sip_signaling_port=5063)
sip_routing_client.set_trunk(new_trunk)

Utilisez la même méthode pour créer, puis mettre à jour des règles d’acheminement. Lorsque vous mettez à jour des itinéraires, envoyez-les tous en une seule mise à jour. La nouvelle configuration de routage remplace complètement l’ancienne.

Supprimer une configuration de routage direct

Vous ne pouvez pas modifier, ni supprimer un seul itinéraire vocal. Vous devez remplacer l’intégralité de la configuration de routage vocal. Voici un exemple de liste vide qui supprime tous les itinéraires et toutes les jonctions :

#delete all configured voice routes
print('Deleting all routes...')
sip_routing_client.set_routes([])

#delete all trunks
print('Deleting all trunks...')
sip_routing_client.set_trunks([])

Vous pouvez utiliser l’exemple suivant pour supprimer une jonction unique (SBC) si aucun itinéraire vocal ne l’utilise. Si le contrôleur SBC est répertorié dans un itinéraire vocal, supprimez d’abord cet itinéraire.

sip_routing_client.delete_trunk("sbc.us.contoso.com")

Exécuter le code

Depuis une invite de console, accédez au répertoire qui contient le fichier direct_routing_sample.py. Ensuite, exécutez la commande Python suivante pour exécuter l’application :

python direct_routing_sample.py

Nettoyer les ressources

Si vous voulez nettoyer et supprimer un abonnement Communication Services, vous pouvez supprimer la ressource ou le groupe de ressources. La suppression du groupe de ressources efface également les autres ressources qui y sont associées. En savoir plus sur le nettoyage des ressources.

Étapes suivantes

Pour plus d’informations, consultez les articles suivants :