Freigeben über


Azure Communication Administration-Clientbibliothek für JavaScript – Version 1.0.0-beta.3

Die Verwaltungsbibliothek wird zum Verwalten von Benutzern und Token für Azure Communication Services verwendet. Diese Bibliothek bietet auch Funktionen für die Verwaltung von Telefonnummern.

Erworbene Telefonnummern können je nach Land, Nummerntyp und Telefonplan viele Funktionen aufweisen. Beispiele für Funktionen sind die eingehende und ausgehende SMS-Nutzung, die eingehende und ausgehende PSTN-Nutzung. Telefonnummern können einem Bot auch über eine Webhook-URL zugewiesen werden.

Erste Schritte

Voraussetzungen

Installieren von

npm install @azure/communication-administration

Wichtige Begriffe

Clients

Das Verwaltungspaket macht zwei Clients verfügbar. Die CommunicationIdentityClient stellt Methoden zum Verwalten von Benutzern und deren Token bereit. Die PhoneNumberAdministrationClient bietet Methoden zum Verwalten von Telefonplänen und -nummern.

Übersicht über Telefonpläne

Telefonpläne gibt es in zwei Arten: Geografisch und gebührenfrei. Geografische Telefonpläne sind Telefonpläne, die einem Standort zugeordnet sind, dessen Vorwahlnummern der Vorwahl eines geografischen Standorts zugeordnet sind. Toll-Free Telefontarife sind Telefonpläne, die nicht dem Standort zugeordnet sind. In den USA können beispielsweise gebührenfreie Nummern mit Ortsvorwahlen wie 800 oder 888 enthalten.

Alle geografischen Telefonpläne innerhalb desselben Landes werden in einer Telefonplangruppe mit einem geografischen Telefonnummerntyp gruppiert. Alle Toll-Free Telefonpläne innerhalb desselben Landes werden in einer Telefonplangruppe gruppiert.

Suchen und Abrufen von Zahlen

Telefonnummern können über die API zur Erstellung der Suche durchsucht werden, indem Sie eine Telefonplan-ID, eine Ortsvorwahl und die Anzahl von Telefonnummern angeben. Die angegebene Anzahl von Telefonnummern wird für zehn Minuten reserviert. Diese Suche nach Telefonnummern kann entweder abgebrochen oder gekauft werden. Wenn die Suche abgebrochen wird, werden die Telefonnummern für andere personen verfügbar. Wenn die Suche erworben wird, werden die Telefonnummern für die Azure-Ressourcen abgerufen.

Konfigurieren und Zuweisen von Zahlen

Telefonnummern können einer Rückruf-URL über die API zum Konfigurieren von Nummern zugewiesen werden. Im Rahmen der Konfiguration benötigen Sie eine abgerufene Telefonnummer, Rückruf-URL und Anwendungs-ID.

Beispiele

Authentifizierung

Sie können einen Schlüssel und/oder eine Verbindungszeichenfolge aus Ihrer Communication Services-Ressource im Azure-Portal abrufen. Sobald Sie über einen Schlüssel verfügen, können Sie und CommunicationIdentityClientPhoneNumberAdministrationClient mit einer der folgenden Methoden authentifizieren:

Erstellen KeyCredential mit AzureKeyCredential vor dem Initialisieren des Clients

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

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

Verwenden einer Verbindungszeichenfolge

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

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

Wenn Sie einen Schlüssel zum Initialisieren des Clients verwenden, müssen Sie auch den entsprechenden Endpunkt angeben. Sie können diesen Endpunkt über Ihre Communication Services-Ressource im Azure-Portal abrufen.

Verwendung

CommunicationIdentityClient

Erstellen einer Instanz von CommunicationIdentityClient

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

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Erstellen eines neuen Benutzers

Verwenden Sie die createUser -Methode, um einen neuen Benutzer zu erstellen.

const user = await client.createUser();

Erstellen und Aktualisieren eines Benutzertokens

Verwenden Sie die issueToken -Methode, um ein Token für einen vorhandenen Benutzer auszustellen oder zu aktualisieren. Die -Methode übernimmt auch eine Liste von Kommunikationstokenbereichen. Zu den Bereichsoptionen gehören:

  • chat (Chat)
  • pstn (Öffentliches Telefonnetz)
  • voip (Voice over IP)
let { token } = await client.issueToken(user, ["chat"]);

Um das Benutzertoken zu aktualisieren, geben Sie ein anderes Token für denselben Benutzer aus.

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

Aufheben von Token für einen Benutzer

Verwenden Sie die revokeTokens -Methode, um alle ausgestellten Token eines Benutzers zu widerrufen.

await client.revokeTokens(user);

revokeTokens nimmt ein optionales zweites Argument, tokensValidFrom. Wenn dieses Datum angegeben wird, revokeTokens werden alle zuvor ausgestellten Token widerrufen. Andernfalls werden alle Token widerrufen.

Löschen eines Benutzers

Verwenden Sie die deleteUser -Methode, um einen Benutzer zu löschen.

await client.deleteUser(user);

PhoneNumberAdministrationClient

Erstellen einer Instanz von PhoneNumberAdministrationClient

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

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Länder abrufen

Verwenden Sie die listSupportedCountries -Methode, um eine Liste der unterstützten Länder abzurufen.

const countries = await client.listSupportedCountries();

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

Abrufen von Telefonplangruppen

Telefonplangruppen gibt es in zwei Typen: Geographic und Toll-Free. Verwenden Sie die listPhonePlanGroups -Methode, um sie abzurufen.

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

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

Abrufen von Standortoptionen

Für geografische Telefonpläne können Sie die verfügbaren geografischen Standorte abfragen. Die Standortoptionen sind wie die geografische Hierarchie eines Landes strukturiert. Beispielsweise haben die USA Bundesstaaten, und innerhalb jedes Bundesstaates sind Städte.

Verwenden Sie die getPhonePlanLocationOptions -Methode, um die Optionen für einen Standort abzurufen.

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

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

Abrufen von Vorwahlen

Zum Abrufen von Ortscodes für geografische Telefonpläne sind die festgelegten Standortoptionenabfragen erforderlich. Sie müssen die Kette der geografischen Standorte einschließen, die das vom getPhonePlanLocationOptionszurückgegebene Objekt der Standortoptionen durchlaufen.

Verwenden Sie die getAreaCodes -Methode, um die Vorwahlen für geografische Telefonpläne abzurufen.

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

Reservieren von Telefonnummern für den Kauf

Verwenden Sie die beginReservePhoneNumbers -Methode, um nach Telefonnummern zu suchen und diese zu reservieren. Dieser Vorgang dauert lange.

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

Um die Ergebnisse der Reservierung abzurufen, verwenden Sie die pollUntilDone -Methode für den von Ihnen erstellten Poller.

const phoneNumberReservation = await reservePoller.pollUntilDone();

Sie können die Abfrage und Reservierung abbrechen, indem Sie die Methode für den cancelOperation von Ihnen erstellten Poller aufrufen.

await reservePoller.cancelOperation();

Erwerben von Telefonnummern aus einer Reservierung

Verwenden Sie die beginPurchasePhoneNumbers -Methode, um die Telefonnummern aus Ihrer Reservierung zu erwerben. Das reservationId von beginReservePhoneNumbers zurückgegebene ist erforderlich. beginPurchasePhoneNumbers ist auch ein lang andauernder Vorgang.

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

Um die Ergebnisse des Kaufs zu erhalten, verwenden Sie die pollUntilDone -Methode für den von Ihnen erstellten Kauf poller.

const results = await purchasePoller.pollUntilDone();

Problembehandlung

Nächste Schritte

Ausführliche Beispiele zur Verwendung dieser Bibliothek finden Sie im Beispielverzeichnis .

Mitwirken

Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie die Anleitung für Mitwirkende, um mehr darüber zu erfahren, wie Sie den Code erstellen und testen können.

Aufrufe