Szybki start: uzyskiwanie numerów telefonów i zarządzanie nimi

Ważne

Możliwości sms i PSTN zależą od używanego numeru telefonu oraz kraju/regionu, w którym działasz zgodnie z adresem rozliczeniowym platformy Azure. Aby uzyskać więcej informacji, odwiedź dokumentację dotyczącą uprawnień do subskrypcji.

Ważne

W przypadku zamówień o dużej ilości lub w przypadku niedostępności żądanego numeru telefonu odwiedź tę stronę , aby uzyskać dalszą pomoc.

Wymagania wstępne

Uzyskiwanie numeru telefonu

Aby rozpocząć aprowizację numerów, przejdź do zasobu usług komunikacyjnych w witrynie Azure Portal.

Zrzut ekranu przedstawiający stronę główną zasobu usług Communication Services.

Wyszukaj dostępne liczby Telefon

Przejdź do bloku Telefon Numery w menu zasobów.

Zrzut ekranu przedstawiający stronę telefonu zasobu usługi Communication Services.

Naciśnij przycisk Pobierz, aby uruchomić kreatora. Kreator w bloku numerów Telefon przeprowadzi Cię przez serię pytań, które ułatwiają wybranie numeru telefonu, który najlepiej pasuje do twojego scenariusza.

Najpierw musisz wybrać kraj/region , w którym chcesz aprowizować numer telefonu. Po wybraniu pola Kraj/region należy wybrać przypadek użycia, który najlepiej odpowiada Twoim potrzebom.

Zrzut ekranu przedstawiający widok Pobierz numery telefonów.

Wybieranie funkcji numeru telefonu

Konfigurowanie numeru telefonu jest podzielone na dwa kroki:

  1. Wybór typu liczby
  2. Wybór możliwości liczby

Możesz wybrać spośród dwóch typów numerów telefonów: lokalny i bezpłatny. Po wybraniu typu liczbowego możesz wybrać tę funkcję.

W naszym przykładzie wybrano typ numeru bezpłatnego z funkcją Nawiązywanie połączeń i Wysyłanie i odbieranie wiadomości SMS.

Zrzut ekranu przedstawiający widok Wybierz funkcje.

W tym miejscu kliknij przycisk Dalej: Numery w dolnej części strony, aby dostosować numery telefonów, które chcesz aprowizować.

Dostosowywanie numerów telefonów

Na stronie Numery dostosujesz numery telefonów, które chcesz aprowizować.

Zrzut ekranu przedstawiający stronę wyboru Numery.

Uwaga

Ten przewodnik Szybki start przedstawia przepływ dostosowywania typu numer bezpłatny . Środowisko może być nieco inne, jeśli wybrano typ Liczba lokalna , ale wynik końcowy będzie taki sam.

Wybierz kod obszaru z listy dostępnych kodów obszaru i wprowadź ilość, którą chcesz aprowizować, a następnie kliknij przycisk Wyszukaj, aby znaleźć numery spełniające wybrane wymagania. Numery telefonów, które spełniają Twoje potrzeby, będą wyświetlane wraz z ich miesięcznym kosztem.

Zrzut ekranu przedstawiający stronę wyboru Numery z zastrzeżonymi numerami.

Uwaga

Dostępność zależy od typu numeru, lokalizacji i wybranych funkcji. Liczby są zarezerwowane przez krótki czas przed wygaśnięciem transakcji. Jeśli transakcja wygaśnie, musisz ponownie wybrać liczby.

Aby wyświetlić podsumowanie zakupu i złożyć zamówienie, kliknij przycisk Dalej: Podsumowanie w dolnej części strony.

Kupowanie numerów Telefon

Na stronie podsumowania zostaną wyświetlone pozycje Typ numeru, Funkcje, numery Telefon i Łączny miesięczny koszt aprowizacji numerów telefonów.

Uwaga

