Delen via


Quickstart: Telefoonnummers ophalen en beheren

Belangrijk

De mogelijkheden voor sms en PSTN zijn afhankelijk van het telefoonnummer dat u gebruikt en het land/de regio waarbinnen u werkt, zoals bepaald door uw Azure-factureringsadres. Ga naar de documentatie over geschiktheid voor abonnementen voor meer informatie.

Belangrijk

Voor grote volumes of in het geval dat uw gewenste telefoonnummer niet beschikbaar is, gaat u naar deze pagina voor meer hulp.

Vereisten

Een telefoonnummer aanvragen

Als u wilt beginnen met het inrichten van nummers, gaat u naar uw Communication Services-resource in de Azure-portal.

Schermopname van de hoofdpagina van een Communicatie Services-resource.

Zoeken naar beschikbare telefoonnummers

Ga naar de blade Telefoonnummers in het resourcemenu.

Schermopname van de telefoonnummerpagina van een Communicatie Services-resource.

Druk op de knop Ophalen om de wizard te starten. U wordt door de wizard op de blade Telefoonnummers door een reeks vragen begeleidt waarmee u het telefoonnummer kunt kiezen dat het beste bij uw scenario past.

U moet eerst bij het land of de regio kiezen waar u het telefoonnummer wilt inrichten. Nadat u een land/regio hebt geselecteerd, moet u de Use-case selecteren die het beste bij uw behoeften past.

Schermopname van de weergave voor het aanvragen van telefoonnummers.

Telefoonnummerfuncties selecteren

Het configureren van uw telefoonnummer is onderverdeeld in twee stappen:

  1. De selectie van het nummertype
  2. De selectie van de getalmogelijkheden

U kunt kiezen uit twee typen telefoonnummers: Lokaal en Gratis. Wanneer u een type nummer hebt geselecteerd, kunt u de functie kiezen.

In ons voorbeeld hebben we een gratis nummertype geselecteerd met bellen en sms-functies verzenden en ontvangen.

Schermopname van de weergave voor selectie van functies.

Klik hier op de knop Volgende: Nummers onderaan de pagina om de telefoonnummers aan te passen die u wilt inrichten.

Telefoonnummers aanpassen

Op de pagina Nummers past u de telefoonnummers aan die u wilt inrichten.

Schermopname van de pagina voor het selecteren van nummers.

Notitie

In deze quickstart wordt de stroom voor het aanpassen van het nummertype Gratis weergegeven. De ervaring kan enigszins afwijken als u het type Lokaal nummer hebt gekozen, maar het eindresultaat is hetzelfde.

Kies het Netnummer in de lijst met beschikbare netnummers, voer het aantal nummers in dat u wilt inrichten en klik vervolgens op Zoeken om nummers te vinden die aan uw selectiecriteria voldoen. De telefoonnummers die aan uw criteria voldoen, worden samen met de kosten per maand weergegeven.

Schermopname van de pagina voor het selecteren van nummers, met gereserveerde nummers.

Notitie

De beschikbaarheid is afhankelijk van het nummertype, de locatie en de functies die u hebt geselecteerd. Nummers worden korte tijd gereserveerd voordat de transactie verloopt. Als de transactie verloopt, moet u de nummers opnieuw selecteren.

Als u het aankoopoverzicht wilt bekijken en uw bestelling wilt plaatsen, klikt u op de knop Volgende: Samenvatting onder aan de pagina.

Telefoonnummers kopen

Op de overzichtspagina worden het nummertype, de kenmerken, de telefoonnummers en de totale maandelijkse kosten voor het inrichten van de telefoonnummers weergegeven.

Notitie

De weergegeven prijzen zijn de maandelijks terugkerende kosten die aan u worden berekend voor het leasen van het geselecteerde telefoonnummer. Niet inbegrepen in deze weergave zijn de kosten voor betalen per gebruik, die u maakt voor binnenkomende of uitgaande oproepen. De prijslijsten zijn hier beschikbaar. Deze kosten zijn afhankelijk van het nummertype en van welke nummers u belt. Zo kan de prijs per minuut voor een gesprek van een regionaal nummer in Seattle naar een regionaal nummer in New York erg verschillen van de gesprekskosten voor een gesprek van datzelfde nummer in Seattle naar een mobiel nummer in het Verenigd Koninkrijk.

Klik ten slotte ter bevestiging op Bestelling plaatsen onder aan de pagina.

Schermopname van de overzichtspagina met het nummertype, de kenmerken, de telefoonnummers en de totale maandelijkse kosten.

Uw telefoonnummers zoeken in de Azure-portal

Navigeer naar uw Azure Communication Services-resource in Azure Portal:

Schermopname van de hoofdpagina van een Communication Services-resource.

Selecteer de blade Telefoonnummers in het menu om uw telefoonnummers te beheren.

Schermopname van de telefoonnummerpagina van een Communication Services-resource.

Notitie

Het kan enkele minuten duren voordat de ingerichte nummers op deze pagina worden weergegeven.

