Dela via


Azure Communication Identity-klientbibliotek för JavaScript – version 1.3.1

Identitetsbiblioteket används för att hantera användare och token för Azure Communication Services.

Komma igång

Förutsättningar

Installation

npm install @azure/communication-identity

Stöd för webbläsare

JavaScript-paket

Om du vill använda det här klientbiblioteket i webbläsaren måste du först använda en bundler. Mer information om hur du gör detta finns i vår paketeringsdokumentation.

Viktiga begrepp

Klienter

CommunicationIdentityClient innehåller metoder för att hantera användare och deras token.

Exempel

Autentisering

Du kan hämta en nyckel och/eller anslutningssträng från din Communication Services-resurs i Azure-portalen. När du har en nyckel kan du autentisera CommunicationIdentityClient med någon av följande metoder:

Skapa KeyCredential med AzureKeyCredential innan klienten initieras

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

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

Använda en anslutningssträng

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

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

Använda en TokenCredential

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

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

Om du använder en nyckel för att initiera klienten måste du också ange rätt slutpunkt. Du kan hämta den här slutpunkten från din Communication Services-resurs i Azure-portalen.

Användning

Skapa en instans av CommunicationIdentityClient

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

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Skapa en ny användare

createUser Använd metoden för att skapa en ny användare.

const user = await client.createUser();

Skapa och uppdatera en användartoken

getToken Använd metoden för att utfärda eller uppdatera en token för en befintlig användare. Metoden innehåller också en lista över omfång för kommunikationstoken. Omfångsalternativen omfattar:

  • chat (Använd detta för fullständig åtkomst till chatt-API:er)
  • voip (Använd detta för fullständig åtkomst till anropande API:er)
  • chat.join (Åtkomst till chatt-API:er men utan behörighet att skapa, ta bort eller uppdatera chatttrådar)
  • chat.join.limited (En mer begränsad version av chat.join som inte tillåter att deltagare läggs till eller avlägsnas)
  • voip.join (Åtkomst till anropande API:er men utan behörighet att starta nya anrop)
let { token } = await client.getToken(user, ["chat"]);

Om du vill uppdatera användartoken utfärdar du en annan token med samma användare.

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

Skapa en användartoken med anpassad förfallotid

Du kan också skapa en åtkomsttoken för kommunikationsidentitet genom att anpassa förfallotiden. Tokens giltighetsperiod måste vara inom [60 1440] minuter. Om det inte anges används standardvärdet 1 440 minuter (24 timmar).

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

Skapa en användare och en token i en enda begäran

För enkelhetens skull kan du använda createUserAndToken för att skapa en ny användare och utfärda en token med ett funktionsanrop. Detta översätts till en enda webbbegäran i stället för att skapa en användare först och sedan utfärda en token.

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

Skapa en användare och en token med anpassad förfallotid i en enda begäran

Du kan också skapa en åtkomsttoken för kommunikationsidentitet genom att anpassa förfallotiden. Tokens giltighetsperiod måste vara inom [60 1440] minuter. Om det inte anges används standardvärdet 1 440 minuter (24 timmar).

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

Återkalla token för en användare

revokeTokens Använd metoden för att återkalla alla utfärdade token för en användare.

await client.revokeTokens(user);

Ta bort en användare

deleteUser Använd metoden för att ta bort en användare.

await client.deleteUser(user);

Utbyta Azure AD åtkomsttoken för en Teams-användare mot en åtkomsttoken för kommunikation

Använd getTokenForTeamsUser metoden för att byta ut en Azure AD åtkomsttoken för en Teams-användare mot en ny CommunicationAccessToken med matchande förfallotid.

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

Felsökning

Nästa steg

Ta en titt på exempelkatalogen för detaljerade exempel på hur du använder det här biblioteket.

Bidra

Om du vill bidra till det här biblioteket kan du läsa bidragsguiden om du vill veta mer om hur du skapar och testar koden.

Visningar