Wyświetlane ceny to miesięczne opłaty cykliczne , które obejmują koszt dzierżawy wybranego numeru telefonu. Nieuwzględnianie w tym widoku to koszty płatności zgodnie z rzeczywistym użyciem, które są naliczane podczas wykonywania lub odbierania połączeń. Cenniki są dostępne tutaj. Te koszty zależą od typu liczb i wywołań miejsc docelowych. Na przykład cena za minutę połączenia z numerem regionalnym Seattle do numeru regionalnego w Nowym Jorku i połączenie z tego samego numeru do brytyjskiego numeru komórkowego może być inne.

Na koniec kliknij pozycję Umieść kolejność w dolnej części strony, aby potwierdzić.

Zrzut ekranu przedstawiający stronę Podsumowanie z wyświetlonymi wartościami Typ numeru, Funkcje, Telefon Liczby i Łączny koszt miesięczny.

Znajdowanie numerów telefonów w witrynie Azure Portal

Przejdź do zasobu usług Azure Communication Services w witrynie Azure Portal:

Zrzut ekranu przedstawiający stronę główną zasobu usług komunikacyjnych.

Wybierz blok Telefon Numery w menu, aby zarządzać numerami telefonów.

Zrzut ekranu przedstawiający stronę numeru telefonu zasobu usług komunikacyjnych.

Uwaga

Może upłynąć kilka minut, aby aprowizacja numerów była wyświetlana na tej stronie.

Aktualizowanie możliwości numeru Telefon

Na stronie Telefon Numery można wybrać numer telefonu, aby go skonfigurować.

Zrzut ekranu przedstawiający stronę aktualizacji funkcji.

Wybierz funkcje z dostępnych opcji, a następnie kliknij przycisk Zapisz , aby zastosować wybór.

Numer Telefon wydania

Na stronie Numery można zwolnić numery telefonów.

Zrzut ekranu przedstawiający stronę numerów telefonów wydania.

Wybierz numer telefonu, który chcesz zwolnić, a następnie kliknij przycisk Zwolnij.

Ważne

Ta funkcja usług Azure Communication Services jest obecnie dostępna w wersji zapoznawczej.

Interfejsy API i zestawy SDK w wersji zapoznawczej są udostępniane bez umowy dotyczącej poziomu usług. Zalecamy, aby nie używać ich w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości.

Aby uzyskać więcej informacji, zapoznaj się z dodatkowymi warunkami użytkowania dla wersji zapoznawczych platformy Microsoft Azure.

Usługi Azure Communication Services wprowadzają nowe środowisko użytkownika do zakupu numerów telefonów. To środowisko jest obecnie testowane i może zostać wprowadzone do tego środowiska podczas zakupu numeru telefonu w witrynie Azure Portal. Jeśli masz opinię na temat tego środowiska, nie wahaj się przekazać go za pomocą przycisku Prześlij opinię w rozszerzeniu witryny Azure Portal.

Wymagania wstępne