Mogelijkheden voor telefoonnummers bijwerken

Op de pagina Telefoonnummers kunt u een telefoonnummer selecteren om dit te configureren.

Schermopname van de pagina met updatefuncties.

Selecteer de functies in de beschikbare opties en klik vervolgens op Opslaan om uw selectie toe te passen.

Telefoonnummer vrijgeven

Op de pagina Nummers kunt u telefoonnummers vrijgeven.

Schermopname van de pagina met telefoonnummers voor de release.

Selecteer het telefoonnummer dat u wilt vrijgeven en klik vervolgens op de knop Vrijgeven .

Belangrijk

Deze functie van Azure Communication Services is momenteel beschikbaar als preview-versie.

Preview-API's en SDK's worden aangeboden zonder een service level agreement. U wordt aangeraden deze niet te gebruiken voor productieworkloads. Sommige functies worden mogelijk niet ondersteund of hebben mogelijk beperkte mogelijkheden.

Raadpleeg aanvullende gebruiksvoorwaarden voor Microsoft Azure Previews voor meer informatie.

Azure Communication Services introduceert een nieuwe gebruikerservaring voor het aanschaffen van telefoonnummers. Deze ervaring wordt momenteel uitgevoerd en u wordt mogelijk geïntroduceerd bij het aanschaffen van een telefoonnummer in Azure Portal. Als u feedback over deze ervaring hebt, aarzel dan niet om het te geven via de knop Feedback geven in de Azure-portal-extensie.

Vereisten

Een telefoonnummer kopen

  1. Navigeer naar uw Communication Service-resource in Azure Portal.

    Schermopname van de hoofdpagina van een Communicatie Services-resource.

  2. Selecteer in het overzicht van Communication Services-resources de optie Telefoonnummers in het menu aan de linkerkant.

    Schermopname van de pagina telefoonnummers van een Communication Services-resource.

  3. Selecteer Linksboven op de pagina om uw telefoonnummer te kopen. Als u deze optie selecteert, wordt onze winkelwizard gestart:

    Schermopname van de wizard zoeken in winkelwagens van telefoonnummers.

  4. Kies het land of de regio waarin u het telefoonnummer wilt inrichten. Beschikbaarheid van land/regio is gebaseerd op de factureringslocatie voor uw Azure-abonnement. Meer informatie over welke nummers beschikbaar zijn voor elk land/elke regio vindt u hier. Vervolgens kiest u het nummertype. U kunt kiezen uit twee typen telefoonnummers: Lokaal en Gratis.

  5. Selecteer Zoeken om getallen op te halen die voldoen aan de geselecteerde criteria. U hebt verschillende filters om te zoeken naar het nummer dat bij uw behoeften past, waaronder:

    • Use case: dit is het geval of u dit nummer gebruikt om te bellen vanuit een toepassing (A2P) of van een menselijke agent (P2P).
    • Bellen: Dit is voor het bepalen van de belmogelijkheden die u wilt gebruiken voor uw telefoonnummer: bellen en/of bellen.
    • SMS: Dit is voor het bepalen van de sms-mogelijkheden die u wilt gebruiken voor uw telefoonnummer: sms-berichten verzenden en/of ontvangen.
    • Aangepast: U kunt ook aangepaste filters toevoegen om een bepaald voorvoegsel of een set cijfers in uw telefoonnummer op te halen.

    Schermopname van de aankooppagina van telefoonnummers met beschikbare telefoonnummers.

  6. Zodra u het telefoonnummer of de nummers hebt gevonden die u kiest, selecteert u Toevoegen aan winkelwagen om de nummers in de telefoonmand te bewaren. Deze nummers worden 16 minuten bewaard voordat uw winkelwagen automatisch wordt gewist.

    Schermopname van winkelwagen met telefoonnummers met twee telefoonnummers in de winkelwagen.

    Notitie

    De weergegeven prijzen zijn de maandelijks terugkerende kosten die aan u worden berekend voor het leasen van het geselecteerde telefoonnummer. Niet inbegrepen in deze weergave zijn de kosten voor betalen per gebruik, die u maakt voor binnenkomende of uitgaande oproepen. De prijslijsten zijn hier beschikbaar. Deze kosten zijn afhankelijk van het nummertype en van welke nummers u belt. Zo kan de prijs per minuut voor een gesprek van een regionaal nummer in Seattle naar een regionaal nummer in New York erg verschillen van de gesprekskosten voor een gesprek van datzelfde nummer in Seattle naar een mobiel nummer in het Verenigd Koninkrijk.

  7. Selecteer Volgende om uw aankoop te controleren. Selecteer Nu kopen om uw aankoop te voltooien.

    Schermopname van 2 telefoonnummers die moeten worden bekeken en gekocht.

  8. U vindt uw aangeschafte nummers terug op de pagina Telefoonnummers . Het kan enkele minuten duren voordat de getallen zijn ingericht.

    Schermopname van de pagina telefoonnummers met de zojuist aangeschafte telefoonnummers in het vak met een rode rand.

