Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yönetim kitaplığı, Azure İletişim Hizmetleri için kullanıcıları ve belirteçleri yönetmek için kullanılır. Bu kitaplık, telefon numarası yönetimine yönelik özellikler de sağlar.
Edinilen telefon numaraları ülkeye, numara türüne ve telefon planına bağlı olarak birçok özelliğe sahip olabilir. Sms gelen ve giden kullanımı, PSTN gelen ve giden kullanım özelliklerine örnek olarak verilebilir. Telefon numaraları bir web kancası URL'si aracılığıyla bota da atanabilir.
Başlarken
Önkoşullar
- Bir Azure aboneliği.
- Mevcut bir İletişim Hizmetleri kaynağı. Kaynağı oluşturmanız gerekiyorsa Azure Portal'ı veya Azure CLI'yı kullanabilirsiniz.
Yükleme
npm install @azure/communication-administration
Önemli kavramlar
İstemciler
Yönetim paketi iki istemciyi kullanıma sunar. , CommunicationIdentityClient kullanıcıları ve belirteçlerini yönetmek için yöntemler sağlar. , PhoneNumberAdministrationClient telefon planlarını ve numaralarını yönetmek için yöntemler sağlar.
Telefon tarifelerine genel bakış
Telefon planları iki tür gelir; Coğrafi ve Ücretsiz. Coğrafi telefon planları, telefon numaralarının alan kodları coğrafi konumun alan koduyla ilişkili olan bir konumla ilişkilendirilmiş telefon planlarıdır. Toll-Free telefon planları, ilişkili konum olmayan telefon planlarıdır. Örneğin ABD'de ücretsiz sayılar 800 veya 888 gibi alan kodlarıyla birlikte gelebilir.
Aynı ülkedeki tüm coğrafi telefon planları, Coğrafi telefon numarası türüne sahip bir telefon planı grubu halinde gruplandırılır. Aynı ülkedeki tüm Toll-Free telefon planları bir telefon planı grubu halinde gruplandırılır.
Numaraları arama ve alma
Telefon numaraları, telefon planı kimliği, alan kodu ve telefon numarası miktarı sağlayarak arama oluşturma API'si aracılığıyla arama yapılabilir. Sağlanan telefon numarası miktarı on dakika boyunca ayrılacaktır. Bu telefon numarası araması iptal edilebilir veya satın alınabilir. Arama iptal edilirse telefon numaraları başkaları tarafından kullanılabilir hale gelir. Arama satın alınırsa, Azure kaynakları için telefon numaraları alınır.
Numaraları yapılandırma ve atama
Telefon numaraları, yapılandırma numarası API'si aracılığıyla bir geri arama URL'sine atanabilir. Yapılandırmanın bir parçası olarak, alınan bir telefon numarasına, geri arama URL'sine ve uygulama kimliğine ihtiyacınız olacaktır.
Örnekler
Kimlik Doğrulaması
Azure Portal'da İletişim Hizmetleri kaynağınızdan bir anahtar ve/veya bağlantı dizesi alabilirsiniz. Anahtarınız olduktan sonra ve PhoneNumberAdministrationClient kimliklerini aşağıdaki yöntemlerden herhangi biriyle doğrulayabilirsinizCommunicationIdentityClient:
İstemciyi başlatmadan önce ile AzureKeyCredential oluşturma KeyCredential
import { AzureKeyCredential } from "@azure/core-auth";
import { CommunicationIdentityClient } from "@azure/communication-administration";
const credential = new AzureKeyCredential(KEY);
const client = new CommunicationIdentityClient(HOST, credential);
Bağlantı dizesi kullanma
import { PhoneNumberAdministrationClient } from "@azure/communication-administration";
const connectionString = `endpoint=HOST;accessKey=KEY`;
const client = new CommunicationIdentityClient(connectionString);
İstemciyi başlatmak için bir anahtar kullanırsanız, uygun uç noktayı da sağlamanız gerekir. Bu uç noktayı Azure Portal'daki İletişim Hizmetleri kaynağınızdan alabilirsiniz.
Kullanım
CommunicationIdentityClient
CommunicationIdentityClient örneği oluşturma
import { CommunicationIdentityClient } from "@azure/communication-administration";
const client = new CommunicationIdentityClient(CONNECTION_STRING);
Yeni kullanıcı oluşturma
createUser Yeni bir kullanıcı oluşturmak için yöntemini kullanın.
const user = await client.createUser();
Kullanıcı belirteci oluşturma ve yenileme
issueToken Mevcut bir kullanıcı için belirteç vermek veya yenilemek için yöntemini kullanın. yöntemi ayrıca iletişim belirteci kapsamları listesini alır. Kapsam seçenekleri şunlardır:
-
chat(Sohbet) -
pstn(Ortak anahtarlı telefon ağı) -
voip(IP üzerinden ses)
let { token } = await client.issueToken(user, ["chat"]);
Kullanıcı belirtecini yenilemek için aynı kullanıcıya başka bir belirteç gönderin.
{ token } = await client.issueToken(user, ["chat"]);
Kullanıcı için belirteçleri iptal etme
revokeTokens Bir kullanıcının verilen tüm belirteçlerini iptal etmek için yöntemini kullanın.
await client.revokeTokens(user);
revokeTokensisteğe bağlı ikinci bir bağımsız değişken alır. tokensValidFrom Bu tarih sağlanırsa, revokeTokens önce verilen tüm belirteçleri iptal eder. Aksi takdirde tüm belirteçler iptal edilir.
Kullanıcı silme
deleteUser Kullanıcı silmek için yöntemini kullanın.
await client.deleteUser(user);
PhoneNumberAdministrationClient
PhoneNumberAdministrationClient örneği oluşturma
import { CommunicationIdentityClient } from "@azure/communication-administration";
const client = new CommunicationIdentityClient(CONNECTION_STRING);
Ülkeler alınıyor
listSupportedCountries Desteklenen ülkelerin listesini almak için yöntemini kullanın.
const countries = await client.listSupportedCountries();
for await (const country of countries) {
console.log(`Country code: ${country.countryCode}`);
console.log(`Country name: ${country.localizedName}`);
}
Telefon planı gruplarını alma
Telefon planı grupları Coğrafi ve Ücretsiz olmak üzere iki tür olarak gelir.
listPhonePlanGroups Almak için yöntemini kullanın.
const countryCode = "US";
const phonePlanGroups = await client.listPhonePlanGroups(countryCode);
for await (const phonePlanGroup of phonePlanGroups) {
console.log(`Phone plan group id: ${phonePlanGroup.phonePlanGroupId}`);
}
Konum seçeneklerini alma
Coğrafi telefon planları için kullanılabilir coğrafi konumları sorgulayabilirsiniz. Konum seçenekleri, bir ülkenin coğrafi hiyerarşisi gibi yapılandırılmıştır. Örneğin, ABD'nin eyaletleri vardır ve her eyaletin içinde şehirler bulunur.
Konumun getPhonePlanLocationOptions seçeneklerini almak için yöntemini kullanın.
const { locationOptions } = await client.getPhonePlanLocationOptions({
countryCode: "US",
phonePlanGroupId: "phonePlanGroupId",
phonePlanId: "phonePlanId"
});
console.log(`Got location options for: ${locationOptions.labelId}`);
Alan kodları alınıyor
Coğrafi telefon planları için alan kodlarının getirilmesi için konum seçenekleri sorgularının ayarlanması gerekir. tarafından döndürülen konum seçenekleri nesnesine çapraz geçiş yaparak coğrafi konumlar zincirini getPhonePlanLocationOptionsdahil etmeniz gerekir.
getAreaCodes Coğrafi telefon planlarının alan kodlarını almak için yöntemini kullanın.
const { primaryAreaCodes } = await client.getAreaCodes({
locationType: "selection",
countryCode: "US",
phonePlanId: "phonePlanId",
locationOptionsQueries
});
Satın almak için telefon numaralarını ayırma
beginReservePhoneNumbers Telefon numaralarını aramak ve ayırmak için yöntemini kullanın. Bu uzun süre çalışan bir işlemdir.
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
});
Rezervasyonun sonuçlarını almak için oluşturduğunuz poller üzerindeki yöntemini kullanın pollUntilDone .
const phoneNumberReservation = await reservePoller.pollUntilDone();
Oluşturduğunuz poller üzerinde yöntemini çağırarak cancelOperation yoklamayı ve rezervasyonu iptal edebilirsiniz.
await reservePoller.cancelOperation();
Rezervasyondan telefon numaraları satın alma
Rezervasyonunuzdan beginPurchasePhoneNumbers telefon numaralarını satın almak için yöntemini kullanın. döndürülen reservationIdbeginReservePhoneNumbers gereklidir.
beginPurchasePhoneNumbers uzun süre çalışan bir işlemdir.
const { reservationId } = phoneNumberReservation;
const purchasePoller = await client.beginPurchasePhoneNumbers(reservationId);
Satın alma işleminin sonuçlarını almak için oluşturduğunuz satın alma puanlayıcısı üzerindeki yöntemini kullanın pollUntilDone .
const results = await purchasePoller.pollUntilDone();
Sorun giderme
Sonraki adımlar
Bu kitaplığın nasıl kullanılacağına ilişkin ayrıntılı örnekler için lütfen samples dizinine göz atın.
Katkıda bulunma
Bu kitaplığa katkıda bulunmak isterseniz, kodu derleme ve test etme hakkında daha fazla bilgi edinmek için lütfen katkıda bulunma kılavuzunu okuyun.
İlgili projeler
Azure SDK for JavaScript