Kupowanie numeru telefonu

  1. Przejdź do zasobu usługi Communication Service w witrynie Azure Portal.

    Zrzut ekranu przedstawiający stronę główną zasobu usług Communication Services.

  2. W przeglądzie zasobów usług komunikacyjnych wybierz opcję "Telefon numery" w menu po lewej stronie.

    Zrzut ekranu przedstawiający stronę numerów telefonów zasobu usługi Communication Services.

  3. Wybierz pozycję Pobierz w lewym górnym rogu strony, aby kupić numer telefonu. Wybranie tej opcji spowoduje uruchomienie kreatora zakupów:

    Zrzut ekranu przedstawiający kreatora wyszukiwania koszyka na numerze telefonu.

  4. Wybierz kraj/region, w którym chcesz aprowizować numer telefonu. Dostępność kraju zależy od lokalizacji rozliczeniowej subskrypcji platformy Azure. Więcej informacji na temat liczby dostępnych dla każdego kraju można znaleźć tutaj. Następnie wybierzesz typ numeru. Możesz wybrać spośród dwóch typów numerów telefonów: lokalny i bezpłatny.

  5. Wybierz pozycję Wyszukaj , aby ściągnąć numery spełniające wybrane kryteria. Dostępne są różne filtry umożliwiające wyszukiwanie liczby pasujących do Twoich potrzeb, w tym:

    • Przypadek użycia: dotyczy to niezależnie od tego, czy używasz tego numeru do wywoływania z aplikacji (A2P) lub od agenta ludzkiego (P2P).
    • Połączenie: Służy to do określania możliwości połączeń telefonicznych, które chcesz uzyskać dla twojego numeru telefonu: nawiązywanie połączeń i/lub odbieranie połączeń.
    • SMS: Służy to do określania możliwości wiadomości SMS, które chcesz uzyskać dla twojego numeru telefonu: wysyłanie i/lub odbieranie wiadomości SMS.
    • Niestandardowe: możesz również dodać filtry niestandardowe, aby uzyskać określony prefiks lub zestaw cyfr w numerze telefonu.

    Zrzut ekranu przedstawiający stronę zakupu numeru telefonu z dostępnymi numerami telefonów.

  6. Po znalezieniu wybranego numeru telefonu lub numerów wybierz pozycję Dodaj do koszyka , aby przechowywać numery w koszyku telefonii. Te liczby są przechowywane przez 16 minut przed automatycznym wyczyszczeniem koszyka.

    Zrzut ekranu przedstawiający koszyk z numerem telefonu z dwoma numerami telefonów w koszyku.

    Uwaga

    Wyświetlane ceny to miesięczne opłaty cykliczne , które obejmują koszt dzierżawy wybranego numeru telefonu. Nieuwzględnianie w tym widoku to koszty płatności zgodnie z rzeczywistym użyciem, które są naliczane podczas wykonywania lub odbierania połączeń. Cenniki są dostępne tutaj. Te koszty zależą od typu liczb i wywołań miejsc docelowych. Na przykład cena za minutę połączenia z numerem regionalnym Seattle do numeru regionalnego w Nowym Jorku i połączenie z tego samego numeru do brytyjskiego numeru komórkowego może być inne.

  7. Wybierz pozycję Dalej , aby przejrzeć zakup. Aby ukończyć zakup, wybierz pozycję Kup teraz.

    Zrzut ekranu przedstawiający 2 numery telefonów do przejrzenia i zakupu.

  8. Zakupione numery można znaleźć ponownie na stronie Telefon numerów. Aprowizowania liczb może potrwać kilka minut.

    Zrzut ekranu przedstawiający stronę numerów telefonów z nowo zakupionymi numerami telefonów z czerwonym obramowaniem.

Aktualizowanie możliwości numeru Telefon

Na stronie Telefon Numery można wybrać numer telefonu, aby go skonfigurować.

Zrzut ekranu przedstawiający stronę aktualizacji funkcji.

Wybierz funkcje z dostępnych opcji, a następnie wybierz pozycję Zapisz , aby zastosować wybór.

Numer Telefon wydania

Na stronie Numery można zwolnić numery telefonów.

Zrzut ekranu przedstawiający stronę numerów telefonów wydania.

Wybierz numer telefonu, który chcesz zwolnić, a następnie wybierz przycisk Zwolnij.

Wymagania wstępne

Konfigurowanie

Dodawanie rozszerzenia

Dodaj rozszerzenie Azure Communication Services dla interfejsu wiersza polecenia platformy az extension Azure przy użyciu polecenia .

az extension add --name communication

Logowanie do interfejsu wiersza polecenia platformy Azure

Musisz zalogować się do interfejsu wiersza polecenia platformy Azure. Możesz zalogować się, uruchamiając polecenie z poziomu terminalu az login i podając swoje poświadczenia.

Operacje

Wyświetlanie listy zakupionych numerów telefonów

Uruchom następujące polecenie, aby pobrać wszystkie zakupione numery telefonów.

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

Zastąp ten kod:

  • Zastąp <yourConnectionString> element parametry połączenia.

Uzyskiwanie szczegółowych informacji o zakupionym numerze telefonu

Uruchom następujące polecenie, aby uzyskać szczegóły numeru telefonu dla zakupionego numeru telefonu.

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