Mogelijkheden voor telefoonnummers bijwerken

Op de pagina Telefoonnummers kunt u een telefoonnummer selecteren om dit te configureren.

Schermopname van de pagina met updatefuncties.

Selecteer de functies in de beschikbare opties en selecteer Vervolgens Opslaan om uw selectie toe te passen.

Telefoonnummer vrijgeven

Op de pagina Nummers kunt u telefoonnummers vrijgeven.

Schermopname van de pagina met telefoonnummers voor de release.

Selecteer het telefoonnummer dat u wilt vrijgeven en selecteer vervolgens op de knop Vrijgeven .

Vereisten

Instellen

De extensie toevoegen

Voeg de Azure Communication Services-extensie voor Azure CLI toe met behulp van de az extension opdracht.

az extension add --name communication

Aanmelden bij Azure CLI

U moet zich aanmelden bij Azure CLI. U kunt zich aanmelden bij het uitvoeren van de az login opdracht vanuit de terminal en uw referenties opgeven.

Operations

Gekochte telefoonnummers vermelden

Voer de volgende opdracht uit om alle aangeschafte telefoonnummers op te halen.

az communication phonenumber list --connection-string "<yourConnectionString>"

Maak deze vervanging in de code:

  • Vervang <yourConnectionString> door uw verbindingsreeks.

Details van gekocht telefoonnummer ophalen

Voer de volgende opdracht uit om de details van het telefoonnummer voor een gekocht telefoonnummer op te halen.

az communication phonenumber show --phonenumber <purchasedPhoneNumber> --connection-string "<yourConnectionString>"

Voer de volgende vervangingen uit in de code:

  • Vervang <purchasedPhoneNumber> door een telefoonnummer dat is gekoppeld aan uw Communication Services-resource.
  • Vervang <yourConnectionString> door uw verbindingsreeks.

Notitie

De Azure CLI-optie biedt alleen functionaliteit voor het weergeven en weergeven van telefoonnummers. Het biedt geen ondersteuning voor andere bewerkingen, zoals zoeken, kopen, bewerken of het vrijgeven van telefoonnummers.

(Optioneel) Bewerkingen voor Azure CLI-telefoonnummers gebruiken zonder een verbindingsreeks

U kunt de AZURE_COMMUNICATION_CONNECTION_STRING omgevingsvariabele configureren voor het gebruik van bewerkingen met Azure CLI-telefoonnummers zonder dat u de verbindingsreeks hoeft door te --connection_string geven. Als u een omgevingsvariabele wilt configureren, opent u een consolevenster en selecteert u het besturingssysteem op de onderstaande tabbladen. Vervang <yourConnectionString> door de feitelijke verbindingsreeks.

Open een consolevenster en voer de volgende opdracht in:

setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"

Nadat u de omgevingsvariabele hebt toegevoegd, moet u actieve programma's die de omgevingsvariabele moeten lezen, opnieuw starten. Start ook het consolevenster opnieuw. Als u Visual Studio bijvoorbeeld gebruikt als editor, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.

Notitie

De voltooide code zoeken voor deze quickstart op GitHub

Vereisten

Controle van vereisten

  • Voer in een terminal- of opdrachtvenster de opdracht dotnet uit om te controleren of de .NET-clientbibliotheek is geïnstalleerd.

Instellen

Een nieuwe C#-toepassing maken

Gebruik in een consolevenster (zoals cmd, PowerShell of Bash) de opdracht dotnet new om een nieuwe console-app te maken met de naam PhoneNumbersQuickstart. Met deze opdracht maakt u een eenvoudig C#-project Hallo wereld met één bronbestand: Program.cs.

dotnet new console -o PhoneNumbersQuickstart

Wijzig uw map in de zojuist gemaakte app-map en gebruik de opdracht dotnet build om uw toepassing te compileren.

cd PhoneNumbersQuickstart
dotnet build

Het pakket installeren

Installeer in de toepassingsmap de Azure Communication PhoneNumbers-clientbibliotheek voor het .NET-pakket met behulp van de dotnet add package opdracht.

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

Voeg een using instructie toe aan het begin van Program.cs om de naamruimten op te nemen.

using System;
using System.Linq;
using System.Threading.Tasks;
using Azure.Communication.PhoneNumbers;

Werk Main de functiehandtekening bij zodat deze asynchroon is.

static async Task Main(string[] args)
{
  ...
}

De client verifiëren

Clients met telefoonnummers kunnen worden geverifieerd met behulp van verbindingsreeks verkregen uit een Azure Communication Services-resources in Azure Portal.

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

Clients met telefoonnummers hebben ook de mogelijkheid om te verifiëren met Microsoft Entra-verificatie. Met deze optie AZURE_CLIENT_SECRETAZURE_CLIENT_ID AZURE_TENANT_ID moeten omgevingsvariabelen worden ingesteld voor verificatie.

