Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Le funzionalità SMS e PSTN dipendono dal numero di telefono usato e dal paese/area geografica in cui si opera come determinato dall'indirizzo di fatturazione di Azure. Per altre informazioni, vedere la documentazione relativa all'idoneità alla sottoscrizione .
Importante
Per ordini con volumi elevati o nel caso in cui il numero di telefono desiderato non sia disponibile, visitare questa pagina per ulteriore assistenza.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
- Una risorsa di Servizi di comunicazione attiva.
Acquistare un numero di telefono
Passare alla risorsa del servizio di comunicazione nel portale di Azure.
Nella panoramica delle risorse di Servizi di comunicazione selezionare l'opzione "Numeri di telefono" nel menu a sinistra.
Selezionare Ottieni nella parte superiore sinistra della pagina per acquistare il numero di telefono. Selezionando questa procedura viene avviata la procedura guidata per lo shopping:
Scegliere il paese/area geografica in cui si vuole effettuare il provisioning del numero di telefono. La disponibilità del paese si basa sulla posizione di fatturazione per la sottoscrizione di Azure. Altre informazioni sui numeri disponibili per ogni paese/area geografica sono disponibili qui. Scegliere quindi il tipo di numero. È possibile selezionare tra due tipi di numero di telefono: locale e numero verde.
Nota
- Gli ordini di numeri in blocco o alcuni paesi/aree geografiche, ad esempio i Paesi Bassi, richiedono un ordine speciale per i numeri di telefono. Se è necessario un ordinamento speciale, verrà richiesto di seguire il processo di ordine speciale indicato di seguito.
- Fare clic sul pulsante "Richiedi un ordine speciale" nella sezione Numeri di telefono.
- Aprire un nuovo caso.
- Selezionare "Servizio di comunicazione di Azure" come profilo cliente.
- Scegliere il paese/area geografica in cui sono necessari i numeri di telefono.
- Seleziona "New TN Acquisition" come tipologia di caso.
- Immettere i dettagli necessari e inviare la richiesta.
Selezionare Cerca per estrarre i numeri che soddisfano i criteri selezionati. Sono disponibili vari filtri per cercare il numero più adatto alle proprie esigenze, tra cui:
- Caso d'uso: indica se si usa questo numero per chiamare da un'applicazione (A2P) o da un agente umano (P2P).
- Chiamata: consente di determinare le funzionalità di chiamata desiderate per il numero di telefono: effettuare chiamate e/o ricevere chiamate.
- SMS: si tratta di determinare le funzionalità SMS desiderate per il numero di telefono: invio e/o ricezione di messaggi SMS.
- Personalizzato: è anche possibile aggiungere filtri personalizzati per ottenere un determinato prefisso o un determinato set di cifre nel numero di telefono.
Dopo aver trovato il numero di telefono o i numeri a scelta, selezionare Aggiungi al carrello per contenere i numeri nel carrello telefonia. Questi numeri vengono mantenuti per 16 minuti prima che il carrello venga cancellato automaticamente.
Nota
I prezzi indicati sono gli addebiti ricorrenti mensili che coprono il costo del leasing del numero di telefono selezionato. Non incluso in questa visualizzazione sono i costi con pagamento in base al consumo che vengono addebitati quando si effettuano o si ricevono chiamate. I listini prezzi sono disponibili qui. Questi costi dipendono dal tipo di numero e dalle destinazioni chiamate. Ad esempio, il prezzo al minuto per una chiamata da un numero locale di Seattle a un numero locale di New York può essere diverso da quello per una chiamata dallo stesso numero a un numero di cellulare del Regno Unito.
Selezionare Avanti per esaminare l'acquisto. Per completare l'acquisto, selezionare Acquista adesso.
È possibile trovare i numeri acquistati nella pagina Numeri di telefono . Il provisioning dei numeri potrebbe richiedere alcuni minuti.
Aggiornare le funzionalità dei numeri di telefono
Nella pagina Numeri di telefono è possibile selezionare un numero di telefono per configurarlo.
Selezionare le funzionalità nelle opzioni disponibili, quindi selezionare Salva per applicare la selezione.
Numero di telefono di rilascio
Nella pagina Numeri è possibile rilasciare numeri di telefono.
Selezionare il numero di telefono da rilasciare e quindi fare clic sul pulsante Rilascio .
Prerequisiti
Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
Installare l'interfaccia della riga di comando di Azure.
Numero di telefono acquistato.
Configurazione
Aggiungere l'estensione
Aggiungere l'estensione Servizi di comunicazione di Azure per l'interfaccia della riga di comando di Azure usando il comando az extension
.
az extension add --name communication
Accedere all'interfaccia della riga di comando di Azure
Sarà necessario accedere all'interfaccia della riga di comando di Azure. È possibile accedere eseguendo il comando az login
dal terminale e specificando le credenziali.
Operazioni
Elencare i numeri di telefono acquistati
Eseguire il comando seguente per recuperare tutti i numeri di telefono acquistati.
az communication phonenumber list --connection-string "<yourConnectionString>"
Sostituire questa sostituzione nel codice:
- Sostituire
<yourConnectionString>
con la stringa di connessione.
Ottenere i dettagli del numero di telefono acquistato
Eseguire il comando seguente per ottenere i dettagli del numero di telefono per un numero di telefono acquistato.
az communication phonenumber show --phonenumber <purchasedPhoneNumber> --connection-string "<yourConnectionString>"
Effettuare queste sostituzioni nel codice:
- Sostituire
<purchasedPhoneNumber>
con un numero di telefono associato alla risorsa di Servizi di comunicazione. - Sostituire
<yourConnectionString>
con la stringa di connessione.
Nota
L'opzione dell'interfaccia della riga di comando di Azure offre funzionalità solo per la presentazione e la visualizzazione dei numeri di telefono. Non supporta altre operazioni, ad esempio la ricerca, l'acquisto, la modifica o il rilascio di numeri di telefono.
(Facoltativo) Usare le operazioni dei numeri di telefono dell'interfaccia della riga di comando di Azure senza passare un stringa di connessione
È possibile configurare la AZURE_COMMUNICATION_CONNECTION_STRING
variabile di ambiente per usare le operazioni dei numeri di telefono dell'interfaccia della riga di comando di Azure senza dover usare --connection_string
per passare il stringa di connessione. Per configurare una variabile di ambiente, aprire una finestra della console e selezionare il sistema operativo dalle schede seguenti. Sostituire <yourConnectionString>
con la stringa di connessione effettiva.
Aprire una finestra della console e immettere il comando seguente:
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
Dopo l'aggiunta della variabile di ambiente potrebbe essere necessario riavviare eventuali programmi in esecuzione che necessitano di leggere la variabile di ambiente, inclusa la finestra della console. Se ad esempio si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.
Nota
Trova il codice definitivo per questa guida introduttiva su GitHub
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
- La libreria client .NET Core più recente per il sistema operativo.
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
Controllo dei prerequisiti
- In una finestra del terminale o di comando eseguire il comando
dotnet
per verificare se la libreria client .NET è installata.
Configurazione
Creare una nuova applicazione C#
In una finestra di una console, ad esempio cmd, PowerShell o Bash, usare il comando dotnet new
per creare una nuova app console con il nome PhoneNumbersQuickstart
. Questo comando crea un semplice progetto C# "Hello World" con un singolo file di origine: Program.cs.
dotnet new console -o PhoneNumbersQuickstart
Passare alla cartella dell'app appena creata e usare il comando dotnet build
per compilare l'applicazione.
cd PhoneNumbersQuickstart
dotnet build
Installare il pacchetto
Sempre nella directory dell'applicazione, installare la libreria client PhoneNumbers di Azure per il pacchetto .NET usando il dotnet add package
comando .
dotnet add package Azure.Communication.PhoneNumbers --version 1.0.0
Aggiungere una using
direttiva all'inizio di Program.cs per includere il namespace.
using System;
using System.Linq;
using System.Threading.Tasks;
using Azure.Communication.PhoneNumbers;
Aggiornare Main
la firma della funzione come asincrona.
static async Task Main(string[] args)
{
...
}
Autenticare il client
I clienti dei numeri di telefono possono essere autenticati usando la stringa di connessione acquisita da risorse dei servizi di comunicazione di Azure nel portale di Azure.
// Get a connection string to our Azure Communication Services resource.
var connectionString = "<connection_string>";
var client = new PhoneNumbersClient(connectionString);
I client numero di telefono hanno anche la possibilità di eseguire l'autenticazione con l'autenticazione di Microsoft Entra. Con questa opzione, AZURE_CLIENT_SECRET
AZURE_CLIENT_ID
e AZURE_TENANT_ID
le variabili di ambiente devono essere configurate per l'autenticazione.
// Get an endpoint to our Azure Communication Services resource.
var endpoint = new Uri("<endpoint_url>");
TokenCredential tokenCredential = new DefaultAzureCredential();
client = new PhoneNumbersClient(endpoint, tokenCredential);
Gestire i numeri di telefono
Cercare i numeri di telefono disponibili
Per acquistare numeri di telefono, è prima necessario cercare i numeri di telefono disponibili. Per cercare numeri di telefono, specificare il codice di area, il tipo di assegnazione, le funzionalità del numero di telefono, il tipo di numero di telefono e la quantità. Si noti che per il tipo di numero di telefono verde, specificando il codice di area è facoltativo.
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();
Acquistare numeri di telefono
Il risultato della ricerca di numeri di telefono è .PhoneNumberSearchResult
Contiene un oggetto SearchId
che può essere passato all'API dei numeri di acquisto per acquisire i numeri nella ricerca. Si noti che la chiamata all'API dei numeri di telefono di acquisto comporterà un addebito per l'account Azure.
var purchaseOperation = await client.StartPurchasePhoneNumbersAsync(searchOperation.Value.SearchId);
await purchaseOperation.WaitForCompletionResponseAsync();
Ottenere i numeri di telefono
Dopo un numero di acquisto, è possibile recuperarlo dal client.
var getPhoneNumberResponse = await client.GetPurchasedPhoneNumberAsync("+14255550123");
Console.WriteLine($"Phone number: {getPhoneNumberResponse.Value.PhoneNumber}, country code: {getPhoneNumberResponse.Value.CountryCode}");
È anche possibile recuperare tutti i numeri di telefono acquistati.
var purchasedPhoneNumbers = client.GetPurchasedPhoneNumbersAsync();
await foreach (var purchasedPhoneNumber in purchasedPhoneNumbers)
{
Console.WriteLine($"Phone number: {purchasedPhoneNumber.PhoneNumber}, country code: {purchasedPhoneNumber.CountryCode}");
}
Aggiornare le funzionalità dei numeri di telefono
Con un numero acquistato, è possibile aggiornare le funzionalità.
var updateCapabilitiesOperation = await client.StartUpdateCapabilitiesAsync("+14255550123", calling: PhoneNumberCapabilityType.Outbound, sms: PhoneNumberCapabilityType.InboundOutbound);
await updateCapabilitiesOperation.WaitForCompletionAsync();
Numero di telefono di rilascio
È possibile rilasciare un numero di telefono acquistato.
var releaseOperation = await client.StartReleasePhoneNumberAsync("+14255550123");
await releaseOperation.WaitForCompletionResponseAsync();
Eseguire il codice
Eseguire l'applicazione dalla directory dell'applicazione con il comando dotnet run
.
dotnet run
Codice di esempio
È possibile scaricare l'app di esempio da GitHub
Nota
Trova il codice definitivo per questa guida introduttiva su GitHub
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
- Java Development Kit (JDK) versione 8 o successiva.
- Apache Maven.
- Una risorsa di Servizi di comunicazione distribuita e una stringa di connessione. Creare una risorsa di Servizi di comunicazione.
Configurazione
Creare una nuova applicazione Java
Aprire la finestra del terminale o di comando. Passare alla directory in cui creare l'applicazione Java. Eseguire il comando seguente per generare il progetto Java dal modello maven-archetype-quickstart.
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
Si noterà che l'attività 'generate' ha creato una directory con lo stesso nome di artifactId
. In questa directory, la directory src/main/java contiene il codice sorgente del progetto, la directory src/test/java directory
contiene l'origine di test e il file pom.xml
è il modello a oggetti del progetto o POM.
Installare il pacchetto
Aprire il filepom.xml nell'editor di testo. Aggiungere gli elementi di dipendenza seguenti al gruppo di dipendenze.
<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>
Configurare il framework dell'app
Dalla directory del progetto:
- Passare alla directory /src/main/java/com/communication/quickstart
- Aprire il file App.java nell'editor
- Sostituire l'istruzione
System.out.println("Hello world!");
- Aggiungere le direttive
import
Per iniziare, usare il codice seguente:
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
}
}
Autenticare il client numeri di telefono
PhoneNumberClientBuilder è abilitato per l'uso dell'autenticazione di 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();
In alternativa, è possibile usare l'endpoint e la chiave di accesso dalla risorsa di comunicazione per l'autenticazione.
// 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();
Gestire i numeri di telefono
Cercare i numeri di telefono disponibili
Per acquistare numeri di telefono, è prima necessario cercare i numeri di telefono disponibili. Per cercare numeri di telefono, specificare il codice di area, il tipo di assegnazione, le funzionalità del numero di telefono, il tipo di numero di telefono e la quantità. Si noti che per il tipo di numero di telefono verde, specificando il codice di area è facoltativo.
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());
}
Acquistare numeri di telefono
Il risultato della ricerca di numeri di telefono è phoneNumberSearchResult. Contiene un oggetto searchId
che può essere passato all'API dei numeri di acquisto per acquisire i numeri nella ricerca. Si noti che la chiamata all'API dei numeri di telefono di acquisto comporterà un addebito per l'account Azure.
PollResponse<PhoneNumberOperation> purchaseResponse = phoneNumberClient.beginPurchasePhoneNumbers(searchId, Context.NONE).waitForCompletion();
System.out.println("Purchase phone numbers operation is: " + purchaseResponse.getStatus());
Ottenere i numeri di telefono
Dopo un numero di acquisto, è possibile recuperarlo dal client.
PurchasedPhoneNumber phoneNumber = phoneNumberClient.getPurchasedPhoneNumber("+14255550123");
System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
È anche possibile recuperare tutti i numeri di telefono acquistati.
PagedIterable<PurchasedPhoneNumber> phoneNumbers = phoneNumberClient.listPurchasedPhoneNumbers(Context.NONE);
PurchasedPhoneNumber phoneNumber = phoneNumbers.iterator().next();
System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
Aggiornare le funzionalità dei numeri di telefono
Con un numero acquistato, è possibile aggiornare le funzionalità.
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
}
Numero di telefono di rilascio
È possibile rilasciare un numero di telefono acquistato.
PollResponse<PhoneNumberOperation> releaseResponse =
phoneNumberClient.beginReleasePhoneNumber("+14255550123", Context.NONE).waitForCompletion();
System.out.println("Release phone number operation is: " + releaseResponse.getStatus());
Eseguire il codice
Passare alla directory contenente il file pom.xml e compilare il progetto usando il comando seguente mvn
.
mvn compile
Compilare il pacchetto.
mvn package
Eseguire il comando mvn
seguente per eseguire l'app.
mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false
L'output dell'app descrive ogni azione completata:
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
Nota
Trova il codice definitivo per questa guida introduttiva su GitHub
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
- Python 3.7+.
- Una risorsa di Servizi di comunicazione distribuita e una stringa di connessione. Creare una risorsa di Servizi di comunicazione.
Configurazione
Creare una nuova applicazione Python
Aprire il terminale o la finestra di comando e creare una nuova directory per l'app, quindi passarvi.
mkdir phone-numbers-quickstart && cd phone-numbers-quickstart
Usare un editor di testo per creare un file denominato phone_numbers_sample.py nella directory radice del progetto e aggiungere il codice seguente. Nelle sezioni seguenti verrà aggiunto il codice di avvio rapido rimanente.
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)
Installare il pacchetto
Rimanendo nella directory dell'applicazione, installare la libreria client per gli SMS di Servizi di comunicazione di Azure per il pacchetto Python usando il comando pip install
.
pip install azure-communication-phonenumbers
Autenticare il client numeri di telefono
PhoneNumbersClient
è abilitato per l'uso dell'autenticazione di Microsoft Entra. L'uso dell'oggetto DefaultAzureCredential
è il modo più semplice per iniziare a usare Microsoft Entra ID ed è possibile installarlo usando il pip install
comando .
pip install azure-identity
La creazione di un DefaultAzureCredential
oggetto richiede l'impostazione AZURE_CLIENT_ID
di , AZURE_CLIENT_SECRET
e AZURE_TENANT_ID
già impostata come variabili di ambiente con i valori corrispondenti dell'applicazione Microsoft Entra registrata.
Per un rapido avvio su come ottenere queste variabili di ambiente, è possibile seguire la Guida rapida per configurare i principali di servizio dalla CLI.
Dopo aver installato la azure-identity
libreria, è possibile continuare a autenticare il 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)
In alternativa, è possibile usare l'endpoint e la chiave di accesso dalla risorsa di comunicazione per l'autenticazione.
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)
Funzioni
Dopo aver eseguito l'autenticazione PhoneNumbersClient
, è possibile iniziare a lavorare sulle diverse funzioni che può eseguire.
Cercare i numeri di telefono disponibili
Per acquistare numeri di telefono, è prima necessario cercare tutti i numeri di telefono disponibili. Per cercare numeri di telefono, specificare il codice di area, il tipo di assegnazione, le funzionalità del numero di telefono, il tipo di numero di telefono e la quantità (la quantità predefinita è impostata su 1). Si noti che per il tipo di numero di telefono verde, specificando il codice di area è facoltativo.
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)
Acquistare numeri di telefono
Il risultato della ricerca di numeri di telefono è .PhoneNumberSearchResult
Contiene un oggetto searchId
che può essere passato all'API dei numeri di acquisto per acquisire i numeri nella ricerca. Si noti che la chiamata all'API dei numeri di telefono di acquisto comporterà un addebito per l'account 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)
Ottenere i numeri di telefono acquistati
Dopo un numero di acquisto, è possibile recuperarlo dal 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)
È anche possibile recuperare tutti i numeri di telefono acquistati.
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)
Aggiornare le funzionalità dei numeri di telefono
È possibile aggiornare le funzionalità di un numero di telefono acquistato in precedenza.
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())
Numero di telefono di rilascio
È possibile rilasciare un numero di telefono acquistato.
release_poller = phone_numbers_client.begin_release_phone_number("+18001234567")
release_poller.result()
print('Status of the operation: ' + release_poller.status())
Eseguire il codice
Da un prompt della console passare alla directory contenente il file phone_numbers_sample.py, quindi eseguire il comando Python seguente per eseguire l'app.
python phone_numbers_sample.py
Nota
Trova il codice definitivo per questa guida introduttiva su GitHub
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare gratuitamente un account.
- Node.js Versioni attive di LTS e di manutenzione LTS (sono consigliate 8.11.1 e 10.14.1).
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
Controllo dei prerequisiti
- In un terminale o una finestra di comando eseguire
node --version
per verificare che Node.js sia installato.
Configurazione
Creare una nuova applicazione Node.js
Aprire prima di tutto il terminale o la finestra di comando per creare una nuova directory per l'app e passare a tale directory.
mkdir phone-numbers-quickstart && cd phone-numbers-quickstart
Eseguire npm init -y
per creare un filepackage.json con le impostazioni predefinite.
npm init -y
Creare un file denominato phone-numbers-quickstart.js nella radice della directory appena creata. Aggiungere il frammento di codice seguente:
async function main() {
// quickstart code will here
}
main();
Installare il pacchetto
Usare il npm install
comando per installare la libreria client Servizi di comunicazione di Azure Numeri di telefono per JavaScript.
npm install @azure/communication-phone-numbers --save
L'opzione --save
aggiunge la libreria come dipendenza nel file package.json .
Autenticare il client
Importa PhoneNumbersClient dalla libreria client e istanzialo con la tua stringa di connessione. Il codice seguente recupera la stringa di connessione per la risorsa da una variabile di ambiente denominata COMMUNICATION_SERVICES_CONNECTION_STRING
. Informazioni su come gestire la stringa di connessione della risorsa.
Aggiungere il codice seguente all'inizio di 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);
Gestire i numeri di telefono
Cercare i numeri di telefono disponibili
Per acquistare numeri di telefono, è prima necessario cercare i numeri di telefono disponibili. Per cercare numeri di telefono, specificare il codice di area, il tipo di assegnazione, le funzionalità del numero di telefono, il tipo di numero di telefono e la quantità. Si noti che per il tipo di numero di telefono verde, specificando il codice di area è facoltativo.
Aggiungere il frammento di codice seguente alla main
funzione:
/**
* 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}`);
Acquistare il numero di telefono
Il risultato della ricerca di numeri di telefono è .PhoneNumberSearchResult
Contiene un oggetto searchId
che può essere passato all'API dei numeri di acquisto per acquisire i numeri nella ricerca. Si noti che la chiamata all'API dei numeri di telefono di acquisto comporterà un addebito per l'account Azure.
Aggiungere il frammento di codice seguente alla main
funzione:
/**
* Purchase Phone Number
*/
const purchasePoller = await phoneNumbersClient.beginPurchasePhoneNumbers(searchId);
// Purchase is underway.
await purchasePoller.pollUntilDone();
console.log(`Successfully purchased ${phoneNumber}`);
Aggiornare le funzionalità dei numeri di telefono
Dopo avere acquistato un numero di telefono, aggiungere il codice seguente per aggiornarne le funzionalità:
/**
* 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.");
Ottenere i numeri di telefono acquistati
Dopo un numero di acquisto, è possibile recuperarlo dal client. Aggiungere il codice seguente alla main
funzione per ottenere il numero di telefono appena acquistato:
/**
* Get Purchased Phone Number
*/
const { capabilities } = await phoneNumbersClient.getPurchasedPhoneNumber(phoneNumber);
console.log("These capabilities:", capabilities, "should be the same as these:", updateRequest, ".");
È anche possibile recuperare tutti i numeri di telefono acquistati.
const purchasedPhoneNumbers = await phoneNumbersClient.listPurchasedPhoneNumbers();
for await (const purchasedPhoneNumber of purchasedPhoneNumbers) {
console.log(`Phone number: ${purchasedPhoneNumber.phoneNumber}, country code: ${purchasedPhoneNumber.countryCode}.`);
}
Numero di telefono di rilascio
È ora possibile rilasciare il numero di telefono acquistato. Aggiungere il frammento di codice seguente alla main
funzione:
/**
* Release Purchased Phone Number
*/
const releasePoller = await phoneNumbersClient.beginReleasePhoneNumber(phoneNumber);
// Release is underway.
await releasePoller.pollUntilDone();
console.log("Successfully release phone number.");
Eseguire il codice
Usare il node
comando per eseguire il codice aggiunto al file phone-numbers-quickstart.js .
node phone-numbers-quickstart.js
Risoluzione dei problemi
Domande e problemi comuni:
Quando viene rilasciato un numero di telefono, il numero di telefono viene visualizzato nella risorsa ACS in portale di Azure fino alla fine del ciclo di fatturazione. Non può anche essere riacquistato fino alla fine del ciclo di fatturazione.
Quando una risorsa di Servizi di comunicazione viene eliminata, i numeri di telefono associati a tale risorsa vengono rilasciati automaticamente contemporaneamente.
Passaggi successivi
In questo argomento di avvio rapido si è appreso come:
- Acquistare un numero di telefono
- Gestire il numero di telefono
- Rilasciare un numero di telefono
- Invia una richiesta di verifica gratuita (vedere se necessario)