Wprowadź te zamiany w kodzie:

  • Zastąp <purchasedPhoneNumber> ciąg numerem telefonu skojarzonym z zasobem usług komunikacyjnych.
  • Zastąp <yourConnectionString> element parametry połączenia.

Uwaga

Opcja interfejsu wiersza polecenia platformy Azure udostępnia funkcje tylko do wyświetlania i wyświetlania numerów telefonów. Nie obsługuje innych operacji, takich jak wyszukiwanie, kupowanie, edytowanie lub wydawanie numerów telefonów.

(Opcjonalnie) Używanie operacji numerów telefonów interfejsu wiersza polecenia platformy Azure bez przekazywania parametry połączenia

Zmienną AZURE_COMMUNICATION_CONNECTION_STRING środowiskową można skonfigurować tak, aby korzystała z operacji numerów telefonów interfejsu wiersza polecenia platformy Azure bez konieczności przekazywania --connection_string parametry połączenia. Aby skonfigurować zmienną środowiskową, otwórz okno konsoli i wybierz system operacyjny z poniższych kart. Zastąp <yourConnectionString> element rzeczywistym parametry połączenia.

Otwórz okno konsoli i wprowadź następujące polecenie:

setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"

Po dodaniu zmiennej środowiskowej być może trzeba będzie ponownie uruchomić działające programy, które muszą odczytywać zmienną środowiskową, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.

Uwaga

Znajdź sfinalizowany kod dla tego przewodnika Szybki start w witrynie GitHub

Wymagania wstępne

  • Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
  • Najnowsza wersja biblioteki klienta .NET Core dla systemu operacyjnego.
  • Aktywny zasób usług komunikacyjnych i parametry połączenia. Utwórz zasób usług komunikacyjnych.

Sprawdzanie wymagań wstępnych

  • W terminalu lub oknie polecenia uruchom dotnet polecenie , aby sprawdzić, czy zainstalowano bibliotekę klienta platformy .NET.

Konfigurowanie

Tworzenie nowej aplikacji w języku C#

W oknie konsoli (takim jak cmd, PowerShell lub Bash) użyj dotnet new polecenia , aby utworzyć nową aplikację konsolową o nazwie PhoneNumbersQuickstart. To polecenie tworzy prosty projekt języka C# "Hello World" z jednym plikiem źródłowym: Program.cs.

dotnet new console -o PhoneNumbersQuickstart

Zmień katalog na nowo utworzony folder aplikacji i użyj dotnet build polecenia , aby skompilować aplikację.

cd PhoneNumbersQuickstart
dotnet build

Instalowanie pakietu

Nadal w katalogu aplikacji zainstaluj bibliotekę klienta azure Communication Telefon Numbers dla pakietu .NET przy użyciu dotnet add package polecenia .

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

Dodaj dyrektywę using na początku Program.cs , aby uwzględnić przestrzenie nazw.

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

Zaktualizuj Main sygnaturę funkcji w celu asynchronizacji.

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

Uwierzytelnianie użytkownika

Telefon Liczbę klientów można uwierzytelniać przy użyciu parametry połączenia pozyskanych z zasobów usług Azure Communication Services w witrynie Azure Portal.

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

Telefon Klienci numer mają również możliwość uwierzytelniania przy użyciu uwierzytelniania firmy Microsoft Entra. W przypadku tej opcji AZURE_CLIENT_SECRETAZURE_CLIENT_ID należy skonfigurować zmienne środowiskowe i AZURE_TENANT_ID na potrzeby uwierzytelniania.

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

Zarządzanie numerami telefonów

Wyszukaj dostępne numery telefonów

Aby kupić numery telefonów, należy najpierw wyszukać dostępne numery telefonów. Aby wyszukać numery telefonów, podaj kod obszaru, typ przypisania, możliwości numeru telefonu, typ numeru telefonu i ilość. Należy pamiętać, że w przypadku typu numeru telefonu bezpłatnego podaj opcjonalny kod obszaru.

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();

Kupowanie numerów telefonów