// Get an endpoint to our Azure Communication Services resource.
var endpoint = new Uri("<endpoint_url>");
TokenCredential tokenCredential = new DefaultAzureCredential();
client = new PhoneNumbersClient(endpoint, tokenCredential);

Telefoonnummers beheren

Zoeken naar beschikbare telefoonnummers

Als u telefoonnummers wilt kopen, moet u eerst zoeken naar beschikbare telefoonnummers. Als u wilt zoeken naar telefoonnummers, geeft u het netnummer, het toewijzingstype, de mogelijkheden voor telefoonnummers, het type telefoonnummer en de hoeveelheid op. Houd er rekening mee dat voor het gratis telefoonnummertype het netnummer optioneel is.

var capabilities = new PhoneNumberCapabilities(calling:PhoneNumberCapabilityType.None, sms:PhoneNumberCapabilityType.Outbound);
var searchOptions = new PhoneNumberSearchOptions { AreaCode = "833", Quantity = 1 };

var searchOperation = await client.StartSearchAvailablePhoneNumbersAsync("US", PhoneNumberType.TollFree, PhoneNumberAssignmentType.Application, capabilities, searchOptions);
await searchOperation.WaitForCompletionAsync();

Telefoonnummers kopen

Het resultaat van het zoeken naar telefoonnummers is een PhoneNumberSearchResult. Dit bevat een SearchId api die kan worden doorgegeven aan de API voor aankoopnummers om de nummers in de zoekopdracht te verkrijgen. Houd er rekening mee dat het aanroepen van de API voor aankooptelefoonnummers leidt tot kosten voor uw Azure-account.

var purchaseOperation = await client.StartPurchasePhoneNumbersAsync(searchOperation.Value.SearchId);
await purchaseOperation.WaitForCompletionResponseAsync();

Telefoonnummers ophalen

Na een aankoopnummer kunt u het ophalen van de client.

var getPhoneNumberResponse = await client.GetPurchasedPhoneNumberAsync("+14255550123");
Console.WriteLine($"Phone number: {getPhoneNumberResponse.Value.PhoneNumber}, country code: {getPhoneNumberResponse.Value.CountryCode}");

U kunt ook alle aangeschafte telefoonnummers ophalen.

var purchasedPhoneNumbers = client.GetPurchasedPhoneNumbersAsync();
await foreach (var purchasedPhoneNumber in purchasedPhoneNumbers)
{
    Console.WriteLine($"Phone number: {purchasedPhoneNumber.PhoneNumber}, country code: {purchasedPhoneNumber.CountryCode}");
}

Mogelijkheden voor telefoonnummers bijwerken

Met een aangeschaft nummer kunt u de mogelijkheden bijwerken.

var updateCapabilitiesOperation = await client.StartUpdateCapabilitiesAsync("+14255550123", calling: PhoneNumberCapabilityType.Outbound, sms: PhoneNumberCapabilityType.InboundOutbound);
await updateCapabilitiesOperation.WaitForCompletionAsync();

Telefoonnummer vrijgeven

U kunt een gekocht telefoonnummer vrijgeven.

var releaseOperation = await client.StartReleasePhoneNumberAsync("+14255550123");
await releaseOperation.WaitForCompletionResponseAsync();

De code uitvoeren

Voer de toepassing uit vanuit uw toepassingsmap met de opdracht dotnet run.

dotnet run

Voorbeeldcode

U kunt de voorbeeld-app downloaden uit GitHub.

Notitie

De voltooide code zoeken voor deze quickstart op GitHub

Vereisten

Instellen

Een nieuwe Java-toepassing maken

Open uw terminal-of opdrachtvenster. Navigeer naar de map waarin u uw Java-toepassing wilt maken. Voer de onderstaande opdracht uit om het Java-project te genereren op basis van de maven-archetype-snelstart-sjabloon.

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

U ziet dat de taak ' genereren ' een map heeft gemaakt met dezelfde naam als de artifactId. In deze map bevat de map src/main/Java de broncode van het project, de src/test/java directory bevat de testbron en het bestand pom.xml het projectobjectmodel van het project of POM.

Het pakket installeren

Open het bestand pom.xml in uw teksteditor. Voeg de volgende afhankelijkheidselementen toe aan de groep met afhankelijkheden.

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

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

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-identity</artifactId>
    <version>1.2.3</version>
</dependency>

Stel het app-framework in

Ga als volgt te werk vanuit de projectmap:

  1. Ga naar de map /src/main/java/com/communication/quickstart
  2. Open het bestand App.java in uw editor
  3. De System.out.println("Hello world!");-instructie vervangen
  4. Voeg import-instructies toe

Gebruik de volgende code om te beginnen:

import com.azure.communication.phonenumbers.*;
import com.azure.communication.phonenumbers.models.*;
import com.azure.core.http.rest.*;
import com.azure.core.util.Context;
import com.azure.core.util.polling.LongRunningOperationStatus;
import com.azure.core.util.polling.PollResponse;
import com.azure.core.util.polling.SyncPoller;
import com.azure.identity.*;
import java.io.*;

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

