Delen via


Azure Communication Administration-clientbibliotheek voor JavaScript - versie 1.0.0-beta.3

De beheerbibliotheek wordt gebruikt voor het beheren van gebruikers en tokens voor Azure Communication Services. Deze bibliotheek biedt ook mogelijkheden voor het beheer van telefoonnummers.

Aangeschafte telefoonnummers kunnen worden geleverd met veel mogelijkheden, afhankelijk van het land, het nummertype en het telefoonabonnement. Voorbeelden van mogelijkheden zijn binnenkomende en uitgaande sms-gebruik, inkomend en uitgaand pstn-gebruik. Telefoonnummers kunnen ook worden toegewezen aan een bot via een webhook-URL.

Aan de slag

Vereisten

Installeren

npm install @azure/communication-administration

Belangrijkste concepten

Clients

Het beheerpakket maakt twee clients beschikbaar. De CommunicationIdentityClient biedt methoden voor het beheren van gebruikers en hun tokens. De PhoneNumberAdministrationClient biedt methoden voor het beheren van telefoonabonnementen en nummers.

Overzicht van telefoonabonnementen

Telefoonabonnementen zijn er in twee soorten; Geografisch en gratis. Geografische telefoonabonnementen zijn telefoonabonnementen die zijn gekoppeld aan een locatie, waarvan de netnummers zijn gekoppeld aan het netnummer van een geografische locatie. Toll-Free telefoonabonnementen zijn geen gekoppelde locatie. In de VS kunnen gratis nummers bijvoorbeeld worden geleverd met netnummers zoals 800 of 888.

Alle geografische telefoonabonnementen binnen hetzelfde land worden gegroepeerd in een telefoonabonnementgroep met het type Geografisch telefoonnummer. Alle Toll-Free telefoonabonnementen binnen hetzelfde land worden gegroepeerd in een groep telefoonabonnementen.

Getallen zoeken en verkrijgen

Telefoonnummers kunnen worden gezocht via de API voor het maken van zoekopdrachten door een telefoonabonnement-id, een netnummer en het aantal telefoonnummers op te geven. Het opgegeven aantal telefoonnummers wordt tien minuten gereserveerd. Deze zoekopdracht van telefoonnummers kan worden geannuleerd of gekocht. Als de zoekopdracht wordt geannuleerd, worden de telefoonnummers beschikbaar voor anderen. Als de zoekopdracht is aangeschaft, worden de telefoonnummers verkregen voor de Azure-resources.

Nummers configureren en toewijzen

Telefoonnummers kunnen worden toegewezen aan een callback-URL via de api voor het configureren van nummers. Als onderdeel van de configuratie hebt u een verkregen telefoonnummer, callback-URL en toepassings-id nodig.

Voorbeelden

Verificatie

U kunt een sleutel en/of connection string ophalen uit uw Communication Services-resource in Azure Portal. Zodra u een sleutel hebt, kunt u de CommunicationIdentityClient en PhoneNumberAdministrationClient verifiëren met een van de volgende methoden:

Maken KeyCredential met AzureKeyCredential voordat u de client initialiseert

import { AzureKeyCredential } from "@azure/core-auth";
import { CommunicationIdentityClient } from "@azure/communication-administration";

const credential = new AzureKeyCredential(KEY);
const client = new CommunicationIdentityClient(HOST, credential);

Een connection string gebruiken

import { PhoneNumberAdministrationClient } from "@azure/communication-administration";

const connectionString = `endpoint=HOST;accessKey=KEY`;
const client = new CommunicationIdentityClient(connectionString);

Als u een sleutel gebruikt om de client te initialiseren, moet u ook het juiste eindpunt opgeven. U kunt dit eindpunt ophalen uit uw Communication Services-resource in Azure Portal.

Gebruik

CommunicationIdentityClient

Een exemplaar van CommunicationIdentityClient maken

import { CommunicationIdentityClient } from "@azure/communication-administration";

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Een nieuwe gebruiker maken

Gebruik de createUser methode om een nieuwe gebruiker te maken.

const user = await client.createUser();

Een gebruikerstoken maken en vernieuwen

Gebruik de issueToken methode om een token uit te geven of te vernieuwen voor een bestaande gebruiker. De methode neemt ook een lijst met communicatietokenbereiken op. Bereikopties zijn onder andere:

  • chat (Chatten)
  • pstn (Openbaar telefoonnetwerk)
  • voip (Voice over IP)
let { token } = await client.issueToken(user, ["chat"]);