Wynikiem wyszukiwania numerów telefonów jest PhoneNumberSearchResult. Zawiera on element SearchId , który można przekazać do interfejsu API numerów zakupów w celu uzyskania liczb w wyszukiwaniu. Pamiętaj, że wywołanie interfejsu API numerów telefonów zakupu spowoduje naliczanie opłat za konto platformy Azure.

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

Uzyskiwanie numerów telefonów

Po numerze zakupu można pobrać go z klienta.

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

Możesz również pobrać wszystkie zakupione numery telefonów.

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

Aktualizowanie możliwości numeru telefonu

Za pomocą zakupionego numeru można zaktualizować możliwości.

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

Numer telefonu wydania

Możesz zwolnić zakupiony numer telefonu.

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

Uruchamianie kodu

Uruchom aplikację z katalogu aplikacji za dotnet run pomocą polecenia .

dotnet run

Przykładowy kod

Przykładową aplikację można pobrać z usługi GitHub

Uwaga

Znajdź sfinalizowany kod dla tego przewodnika Szybki start w witrynie GitHub

Wymagania wstępne

Konfigurowanie

Tworzenie nowej aplikacji Java

Otwórz terminal lub okno polecenia. Przejdź do katalogu, w którym chcesz utworzyć aplikację Java. Uruchom poniższe polecenie, aby wygenerować projekt Java z szablonu maven-archetype-quickstart.

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

Zauważysz, że zadanie "generate" utworzyło katalog o takiej samej nazwie jak artifactId. W tym katalogu katalog src/main/java zawiera kod źródłowy projektu, src/test/java directory zawiera źródło testowe, a pom.xml plik jest projektem Project Object Model lub POM.

Instalowanie pakietu

Otwórz plik pom.xml w edytorze tekstów. Dodaj następujące elementy zależności do grupy zależności.

<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>

Konfigurowanie struktury aplikacji

Z katalogu projektu:

  1. Przejdź do katalogu /src/main/java/com/communication/quickstart
  2. Otwórz plik App.java w edytorze
  3. Zastąp instrukcję System.out.println("Hello world!");
  4. Dodawanie import dyrektyw

Użyj następującego kodu, aby rozpocząć:

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
    }
}

Uwierzytelnianie klienta numerów Telefon

Telefon NumberClientBuilder jest włączony do korzystania z uwierzytelniania Microsoft Entra

// 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();

Alternatywnie możliwe jest również użycie punktu końcowego i klucza dostępu z zasobu komunikacji do uwierzytelniania.

// 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();

Zarządzanie numerami Telefon

Wyszukaj dostępne liczby Telefon

Aby kupić numery telefonów, należy najpierw wyszukać dostępne numery telefonów. Aby wyszukać numery telefonów, podaj kod obszaru, typ przypisania, możliwości numeru telefonu, typ numeru telefonu i ilość. Należy pamiętać, że w przypadku typu numeru telefonu bezpłatnego podaj opcjonalny kod obszaru.

 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());
}

Kupowanie numerów Telefon

Wynikiem wyszukiwania numerów telefonów jest Telefon NumberSearchResult. Zawiera on element searchId , który można przekazać do interfejsu API numerów zakupów w celu uzyskania liczb w wyszukiwaniu. Pamiętaj, że wywołanie interfejsu API numerów telefonów zakupu spowoduje naliczanie opłat za konto platformy Azure.

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

Pobieranie numerów Telefon

Po numerze zakupu można pobrać go z klienta.

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

Możesz również pobrać wszystkie zakupione numery telefonów.

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

Aktualizowanie możliwości numeru Telefon

Za pomocą zakupionego numeru można zaktualizować możliwości.

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
}

Numer Telefon wydania

Możesz zwolnić zakupiony numer telefonu.

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

Uruchamianie kodu

Przejdź do katalogu zawierającego plik pom.xml i skompiluj projekt przy użyciu następującego mvn polecenia.

mvn compile

Następnie skompiluj pakiet.

mvn package

Uruchom następujące mvn polecenie, aby wykonać aplikację.

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

Dane wyjściowe aplikacji opisują każdą ukończoną akcję:

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

Uwaga

Znajdź sfinalizowany kod dla tego przewodnika Szybki start w witrynie GitHub