De client voor telefoonnummers verifiëren

PhoneNumberClientBuilder is ingeschakeld voor het gebruik van Microsoft Entra-verificatie

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

PhoneNumbersClient phoneNumberClient = new PhoneNumbersClientBuilder()
    .endpoint(endpoint)
    .credential(new DefaultAzureCredentialBuilder().build())
    .buildClient();

U kunt ook het eindpunt en de toegangssleutel van de communicatieresource gebruiken om te verifiëren.

// 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>";

PhoneNumbersClient phoneNumberClient = new PhoneNumbersClientBuilder()
    .connectionString(connectionString)
    .buildClient();

Telefoonnummers beheren

Zoeken naar beschikbare telefoonnummers

Als u telefoonnummers wilt kopen, moet u eerst zoeken naar beschikbare telefoonnummers. Als u wilt zoeken naar telefoonnummers, geeft u het netnummer, het toewijzingstype, de mogelijkheden voor telefoonnummers, het type telefoonnummer en de hoeveelheid op. Houd er rekening mee dat voor het gratis telefoonnummertype het netnummer optioneel is.

 PhoneNumberCapabilities capabilities = new PhoneNumberCapabilities()
    .setCalling(PhoneNumberCapabilityType.INBOUND)
    .setSms(PhoneNumberCapabilityType.INBOUND_OUTBOUND);
PhoneNumberSearchOptions searchOptions = new PhoneNumberSearchOptions().setAreaCode("833").setQuantity(1);

SyncPoller<PhoneNumberOperation, PhoneNumberSearchResult> poller = phoneNumberClient
    .beginSearchAvailablePhoneNumbers("US", PhoneNumberType.TOLL_FREE, PhoneNumberAssignmentType.APPLICATION, capabilities, searchOptions, Context.NONE);
PollResponse<PhoneNumberOperation> response = poller.waitForCompletion();
String searchId = "";

if (LongRunningOperationStatus.SUCCESSFULLY_COMPLETED == response.getStatus()) {
    PhoneNumberSearchResult searchResult = poller.getFinalResult();
    searchId = searchResult.getSearchId();
    System.out.println("Searched phone numbers: " + searchResult.getPhoneNumbers());
    System.out.println("Search expires by: " + searchResult.getSearchExpiresBy());
    System.out.println("Phone number costs:" + searchResult.getCost().getAmount());
}

Telefoonnummers kopen

Het resultaat van het zoeken naar telefoonnummers is een PhoneNumberSearchResult. Dit bevat een searchId api die kan worden doorgegeven aan de API voor aankoopnummers om de nummers in de zoekopdracht te verkrijgen. Houd er rekening mee dat het aanroepen van de API voor aankooptelefoonnummers leidt tot kosten voor uw Azure-account.

PollResponse<PhoneNumberOperation> purchaseResponse = phoneNumberClient.beginPurchasePhoneNumbers(searchId, Context.NONE).waitForCompletion();
System.out.println("Purchase phone numbers operation is: " + purchaseResponse.getStatus());

Telefoonnummers ophalen

Na een aankoopnummer kunt u het ophalen van de client.

PurchasedPhoneNumber phoneNumber = phoneNumberClient.getPurchasedPhoneNumber("+14255550123");
System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());

U kunt ook alle aangeschafte telefoonnummers ophalen.

PagedIterable<PurchasedPhoneNumber> phoneNumbers = phoneNumberClient.listPurchasedPhoneNumbers(Context.NONE);
PurchasedPhoneNumber phoneNumber = phoneNumbers.iterator().next();
System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());

Mogelijkheden voor telefoonnummers bijwerken

Met een aangeschaft nummer kunt u de mogelijkheden bijwerken.

PhoneNumberCapabilities capabilities = new PhoneNumberCapabilities();
capabilities
    .setCalling(PhoneNumberCapabilityType.INBOUND)
    .setSms(PhoneNumberCapabilityType.INBOUND_OUTBOUND);

SyncPoller<PhoneNumberOperation, PurchasedPhoneNumber> poller = phoneNumberClient.beginUpdatePhoneNumberCapabilities("+18001234567", capabilities, Context.NONE);
PollResponse<PhoneNumberOperation> response = poller.waitForCompletion();
if (LongRunningOperationStatus.SUCCESSFULLY_COMPLETED == response.getStatus()) {
    PurchasedPhoneNumber phoneNumber = poller.getFinalResult();
    System.out.println("Phone Number Calling capabilities: " + phoneNumber.getCapabilities().getCalling()); //Phone Number Calling capabilities: inbound
    System.out.println("Phone Number SMS capabilities: " + phoneNumber.getCapabilities().getSms()); //Phone Number SMS capabilities: inbound+outbound
}

Telefoonnummer vrijgeven

U kunt een gekocht telefoonnummer vrijgeven.

PollResponse<PhoneNumberOperation> releaseResponse =
    phoneNumberClient.beginReleasePhoneNumber("+14255550123", Context.NONE).waitForCompletion();
System.out.println("Release phone number operation is: " + releaseResponse.getStatus());

De code uitvoeren

Navigeer naar de map die het bestand pom.xml bevat en compileer het project met behulp van de volgende mvn-opdracht.

mvn compile

Bouw vervolgens het pakket.

mvn package

Voer de volgende mvn-opdracht uit om de app uit te voeren.

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

De uitvoer van de app beschrijft elke actie die is voltooid:

Azure Communication Services - Phone Numbers Quickstart

Searched phone numbers: [+18001234567]

Purchase phone numbers operation is: SUCCESSFULLY_COMPLETED

Phone Number Country Code: US

Phone Number Calling capabilities: inbound

Phone Number SMS capabilities: inbound

Release phone number operation is: SUCCESSFULLY_COMPLETED

Notitie

De voltooide code zoeken voor deze quickstart op GitHub

Vereisten

Instellen

Een nieuwe Python-toepassing maken

Open het terminal- of opdrachtvenster en maak een nieuwe map voor uw app en navigeer ernaartoe.

mkdir phone-numbers-quickstart && cd phone-numbers-quickstart

Gebruik een teksteditor om een bestand met de naam phone_numbers_sample.py te maken in de hoofdmap van het project en voeg de volgende code toe. De resterende quickstart-code wordt toegevoegd in de volgende secties.

import os
from azure.communication.phonenumbers import PhoneNumbersClient

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

Het pakket installeren

Blijf in de toepassingsmap en installeer met de opdracht pip install de clientbibliotheek voor het Azure Communications Services-beheer voor het Python-pakket.

pip install azure-communication-phonenumbers

De client voor telefoonnummers verifiëren

De PhoneNumbersClient optie is ingeschakeld voor het gebruik van Microsoft Entra-verificatie. DefaultAzureCredential Het object is de eenvoudigste manier om aan de slag te gaan met Microsoft Entra ID en u kunt het installeren met behulp van de pip install opdracht.

pip install azure-identity

Als u een DefaultAzureCredential object maakt, moet u deze AZURE_CLIENT_SECREThebben AZURE_CLIENT_IDen AZURE_TENANT_ID al instellen als omgevingsvariabelen met de bijbehorende waarden uit uw geregistreerde Microsoft Entra-toepassing.

Voor een beknopt overzicht van het ophalen van deze omgevingsvariabelen kunt u de service-principals instellen volgen vanuit de CLI-quickstart.

Zodra u de azure-identity bibliotheek hebt geïnstalleerd, kunnen we doorgaan met het verifiëren van de client.

import os
from azure.communication.phonenumbers import PhoneNumbersClient
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 - Phone Numbers Quickstart')
    credential = DefaultAzureCredential()
    phone_numbers_client = PhoneNumbersClient(endpoint, credential)
except Exception as ex:
    print('Exception:')
    print(ex)

U kunt ook het eindpunt en de toegangssleutel van de communicatieresource gebruiken om te verifiëren.

import os
from azure.communication.phonenumbers import PhoneNumbersClient

# 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 - Phone Numbers Quickstart')
    phone_numbers_client = PhoneNumbersClient.from_connection_string(connection_string)
except Exception as ex:
    print('Exception:')
    print(ex)

Functies

Zodra de PhoneNumbersClient verificatie is uitgevoerd, kunnen we aan de hand van de verschillende functies gaan werken.

Zoeken naar beschikbare telefoonnummers

Als u telefoonnummers wilt kopen, moet u eerst zoeken naar beschikbare telefoonnummers. Als u wilt zoeken naar telefoonnummers, geeft u het vlaknummer, het toewijzingstype, de mogelijkheden voor telefoonnummers, het type telefoonnummer en de hoeveelheid op (standaardhoeveelheid is ingesteld op 1). Houd er rekening mee dat voor het gratis telefoonnummertype het netnummer optioneel is.

import os
from azure.communication.phonenumbers import PhoneNumbersClient, PhoneNumberCapabilityType, PhoneNumberAssignmentType, PhoneNumberType, PhoneNumberCapabilities
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 - Phone Numbers Quickstart')
    credential = DefaultAzureCredential()
    phone_numbers_client = PhoneNumbersClient(endpoint, credential)
    capabilities = PhoneNumberCapabilities(
        calling = PhoneNumberCapabilityType.INBOUND,
        sms = PhoneNumberCapabilityType.INBOUND_OUTBOUND
    )
    search_poller = phone_numbers_client.begin_search_available_phone_numbers(
        "US",
        PhoneNumberType.TOLL_FREE,
        PhoneNumberAssignmentType.APPLICATION,
        capabilities,
        polling = True
    )
    search_result = search_poller.result()
    print ('Search id: ' + search_result.search_id)
    phone_number_list = search_result.phone_numbers
    print('Reserved phone numbers:')
    for phone_number in phone_number_list:
        print(phone_number)