Als u het gebruikerstoken wilt vernieuwen, geeft u een ander token uit met dezelfde gebruiker.

{ token } = await client.issueToken(user, ["chat"]);

Tokens intrekken voor een gebruiker

Gebruik de revokeTokens methode om alle uitgegeven tokens van een gebruiker in te trekken.

await client.revokeTokens(user);

revokeTokens gebruikt een optioneel tweede argument, tokensValidFrom. Als deze datum is opgegeven, revokeTokens worden alle tokens ingetrokken die eerder zijn uitgegeven. Anders worden alle tokens ingetrokken.

Een gebruiker verwijderen

Gebruik de deleteUser methode om een gebruiker te verwijderen.

await client.deleteUser(user);

PhoneNumberAdministrationClient

Een instantie van PhoneNumberAdministrationClient maken

import { CommunicationIdentityClient } from "@azure/communication-administration";

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Landen krijgen

Gebruik de listSupportedCountries methode om een lijst met ondersteunde landen op te halen.

const countries = await client.listSupportedCountries();

for await (const country of countries) {
  console.log(`Country code: ${country.countryCode}`);
  console.log(`Country name: ${country.localizedName}`);
}

Telefoonabonnementgroepen ophalen

Telefoonabonnementgroepen zijn er in twee typen: geografisch en gratis. Gebruik de listPhonePlanGroups methode om ze op te halen.

const countryCode = "US";
const phonePlanGroups = await client.listPhonePlanGroups(countryCode);

for await (const phonePlanGroup of phonePlanGroups) {
  console.log(`Phone plan group id: ${phonePlanGroup.phonePlanGroupId}`);
}

Locatieopties verkrijgen

Voor geografische telefoonabonnementen kunt u een query uitvoeren op de beschikbare geografische locaties. De opties voor locaties zijn gestructureerd als de geografische hiërarchie van een land. De VS heeft bijvoorbeeld staten en binnen elke staat zijn steden.

Gebruik de getPhonePlanLocationOptions methode om de opties voor een locatie op te halen.

const { locationOptions } = await client.getPhonePlanLocationOptions({
  countryCode: "US",
  phonePlanGroupId: "phonePlanGroupId",
  phonePlanId: "phonePlanId"
});

console.log(`Got location options for: ${locationOptions.labelId}`);

Netnummers verkrijgen

Voor het ophalen van netnummers voor geografische telefoonabonnementen zijn de ingestelde locatieopties vereist. U moet de keten met geografische locaties opnemen die het object locatieopties doorkruist dat wordt geretourneerd door de getPhonePlanLocationOptions.

Gebruik de getAreaCodes methode om de netnummers voor geografische telefoonabonnementen op te halen.

const { primaryAreaCodes } = await client.getAreaCodes({
  locationType: "selection",
  countryCode: "US",
  phonePlanId: "phonePlanId",
  locationOptionsQueries
});

Telefoonnummers reserveren voor aankoop

Gebruik de beginReservePhoneNumbers methode om te zoeken naar telefoonnummers en deze te reserveren. Dit is een langdurige bewerking.

const reservePoller = await client.beginReservePhoneNumbers({
    name: "Phone number search 800",
    description: "Search for 800 phone numbers"
    phonePlanIds: ["phone-plan-id-1"],
    areaCode: "800",
    quantity: 3
});

Als u de resultaten van de reservering wilt ophalen, gebruikt u de pollUntilDone methode voor de poller die u hebt gemaakt.

const phoneNumberReservation = await reservePoller.pollUntilDone();

U kunt de polling en reservering annuleren door de cancelOperation methode aan te roepen op de poller die u hebt gemaakt.

await reservePoller.cancelOperation();

Telefoonnummers kopen vanuit een reservering

Gebruik de beginPurchasePhoneNumbers methode om de telefoonnummers van uw reservering te kopen. De reservationId geretourneerde van beginReservePhoneNumbers is vereist. beginPurchasePhoneNumbers is ook een langdurige bewerking.

const { reservationId } = phoneNumberReservation;
const purchasePoller = await client.beginPurchasePhoneNumbers(reservationId);

Als u de resultaten van de aankoop wilt ophalen, gebruikt u de pollUntilDone methode voor de aankooppeiling die u hebt gemaakt.

const results = await purchasePoller.pollUntilDone();

Problemen oplossen

Volgende stappen

Bekijk de map met voorbeelden voor gedetailleerde voorbeelden van het gebruik van deze bibliotheek.

Bijdragen

Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.

Weergaven