Sdílet prostřednictvím


Klientská knihovna Azure Communication Identity pro JavaScript – verze 1.3.1

Knihovna identit slouží ke správě uživatelů a tokenů pro Azure Communication Services.

Začínáme

Požadavky

Instalace

npm install @azure/communication-identity

Podpora prohlížečů

JavaScript Bundle

Pokud chcete tuto klientskou knihovnu používat v prohlížeči, musíte nejprve použít nástroj bundler. Podrobnosti o tom, jak to udělat, najdete v naší dokumentaci k sdružování.

Klíčové koncepty

Klienti

Poskytuje CommunicationIdentityClient metody pro správu uživatelů a jejich tokenů.

Příklady

Authentication

Klíč nebo připojovací řetězec můžete získat z prostředku Communication Services na webu Azure Portal. Jakmile budete mít klíč, můžete ho CommunicationIdentityClient ověřit některou z následujících metod:

Vytvoření KeyCredential pomocí příkazu AzureKeyCredential před inicializací klienta

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

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

Použití připojovací řetězec

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

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

Pomocí TokenCredential

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

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

Pokud k inicializaci klienta použijete klíč, budete také muset zadat příslušný koncový bod. Tento koncový bod můžete získat z prostředku Communication Services na webu Azure Portal.

Využití

Vytvoření instance CommunicationIdentityClient

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

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Vytvoření nového uživatele

createUser K vytvoření nového uživatele použijte metodu .

const user = await client.createUser();

Vytvoření a aktualizace tokenu uživatele

Použijte metodu getToken k vydání nebo aktualizaci tokenu pro existujícího uživatele. Metoda také přebírá seznam oborů komunikačních tokenů. Mezi možnosti rozsahu patří:

  • chat (Tuto možnost použijte pro úplný přístup k rozhraním CHAT API.)
  • voip (Tuto možnost použijte pro úplný přístup k rozhraním API pro volání.)
  • chat.join (Přístup k rozhraním API pro chat, ale bez oprávnění k vytváření, odstraňování nebo aktualizaci vláken chatu)
  • chat.join.limited (Omezenější verze chat.join, která neumožňuje přidávat nebo odebírat účastníky.
  • voip.join (Přístup k rozhraním API pro volání, ale bez oprávnění ke spouštění nových volání)
let { token } = await client.getToken(user, ["chat"]);

Pokud chcete token uživatele aktualizovat, vydejte další token se stejným uživatelem.

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

Vytvoření tokenu uživatele s vlastním vypršením platnosti

Přístupový token komunikační identity je také možné vytvořit přizpůsobením doby vypršení platnosti. Doba platnosti tokenu musí být v rozsahu [60 1440] minut. Pokud ji nezadáte, použije se výchozí hodnota 1440 minut (24 hodin).

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

Vytvoření uživatele a tokenu v jednom požadavku

Pro usnadnění používání použijte createUserAndToken k vytvoření nového uživatele a vystavení tokenu s jedním voláním funkce. To se přeloží do jediného webového požadavku na rozdíl od vytvoření uživatele a následného vystavení tokenu.

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

Vytvoření uživatele a tokenu s vlastním vypršením platnosti v rámci jednoho požadavku

Přístupový token komunikační identity je také možné vytvořit přizpůsobením doby vypršení platnosti. Doba platnosti tokenu musí být v rozsahu [60 1440] minut. Pokud ji nezadáte, použije se výchozí hodnota 1440 minut (24 hodin).

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

Odvolání tokenů pro uživatele

revokeTokens K odvolání všech vydaných tokenů pro uživatele použijte metodu .

await client.revokeTokens(user);

Odstranění uživatele

deleteUser K odstranění uživatele použijte metodu .

await client.deleteUser(user);

Výměna přístupového tokenu uživatele Teams Azure AD za přístupový token komunikace

Pomocí getTokenForTeamsUser metody můžete vyměnit přístupový token Azure AD uživatele Teams za nový CommunicationAccessToken s odpovídajícím časem vypršení platnosti.

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

Poradce při potížích

Další kroky

Podrobné příklady použití této knihovny najdete v adresáři ukázek .

Přispívání

Pokud chcete přispívat do této knihovny, přečtěte si příručku pro přispívání , kde najdete další informace o tom, jak sestavit a otestovat kód.

Imprese