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
- Předplatné Azure
- Existující prostředek komunikačních služeb. Pokud potřebujete prostředek vytvořit, můžete použít Azure Portal, Azure PowerShell nebo Azure CLI.
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.
Související projekty
Azure SDK for JavaScript