Wymagania wstępne

Konfigurowanie

Tworzenie nowej aplikacji w języku Python

Otwórz terminal lub okno polecenia i utwórz nowy katalog dla aplikacji, a następnie przejdź do niego.

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

Użyj edytora tekstów, aby utworzyć plik o nazwie phone_numbers_sample.py w katalogu głównym projektu i dodać następujący kod. W poniższych sekcjach dodamy pozostały kod szybkiego startu.

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)

Instalowanie pakietu

Nadal w katalogu aplikacji zainstaluj bibliotekę klienta azure Communication Services Administracja istration dla pakietu języka Python przy użyciu pip install polecenia .

pip install azure-communication-phonenumbers

Uwierzytelnianie klienta numerów Telefon

Ustawienie PhoneNumbersClient jest włączone do korzystania z uwierzytelniania entra firmy Microsoft. DefaultAzureCredential Użycie obiektu to najprostszy sposób rozpoczęcia pracy z identyfikatorem Entra firmy Microsoft i zainstalowanie go za pomocą pip install polecenia .

pip install azure-identity

DefaultAzureCredential Utworzenie obiektu wymaga, aby element AZURE_CLIENT_ID, AZURE_CLIENT_SECRETi AZURE_TENANT_ID został już ustawiony jako zmienne środowiskowe z odpowiednimi wartościami z zarejestrowanej aplikacji Firmy Microsoft Entra.

Aby szybko dowiedzieć się, jak uzyskać te zmienne środowiskowe, możesz skorzystać z przewodnika Szybki start Konfigurowanie jednostek usługi z poziomu interfejsu wiersza polecenia.

Po zainstalowaniu azure-identity biblioteki możemy kontynuować uwierzytelnianie klienta.

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)

Alternatywnie możliwe jest również użycie punktu końcowego i klucza dostępu z zasobu komunikacji do uwierzytelniania.

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)

Funkcje

PhoneNumbersClient Po uwierzytelnieniu można rozpocząć pracę nad różnymi funkcjami, które może wykonać.

Wyszukaj dostępne liczby Telefon

Aby kupić numery telefonów, należy najpierw wyszukać wszystkie dostępne numery telefonów. Aby wyszukać numery telefonów, podaj kod obszaru, typ przypisania, możliwości numeru telefonu, typ numeru telefonu i ilość (domyślna ilość jest ustawiona na 1). Należy pamiętać, że w przypadku typu numeru telefonu bezpłatnego podaj opcjonalny kod obszaru.

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)

Kupowanie numerów Telefon

Wynikiem wyszukiwania numerów telefonów jest PhoneNumberSearchResult. Zawiera on element searchId , który można przekazać do interfejsu API numerów zakupów w celu uzyskania liczb w wyszukiwaniu. Pamiętaj, że wywołanie interfejsu API numerów telefonów zakupu spowoduje naliczanie opłat za konto platformy Azure.

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)

Uzyskiwanie zakupionych numerów telefonów

Po numerze zakupu można pobrać go z klienta.

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)

Możesz również pobrać wszystkie zakupione numery telefonów.

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)

Aktualizowanie możliwości numeru Telefon

Możesz zaktualizować możliwości wcześniej zakupionego numeru telefonu.

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())

Numer Telefon wydania

Możesz zwolnić zakupiony numer telefonu.

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

Uruchamianie kodu

W wierszu polecenia konsoli przejdź do katalogu zawierającego plik phone_numbers_sample.py, a następnie wykonaj następujące polecenie języka Python, aby uruchomić aplikację.

python phone_numbers_sample.py

Uwaga

Znajdź sfinalizowany kod dla tego przewodnika Szybki start w witrynie GitHub

Wymagania wstępne

  • Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
  • Node.js wersji LTS Active LTS i Maintenance LTS (zalecane wersje 8.11.1 i 10.14.1).
  • Aktywny zasób usług komunikacyjnych i parametry połączenia. Utwórz zasób usług komunikacyjnych.

