Snabbstart: Hämta och hantera telefonnummer
Viktigt
Telefon antal är för närvarande begränsat till Azure-prenumerationer som har en faktureringsadress i USA (inklusiveFältet), Storbritannien eller Irland. Mer information finns i dokumentationen om Telefon-nummertyper.
Viktigt
För beställningar med stora volymer eller om önskat telefonnummer inte är tillgängligt fyller du i det här formuläret och skickar det via e-post med en ämnesrad som börjar med acstnrequest@microsoft.com "ACS-nummerbegäran:".
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services resurs.
Hämta ett telefonnummer
Börja etablera nummer genom att gå till Communication Services resurs på Azure Portal.
Sök efter Tillgängliga Telefon nummer
Gå till Telefon bladet Siffror på resursmenyn.
Tryck på knappen Hämta för att starta guiden. Guiden på bladet Telefon visar en serie frågor som hjälper dig att välja det telefonnummer som passar bäst för ditt scenario.
Du måste först välja land/region där du vill etablera telefonnumret. När du har valt Land/region måste du välja användningsfallet som bäst passar dina behov.
Välj funktioner för ditt telefonnummer
Konfigurationen av ditt telefonnummer är uppdelad i två steg:
- Valet av nummertyp
- Valet av nummerfunktioner
Du kan välja mellan två typer av telefonnummer: Lokal och Kostnadsfritt. När du har valt en nummertyp kan du sedan välja funktionen.
I vårt exempel har vi valt en nummertyp utan kostnad med funktionerna Gör anrop och Skicka och ta emot SMS.
Härifrån klickar du på knappen Nästa: Siffror längst ned på sidan för att anpassa de telefonnummer som du vill etablera.
Anpassa telefonnummer
På sidan Nummer anpassar du de telefonnummer som du vill etablera.
Anteckning
Den här snabbstarten visar anpassningsflödet för typen Av kostnadsfritt nummer. Upplevelsen kan vara något annorlunda om du har valt typen Lokalt nummer, men slutresultatet blir detsamma.
Välj Områdeskod i listan över tillgängliga areakoder och ange den kvantitet som du vill etablera. Klicka sedan på Sök för att hitta tal som uppfyller dina valda krav. De telefonnummer som uppfyller dina behov visas tillsammans med månadskostnaden.
Anteckning
Tillgängligheten beror på nummertyp, plats och de funktioner som du har valt. Nummer reserveras en kort tid innan transaktionen upphör att gälla. Om transaktionen upphör att gälla måste du välja om siffrorna.
Om du vill visa inköpssammanfattningen och göra din beställning klickar du på knappen Nästa: Sammanfattning längst ned på sidan.
Köp Telefon nummer
Sammanfattningssidan visar nummertyp, funktioner, Telefon nummer och total månadskostnad för att etablera telefonnumren.
Anteckning
De priser som visas är de månatliga återkommande avgifterna som täcker kostnaden för att leasa det valda telefonnumret till dig. Inte inkluderad i den här vyn är de betala-enligt-kostnader som uppstår när du gör eller tar emot anrop. Prislistorna finns här. Dessa kostnader beror på nummertyp och mål som anropas. Till exempel kan pris per minut för ett samtal från ett regionalt Seattle-nummer till ett regionalt nummer i New York och ett anrop från samma nummer till ett mobilnummer i Storbritannien vara annorlunda.
Klicka slutligen på Placera ordning längst ned på sidan för att bekräfta.
Hitta dina telefonnummer på Azure Portal
Gå till Azure Communication Services resurs på Azure Portal:
Välj bladet Telefon nummer på menyn för att hantera dina telefonnummer.
Anteckning
Det kan ta några minuter innan de etablerade siffrorna visas på den här sidan.
Uppdatera Telefon för antal
På sidan Telefon nummer kan du välja ett telefonnummer för att konfigurera det.
Välj funktionerna bland de tillgängliga alternativen och klicka sedan på Spara för att tillämpa ditt val.
Versionsnummer Telefon version
På sidan Nummer kan du släppa telefonnummer.
Välj det telefonnummer som du vill släppa och klicka sedan på knappen Släpp.
Anteckning
Hitta den färdiga koden för den här snabbstarten på GitHub
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Den senaste versionen av .NET Core-klientbiblioteket för ditt operativsystem.
- En aktiv Communication Services resurs och anslutningssträng. Skapa en Communication Services resurs.
Kravkontroll
- I en terminal eller ett kommandofönster kör du
dotnetkommandot för att kontrollera att .NET-klientbiblioteket är installerat.
Inrätta
Skapa ett nytt C#-program
I ett konsolfönster (till exempel cmd, PowerShell eller Bash) använder du kommandot för att skapa en ny dotnet new konsolapp med namnet PhoneNumbersQuickstart . Det här kommandot skapar ett enkelt "Hello World" C#-projekt med en enda källfil: Program.cs.
dotnet new console -o PhoneNumbersQuickstart
Ändra katalogen till den nyligen skapade appmappen och använd kommandot dotnet build för att kompilera programmet.
cd PhoneNumbersQuickstart
dotnet build
Installera paketet
När du fortfarande är i programkatalogen installerar du Azure Communication PhoneNumbers-klientbiblioteket för .NET-paketet med hjälp av dotnet add package kommandot .
dotnet add package Azure.Communication.PhoneNumbers --version 1.0.0
Lägg till using ett -direktiv överst i Program.cs för att inkludera namnrymderna.
using System;
using System.Linq;
using System.Threading.Tasks;
using Azure.Communication.PhoneNumbers;
Uppdatera Main funktionssignaturen så att den är asynkron.
static async Task Main(string[] args)
{
...
}
Autentisera klienten
Telefon Number-klienter kan autentiseras med hjälp av en anslutningssträng som har köpts från Azure Communication Services resurser i [Azure Portal][azure_portal].
// Get a connection string to our Azure Communication Services resource.
var connectionString = "<connection_string>";
var client = new PhoneNumbersClient(connectionString);
Telefon Number-klienter har också möjlighet att autentisera med Azure Active Directory autentisering. Med det här AZURE_CLIENT_SECRET alternativet AZURE_CLIENT_ID måste AZURE_TENANT_ID miljövariablerna , och konfigureras för autentisering.
// Get an endpoint to our Azure Communication Services resource.
var endpoint = new Uri("<endpoint_url>");
TokenCredential tokenCredential = new DefaultAzureCredential();
client = new PhoneNumbersClient(endpoint, tokenCredential);
Hantera telefonnummer
Sök efter tillgängliga telefonnummer
För att kunna köpa telefonnummer måste du först söka efter tillgängliga telefonnummer. Om du vill söka efter telefonnummer anger du områdeskod, tilldelningstyp, telefonnummerfunktioner, telefonnummertypoch kvantitet. Observera att för typen av kostnadsfritt telefonnummer är det valfritt att ange områdeskoden.
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();
Köp telefonnummer
Resultatet av att söka efter telefonnummer är PhoneNumberSearchResult en . Detta innehåller en SearchId som kan skickas till API:et för köpnummer för att hämta talen i sökningen. Observera att om du anropar API:et för inköpstelefonnummer debiteras ditt Azure-konto.
var purchaseOperation = await client.StartPurchasePhoneNumbersAsync(searchOperation.Value.SearchId);
await purchaseOperation.WaitForCompletionResponseAsync();
Hämta telefonnummer
Efter ett inköpsnummer kan du hämta det från klienten.
var getPhoneNumberResponse = await client.GetPurchasedPhoneNumberAsync("+14255550123");
Console.WriteLine($"Phone number: {getPhoneNumberResponse.Value.PhoneNumber}, country code: {getPhoneNumberResponse.Value.CountryCode}");
Du kan också hämta alla köpta telefonnummer.
var purchasedPhoneNumbers = client.GetPurchasedPhoneNumbersAsync();
await foreach (var purchasedPhoneNumber in purchasedPhoneNumbers)
{
Console.WriteLine($"Phone number: {purchasedPhoneNumber.PhoneNumber}, country code: {purchasedPhoneNumber.CountryCode}");
}
Funktioner för att uppdatera telefonnummer
Med ett köpt nummer kan du uppdatera funktionerna.
var updateCapabilitiesOperation = await client.StartUpdateCapabilitiesAsync("+14255550123", calling: PhoneNumberCapabilityType.Outbound, sms: PhoneNumberCapabilityType.InboundOutbound);
await updateCapabilitiesOperation.WaitForCompletionAsync();
Utgivningstelefonnummer
Du kan släppa ett köpt telefonnummer.
var releaseOperation = await client.StartReleasePhoneNumberAsync("+14255550123");
await releaseOperation.WaitForCompletionResponseAsync();
Kör koden
Kör programmet från programkatalogen med dotnet run kommandot .
dotnet run
Exempelkod
Du kan ladda ned exempelappen från GitHub
Anteckning
Hitta den färdiga koden för den här snabbstarten på GitHub
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Java Development Kit (JDK) version 8 eller senare.
- Apache Maven.- En distribuerad Communication Services resurs och anslutningssträng. Skapa en Communication Services resurs.
Inrätta
Skapa ett nytt Java-program
Öppna terminalen eller kommandofönstret. Gå till katalogen där du vill skapa Java-programmet. Kör kommandot nedan för att generera Java-projektet från mallen maven-archetype-quickstart.
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
Du ser att aktiviteten "generate" skapade en katalog med samma namn som artifactId . Under den här katalogen innehåller katalogen src/main/java projektkällkoden, innehåller testkällan och filen är projektets src/test/java directory Project Object Model eller pom.xml POM.
Installera paketet
Öppna pom.xml i textredigeraren. Lägg till följande beroendeelement i gruppen med beroenden.
<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>
Konfigurera appramverket
Från projektkatalogen:
- Gå till katalogen /src/main/java/com/communication/quickstart
- Öppna filen App.java i redigeringsredigeraren
- Ersätt
System.out.println("Hello world!");-instruktionen - Lägga till
importdirektiv
Använd följande kod för att börja:
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
}
}
Autentisera Telefon numbers-klienten
PhoneNumberClientBuilder har aktiverats för att använda Azure Active Directory autentisering
// 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();
Du kan också använda slutpunkten och åtkomstnyckeln från kommunikationsresursen för att autentisera.
// 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();
Hantera Telefon nummer
Sök efter tillgängliga Telefon nummer
För att kunna köpa telefonnummer måste du först söka efter tillgängliga telefonnummer. Om du vill söka efter telefonnummer anger du områdeskod, tilldelningstyp, telefonnummerfunktioner, telefonnummertypoch kvantitet. Observera att för typen av kostnadsfritt telefonnummer är det valfritt att ange områdeskoden.
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());
}
Inköpsnummer Telefon köp
Resultatet av att söka efter telefonnummer är PhoneNumberSearchResult. Detta innehåller en searchId som kan skickas till API:et för köpnummer för att hämta talen i sökningen. Observera att om du anropar API:et för inköpstelefonnummer debiteras ditt Azure-konto.
PollResponse<PhoneNumberOperation> purchaseResponse = phoneNumberClient.beginPurchasePhoneNumbers(searchId, Context.NONE).waitForCompletion();
System.out.println("Purchase phone numbers operation is: " + purchaseResponse.getStatus());
Hämta Telefon(er)
Efter ett inköpsnummer kan du hämta det från klienten.
PurchasedPhoneNumber phoneNumber = phoneNumberClient.getPurchasedPhoneNumber("+14255550123");
System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
Du kan också hämta alla köpta telefonnummer.
PagedIterable<PurchasedPhoneNumber> phoneNumbers = phoneNumberClient.listPurchasedPhoneNumbers(Context.NONE);
PurchasedPhoneNumber phoneNumber = phoneNumbers.iterator().next();
System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
Funktioner Telefon Uppdateringsnummer
Med ett köpt nummer kan du uppdatera funktionerna.
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
}
Versionsnummer Telefon version
Du kan släppa ett köpt telefonnummer.
PollResponse<PhoneNumberOperation> releaseResponse =
phoneNumberClient.beginReleasePhoneNumber("+14255550123", Context.NONE).waitForCompletion();
System.out.println("Release phone number operation is: " + releaseResponse.getStatus());
Kör koden
Navigera till katalogen som innehåller pom.xml och kompilera projektet med hjälp av följande mvn kommando.
mvn compile
Skapa sedan paketet.
mvn package
Kör följande mvn kommando för att köra appen.
mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false
Appens utdata beskriver varje åtgärd som har slutförts:
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
Anteckning
Hitta den färdiga koden för den här snabbstarten på GitHub
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Python 2.7, 3.5 eller högre.
- En distribuerad Communication Services resurs och anslutningssträng. Skapa en Communication Services resurs.
Inrätta
Skapa ett nytt Python-program
Öppna terminal- eller kommandofönstret och skapa en ny katalog för din app och navigera sedan till den.
mkdir phone-numbers-quickstart && cd phone-numbers-quickstart
Använd en textredigerare för att skapa en fil med namnet phone_numbers_sample.py i projektets rotkatalog och lägg till följande kod. Vi kommer att lägga till den återstående snabbstartskoden i följande avsnitt.
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)
Installera paketet
När du fortfarande är i programkatalogen installerar du Azure Communication Services Administration-klientbiblioteket för Python-paketet med hjälp av pip install kommandot .
pip install azure-communication-phonenumbers
Autentisera Telefon numbers-klienten
PhoneNumbersClientär aktiverat för att använda Azure Active Directory autentisering. Att använda DefaultAzureCredential objektet är det enklaste sättet att komma igång Azure Active Directory och du kan installera det med pip install kommandot .
pip install azure-identity
När du skapar ett -objekt måste du ha , och redan angett som miljövariabler med DefaultAzureCredential motsvarande värden från ditt registrerade Azure AZURE_CLIENT_ID AZURE_CLIENT_SECRET AZURE_TENANT_ID AD-program.
Om du vill ha en snabb översikt över hur du hämtar dessa miljövariabler kan du följa snabbstarten Konfigurera tjänstens huvudnamn från CLI.
När du har installerat azure-identity biblioteket kan vi fortsätta autentisera klienten.
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)
Du kan också använda slutpunkten och åtkomstnyckeln från kommunikationsresursen för att autentisera.
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)
Functions
När PhoneNumbersClient har autentiserats kan vi börja arbeta med de olika funktioner som den kan göra.
Sök efter Tillgängliga Telefon nummer
För att kunna köpa telefonnummer måste du först söka efter tillgängliga telefonnummer. Om du vill söka efter telefonnummer anger du områdeskod, tilldelningstyp, telefonnummerfunktioner, telefonnummertyp och kvantitet (standardkvantiteten är inställd på 1). Observera att för den kostnadsfria telefonnummertypen är det valfritt att ange områdeskoden.
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)
Köp Telefon nummer
Resultatet av att söka efter telefonnummer är PhoneNumberSearchResult en . Detta innehåller en searchId som kan skickas till API:et för köpnummer för att hämta talen i sökningen. Observera att om du anropar API:et för inköpstelefonnummer debiteras ditt Azure-konto.
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)
Hämta köpta telefonnummer
Efter ett inköpsnummer kan du hämta det från klienten.
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)
Du kan också hämta alla köpta telefonnummer.
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)
Uppdatera Telefon för antal
Du kan uppdatera funktionerna i ett tidigare köpt telefonnummer.
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())
Versionsnummer Telefon version
Du kan släppa ett köpt telefonnummer.
release_poller = phone_numbers_client.begin_release_phone_number("+18001234567")
release_poller.result()
print('Status of the operation: ' + release_poller.status())
Kör koden
Gå till katalogen som innehåller filen phone_numbers_sample.py från en konsolfråga och kör sedan följande python-kommando för att köra appen.
python phone_numbers_sample.py
Anteckning
Hitta den färdiga koden för den här snabbstarten på GitHub
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Node.js Versionerna Active LTS och Maintenance LTS (8.11.1 och 10.14.1 rekommenderas).
- En aktiv Communication Services resurs och anslutningssträng. Skapa en Communication Services resurs.
Kravkontroll
- I en terminal eller ett kommandofönster kör du
node --versionför att kontrollera Node.js har installerats.
Inrätta
Skapa ett nytt Node.js program
Öppna först terminal- eller kommandofönstret, skapa en ny katalog för appen och navigera till den.
mkdir phone-numbers-quickstart && cd phone-numbers-quickstart
Kör npm init -y för att skapa en package.json-fil med standardinställningar.
npm init -y
Skapa en fil med phone-numbers-quickstart.js i roten av den katalog som du nyss skapade. Lägg till följande kodfragment i det:
async function main() {
// quickstart code will here
}
main();
Installera paketet
Använd kommandot npm install för att installera Azure Communication Services Telefon Numbers-klientbiblioteket för JavaScript.
npm install @azure/communication-phone-numbers --save
Alternativet --save lägger till biblioteket som ett beroende i filen package.json.
Autentisera klienten
Importera PhoneNumbersClient från klientbiblioteket och instantiera den med anslutningssträngen. Koden nedan hämtar anslutningssträngen för resursen från en miljövariabel med namnet COMMUNICATION_SERVICES_CONNECTION_STRING . Lär dig hur du hanterar resursens anslutningssträng.
Lägg till följande kod överst i 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);
Hantera telefonnummer
Sök efter tillgängliga telefonnummer
För att kunna köpa telefonnummer måste du först söka efter tillgängliga telefonnummer. Om du vill söka efter telefonnummer anger du områdeskod, tilldelningstyp, telefonnummerfunktioner, telefonnummertypoch kvantitet. Observera att för typen av kostnadsfritt telefonnummer är det valfritt att ange områdeskoden.
Lägg till följande kodfragment i main funktionen:
/**
* 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}`);
Telefonnummer för köp
Resultatet av att söka efter telefonnummer är PhoneNumberSearchResult en . Detta innehåller en searchId som kan skickas till API:et för köpnummer för att hämta talen i sökningen. Observera att om du anropar API:et för inköpstelefonnummer debiteras ditt Azure-konto.
Lägg till följande kodfragment i main funktionen:
/**
* Purchase Phone Number
*/
const purchasePoller = await phoneNumbersClient.beginPurchasePhoneNumbers(searchId);
// Purchase is underway.
await purchasePoller.pollUntilDone();
console.log(`Successfully purchased ${phoneNumber}`);
Funktioner för att uppdatera telefonnummer
När du har köpt ett telefonnummer lägger du till följande kod för att uppdatera dess funktioner:
/**
* 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.");
Skaffa köpta telefonnummer
Efter ett inköpsnummer kan du hämta det från klienten. Lägg till följande kod i funktionen main för att hämta det telefonnummer som du precis har köpt:
/**
* Get Purchased Phone Number
*/
const { capabilities } = await phoneNumbersClient.getPurchasedPhoneNumber(phoneNumber);
console.log("These capabilities:", capabilities, "should be the same as these:", updateRequest, ".");
Du kan också hämta alla köpta telefonnummer.
const purchasedPhoneNumbers = await phoneNumbersClient.listPurchasedPhoneNumbers();
for await (const purchasedPhoneNumber of purchasedPhoneNumbers) {
console.log(`Phone number: ${purchasedPhoneNumber.phoneNumber}, country code: ${purchasedPhoneNumber.countryCode}.`);
}
Utgivningstelefonnummer
Du kan nu släppa det köpta telefonnumret. Lägg till kodfragmentet nedan i main funktionen:
/**
* Release Purchased Phone Number
*/
const releasePoller = await phoneNumbersClient.beginReleasePhoneNumber(phoneNumber);
// Release is underway.
await releasePoller.pollUntilDone();
console.log("Successfully release phone number.");
Kör koden
Använd kommandot node för att köra koden som du lade till i phone-numbers-quickstart.jsfilen.
node phone-numbers-quickstart.js
Felsökning
Vanliga frågor och problem:
När ett telefonnummer släpps släpps inte telefonnumret eller kan köpas på nytt förrän faktureringsperioden är slut.
När en Communication Services resurs tas bort släpps de telefonnummer som är associerade med den resursen automatiskt samtidigt.
Nästa steg
I den här snabbstarten har du lärt dig att:
- Köpa ett telefonnummer
- Hantera ditt telefonnummer
- Släpp ett telefonnummer