except Exception as ex:
    print('Exception:')
    print(ex)

Telefoonnummers kopen

Het resultaat van het zoeken naar telefoonnummers is een PhoneNumberSearchResult. Dit bevat een searchId api die kan worden doorgegeven aan de API voor aankoopnummers om de nummers in de zoekopdracht te verkrijgen. Houd er rekening mee dat het aanroepen van de API voor aankooptelefoonnummers leidt tot kosten voor uw Azure-account.

import os
from azure.communication.phonenumbers import (
    PhoneNumbersClient,
    PhoneNumberCapabilityType,
    PhoneNumberAssignmentType,
    PhoneNumberType,
    PhoneNumberCapabilities
)
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 - Phone Numbers Quickstart')
    credential = DefaultAzureCredential()
    phone_numbers_client = PhoneNumbersClient(endpoint, credential)
    capabilities = PhoneNumberCapabilities(
        calling = PhoneNumberCapabilityType.INBOUND,
        sms = PhoneNumberCapabilityType.INBOUND_OUTBOUND
    )
    search_poller = phone_numbers_client.begin_search_available_phone_numbers(
        "US",
        PhoneNumberType.TOLL_FREE,
        PhoneNumberAssignmentType.APPLICATION,
        capabilities,
        area_code="833",
        polling = True
    )
    search_result = poller.result()
    print ('Search id: ' + search_result.search_id)
    phone_number_list = search_result.phone_numbers
    print('Reserved phone numbers:')
    for phone_number in phone_number_list:
        print(phone_number)

    purchase_poller = phone_numbers_client.begin_purchase_phone_numbers(search_result.search_id, polling = True)
    purchase_poller.result()
    print("The status of the purchase operation was: " + purchase_poller.status())
except Exception as ex:
    print('Exception:')
    print(ex)

Gekochte telefoonnummers ophalen

Na een aankoopnummer kunt u het ophalen van de client.

purchased_phone_number_information = phone_numbers_client.get_purchased_phone_number("+18001234567")
print('Phone number: ' + purchased_phone_number_information.phone_number)
print('Country code: ' + purchased_phone_number_information.country_code)

U kunt ook alle aangeschafte telefoonnummers ophalen.

purchased_phone_numbers = phone_numbers_client.list_purchased_phone_numbers()
print('Purchased phone numbers:')
for purchased_phone_number in purchased_phone_numbers:
    print(purchased_phone_number.phone_number)

Mogelijkheden voor telefoonnummers bijwerken

U kunt de mogelijkheden van een eerder gekocht telefoonnummer bijwerken.

update_poller = phone_numbers_client.begin_update_phone_number_capabilities(
    "+18001234567",
    PhoneNumberCapabilityType.OUTBOUND,
    PhoneNumberCapabilityType.OUTBOUND,
    polling = True
)
update_poller.result()
print('Status of the operation: ' + update_poller.status())

Telefoonnummer vrijgeven

U kunt een gekocht telefoonnummer vrijgeven.

release_poller = phone_numbers_client.begin_release_phone_number("+18001234567")
release_poller.result()
print('Status of the operation: ' + release_poller.status())

De code uitvoeren

Navigeer vanuit een consoleprompt naar de map met het phone_numbers_sample.py-bestand en voer vervolgens de volgende Python-opdracht uit om de app uit te voeren.

python phone_numbers_sample.py

Notitie

De voltooide code zoeken voor deze quickstart op GitHub

Vereisten

Controle van vereisten

  • Voer node --version in een terminal of opdrachtvenster uit om te controleren of Node.js is geïnstalleerd.

Instellen

Een nieuwe Node.js-toepassing maken

Open eerst uw terminal of opdrachtvenster, maak een nieuwe map voor uw app en navigeer daar naartoe.

mkdir phone-numbers-quickstart && cd phone-numbers-quickstart

Voer npm init -y uit om een package.json-bestand te maken met de standaardinstellingen.

npm init -y

Maak een bestand met de naam phone-numbers-quickstart.js in de hoofdmap van de map die u zojuist hebt gemaakt. Voeg het volgende codefragment toe:

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

main();

Het pakket installeren

Gebruik de npm install opdracht om de azure Communication Services Phone Numbers-clientbibliotheek voor JavaScript te installeren.

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

Met --save de optie wordt de bibliotheek toegevoegd als een afhankelijkheid in uw package.json-bestand .

De client verifiëren

Importeer de PhoneNumbersClient uit de clientbibliotheek en instantieer deze met uw verbindingsreeks. Met de onderstaande code wordt de verbindingsreeks voor de resource opgehaald uit een omgevingsvariabele met de naam COMMUNICATION_SERVICES_CONNECTION_STRING. Meer informatie over het beheren van de verbindingsreeks van uw resource.

Voeg de volgende code toe aan het begin van phone-numbers-quickstart.js:

const { PhoneNumbersClient } = 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 phoneNumbersClient = new PhoneNumbersClient(connectionString);

Telefoonnummers beheren

Zoeken naar beschikbare telefoonnummers

Als u telefoonnummers wilt kopen, moet u eerst zoeken naar beschikbare telefoonnummers. Als u wilt zoeken naar telefoonnummers, geeft u het netnummer, het toewijzingstype, de mogelijkheden voor telefoonnummers, het type telefoonnummer en de hoeveelheid op. Houd er rekening mee dat voor het gratis telefoonnummertype het netnummer optioneel is.

Voeg het volgende codefragment toe aan uw main functie:

/**
 * Search for Available Phone Number
 */

// Create search request
const searchRequest = {
    countryCode: "US",
    phoneNumberType: "tollFree",
    assignmentType: "application",
    capabilities: {
      sms: "outbound",
      calling: "none"
    },
    areaCode: "833",
    quantity: 1
  };

const searchPoller = await phoneNumbersClient.beginSearchAvailablePhoneNumbers(searchRequest);

// The search is underway. Wait to receive searchId.
const { searchId, phoneNumbers } = await searchPoller.pollUntilDone();
const phoneNumber = phoneNumbers[0];

console.log(`Found phone number: ${phoneNumber}`);
console.log(`searchId: ${searchId}`);

Telefoonnummer kopen

Het resultaat van het zoeken naar telefoonnummers is een PhoneNumberSearchResult. Dit bevat een searchId api die kan worden doorgegeven aan de API voor aankoopnummers om de nummers in de zoekopdracht te verkrijgen. Houd er rekening mee dat het aanroepen van de API voor aankooptelefoonnummers leidt tot kosten voor uw Azure-account.

Voeg het volgende codefragment toe aan uw main functie:

/**
 * Purchase Phone Number
 */

const purchasePoller = await phoneNumbersClient.beginPurchasePhoneNumbers(searchId);

// Purchase is underway.
await purchasePoller.pollUntilDone();
console.log(`Successfully purchased ${phoneNumber}`);

Mogelijkheden voor telefoonnummers bijwerken

Voeg nu een telefoonnummer dat is gekocht, de volgende code toe om de mogelijkheden bij te werken:

/**
 * Update Phone Number Capabilities
 */

// Create update request.
// This will update phone number to send and receive sms, but only send calls.
const updateRequest = {
  sms: "inbound+outbound",
  calling: "outbound"
};

const updatePoller = await phoneNumbersClient.beginUpdatePhoneNumberCapabilities(
  phoneNumber,
  updateRequest
);

// Update is underway.
await updatePoller.pollUntilDone();
console.log("Phone number updated successfully.");

Gekochte telefoonnummers ophalen

Na een aankoopnummer kunt u het ophalen van de client. Voeg de volgende code toe aan uw main functie om het telefoonnummer op te halen dat u zojuist hebt gekocht:

/**
 * Get Purchased Phone Number
 */

const { capabilities } = await phoneNumbersClient.getPurchasedPhoneNumber(phoneNumber);
console.log("These capabilities:", capabilities, "should be the same as these:", updateRequest, ".");

U kunt ook alle aangeschafte telefoonnummers ophalen.

const purchasedPhoneNumbers = await phoneNumbersClient.listPurchasedPhoneNumbers();

for await (const purchasedPhoneNumber of purchasedPhoneNumbers) {
  console.log(`Phone number: ${purchasedPhoneNumber.phoneNumber}, country code: ${purchasedPhoneNumber.countryCode}.`);
}

Telefoonnummer vrijgeven

U kunt nu het aangeschafte telefoonnummer vrijgeven. Voeg het onderstaande codefragment toe aan uw main functie:

/**
 * Release Purchased Phone Number
 */

const releasePoller = await phoneNumbersClient.beginReleasePhoneNumber(phoneNumber);

// Release is underway.
await releasePoller.pollUntilDone();
console.log("Successfully release phone number.");

De code uitvoeren

Gebruik de node opdracht om de code uit te voeren die u hebt toegevoegd aan het phone-numbers-quickstart.js-bestand .

node phone-numbers-quickstart.js

Probleemoplossing

Veelgestelde vragen en problemen:

  • Wanneer een telefoonnummer wordt vrijgegeven, wordt het telefoonnummer weergegeven in uw ACS-resource in Azure Portal tot het einde van de factureringscyclus. Het kan ook niet opnieuw worden aangeschaft tot het einde van de factureringscyclus.

  • Wanneer een Communication Services-resource wordt verwijderd, worden de telefoonnummers die aan die resource zijn gekoppeld, automatisch tegelijkertijd vrijgegeven.

Volgende stappen

In deze Snelstart hebt u de volgende zaken geleerd:

  • Een telefoonnummer kopen
  • Uw telefoonnummer beheren
  • Een telefoonnummer vrijgeven
  • Gratis verificatietoepassing indienen (zie indien nodig)