Sprawdzanie wymagań wstępnych

  • W terminalu lub oknie polecenia uruchom polecenie node --version , aby sprawdzić, czy Node.js jest zainstalowana.

Konfigurowanie

Tworzenie nowej aplikacji Node.js

Najpierw otwórz terminal lub okno polecenia, utwórz nowy katalog dla aplikacji i przejdź do niego.

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

Uruchom polecenie npm init -y , aby utworzyć plik package.json z ustawieniami domyślnymi.

npm init -y

Utwórz plik o nazwie phone-numbers-quickstart.js w katalogu głównym właśnie utworzonego katalogu. Dodaj do niego następujący fragment kodu:

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

main();

Instalowanie pakietu

Użyj polecenia , npm install aby zainstalować bibliotekę klienta usługi Azure Communication Services Telefon Numbers dla języka JavaScript.

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

Opcja --save dodaje bibliotekę jako zależność w pliku package.json .

Uwierzytelnianie użytkownika

Zaimportuj Telefon NumbersClient z biblioteki klienta i utwórz jej wystąpienie przy użyciu parametry połączenia. Poniższy kod pobiera parametry połączenia zasobu ze zmiennej środowiskowej o nazwie COMMUNICATION_SERVICES_CONNECTION_STRING. Dowiedz się, jak zarządzać parametry połączenia zasobu.

Dodaj następujący kod na początku 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);

Zarządzanie numerami telefonów

Wyszukaj dostępne numery telefonów

Aby kupić numery telefonów, należy najpierw wyszukać dostępne numery telefonów. Aby wyszukać numery telefonów, podaj kod obszaru, typ przypisania, możliwości numeru telefonu, typ numeru telefonu i ilość. Należy pamiętać, że w przypadku typu numeru telefonu bezpłatnego podaj opcjonalny kod obszaru.

Dodaj następujący fragment kodu do main funkcji:

/**
 * 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}`);

Zakup numeru telefonu

Wynikiem wyszukiwania numerów telefonów jest PhoneNumberSearchResult. Zawiera on element searchId , który można przekazać do interfejsu API numerów zakupów w celu uzyskania liczb w wyszukiwaniu. Pamiętaj, że wywołanie interfejsu API numerów telefonów zakupu spowoduje naliczanie opłat za konto platformy Azure.

Dodaj następujący fragment kodu do main funkcji:

/**
 * Purchase Phone Number
 */

const purchasePoller = await phoneNumbersClient.beginPurchasePhoneNumbers(searchId);

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

Aktualizowanie możliwości numeru telefonu

Po zakupie numeru telefonu dodaj następujący kod, aby zaktualizować jego możliwości:

/**
 * 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.");

Uzyskiwanie zakupionych numerów telefonów

Po numerze zakupu można pobrać go z klienta. Dodaj następujący kod do main funkcji, aby pobrać właśnie zakupiony numer telefonu:

/**
 * Get Purchased Phone Number
 */

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

Możesz również pobrać wszystkie zakupione numery telefonów.

const purchasedPhoneNumbers = await phoneNumbersClient.listPurchasedPhoneNumbers();

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

Numer telefonu wydania

Teraz możesz zwolnić zakupiony numer telefonu. Dodaj poniższy fragment kodu do funkcji main :

/**
 * Release Purchased Phone Number
 */

const releasePoller = await phoneNumbersClient.beginReleasePhoneNumber(phoneNumber);

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

Uruchamianie kodu

node Użyj polecenia , aby uruchomić kod dodany do pliku phone-numbers-quickstart.js.

node phone-numbers-quickstart.js

Rozwiązywanie problemów

Typowe pytania i problemy:

  • Po wydaniu numeru telefonu numer telefonu jest wyświetlany w zasobie usługi ACS w witrynie Azure Portal do końca cyklu rozliczeniowego. Nie można go również ponownie kupić do końca cyklu rozliczeniowego.

  • Po usunięciu zasobu usług komunikacyjnych numery telefonów skojarzone z tym zasobem są automatycznie zwalniane w tym samym czasie.

Następne kroki

W tym przewodniku Szybki start pokazano, jak wykonać następujące działania: