JavaScript için Azure İletişim Kimliği istemci kitaplığı - sürüm 1.3.1

Kimlik kitaplığı, Azure İletişim Hizmetleri için kullanıcıları ve belirteçleri yönetmek için kullanılır.

Başlarken

Önkoşullar

Yükleme

npm install @azure/communication-identity

Tarayıcı desteği

JavaScript Paketi

Bu istemci kitaplığını tarayıcıda kullanmak için önce bir paketleyici kullanmanız gerekir. Bunun nasıl yapılacağının ayrıntıları için lütfen paketleme belgelerimize bakın.

Önemli kavramlar

İstemciler

, CommunicationIdentityClient kullanıcıları ve belirteçlerini yönetmek için yöntemler sağlar.

Örnekler

Kimlik Doğrulaması

Azure Portal'daki İletişim Hizmetleri kaynağınızdan bir anahtar ve/veya bağlantı dizesi alabilirsiniz. Bir anahtarınız olduğunda, aşağıdaki yöntemlerden herhangi biriyle kimliğini doğrulayabilirsiniz CommunicationIdentityClient :

İstemciyi başlatmadan önce ile AzureKeyCredential oluşturma KeyCredential

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

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

bağlantı dizesi kullanma

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

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

Bir TokenCredential

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

const credential = new DefaultAzureCredential();
const client = new CommunicationIdentityClient(ENDPOINT, credential);

İ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 örneği oluşturma

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

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ı belirtecini oluşturma ve yenileme

getToken Mevcut bir kullanıcı için belirteç vermek veya yenilemek için yöntemini kullanın. yöntemi ayrıca iletişim belirteci kapsamlarının listesini alır. Kapsam seçenekleri şunlardır:

  • chat (Sohbet API'lerine tam erişim için bunu kullanın)
  • voip (Arama API'lerine tam erişim için bunu kullanın)
  • chat.join (Sohbet API'lerine erişim ancak sohbet yazışmaları oluşturma, silme veya güncelleştirme yetkisi olmadan)
  • chat.join.limited (Katılımcı eklemeye veya kaldırmaya izin vermeyen daha sınırlı bir chat.join sürümü)
  • voip.join (Arama API'lerine erişim ancak yeni çağrı başlatma yetkisi olmadan)
let { token } = await client.getToken(user, ["chat"]);

Kullanıcı belirtecini yenilemek için aynı kullanıcıya başka bir belirteç gönderin.

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

Özel süre sonu ile kullanıcı belirteci oluşturma

Son kullanma süresini özelleştirerek bir İletişim Kimliği erişim belirteci oluşturmak da mümkündür. Belirtecin geçerlilik süresi [60.1440] dakika aralığı içinde olmalıdır. Sağlanmazsa, varsayılan değer olan 1440 dakika (24 saat) kullanılır.

const tokenOptions: GetTokenOptions = { tokenExpiresInMinutes: 60 };
let { token } = await client.getToken(user, ["chat"], tokenOptions);

Tek bir istekte kullanıcı ve belirteç oluşturma

Kolaylık olması için kullanarak createUserAndToken yeni bir kullanıcı oluşturun ve bir işlev çağrısıyla belirteç gönderin. Bu, önce bir kullanıcı oluşturmanın ve ardından belirteç vermenin aksine tek bir web isteğine dönüşür.

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

Tek bir istekte özel süre sonu ile kullanıcı ve belirteç oluşturma

Son kullanma süresini özelleştirerek bir İletişim Kimliği erişim belirteci oluşturmak da mümkündür. Belirtecin geçerlilik süresi [60.1440] dakika aralığı içinde olmalıdır. Sağlanmazsa, varsayılan değer olan 1440 dakika (24 saat) kullanılır.

const userAndTokenOptions: CreateUserAndTokenOptions = { tokenExpiresInMinutes: 60 };
let { user, token } = await client.createUserAndToken(["chat"], userAndTokenOptions);

Kullanıcı için belirteçleri iptal etme

revokeTokens Bir kullanıcı için verilen tüm belirteçleri iptal etmek için yöntemini kullanın.

await client.revokeTokens(user);

Kullanıcı silme

deleteUser Bir kullanıcıyı silmek için yöntemini kullanın.

await client.deleteUser(user);

İletişim erişim belirteci için Teams Kullanıcısının Azure AD erişim belirtecini alma

Bir Teams kullanıcısının Azure AD erişim belirtecini eşleşen süre sonu zamanına sahip yeni CommunicationAccessToken bir kullanıcıyla değiştirmek için yöntemini kullanıngetTokenForTeamsUser.

await client.getTokenForTeamsUser({
  teamsUserAadToken: "<aad-access-token-of-a-teams-user>",
  clientId: "<cliend-id-of-an-aad-application>",
  userObjectId: "<aad-object-id-of-a-teams-user>",
});

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.

İzlenimler