Kom igång med Azure Web PubSub chat

Denna snabbstart visar det snabbaste sättet att få Web PubSub-chatten att fungera. Du genererar en klientåtkomst-URL i Azure-portalen, använder sedan klient-SDK:n för att ansluta upp, skapa ett rum och skicka ett meddelande utan serverkod.

Förutsättningar

Få en klientåtkomsttoken från portalen

En klient ansluter till en chatthubb med en klientåtkomst-URL som bär dess användaridentitet. För ett snabbt test, generera en i portalen.

  1. I Azure-portalen, öppna din Web PubSub-resurs.
  2. I vänstra menyn, välj Keys blade, sedan Client URL Generator.
  3. Ange Hub som namnet på den Chat Hub du lade till, till exempel chat.
  4. Sätt användar-ID till valfritt namn, till exempel alice. Chatten använder detta som din användaridentitet.
  5. Kopiera klientåtkomst-URL:en.

Skärmdump av Client URL Generator i Azure-portalen, som visar hubben, användar-ID och den genererade klientåtkomst-URL:n.

Installera klient-SDK

Skapa ett projekt och installera klient-SDK:n.

mkdir chat-quickstart
cd chat-quickstart
npm init -y
npm install @azure/web-pubsub-chat-client

Koppla upp, skapa ett rum och skicka ett meddelande

Spara följande kod som index.mjs. Ersätt <client-access-url> med URL:en du kopierade från portalen.

import { ChatClient } from "@azure/web-pubsub-chat-client";

// Paste the client access URL you generated in the portal.
const clientAccessUrl = "<client-access-url>";

async function main() {
  // Connect to chat hub.
  const client = await ChatClient.start(clientAccessUrl);
  console.log(`Connected as ${client.userId}`);

  // Print messages as they arrive.
  client.on("message", (event) => {
    const message = event.message;
    console.log(`${message.createdBy}: ${message.content.text}`);
  });

  // Create a room. You're added to it automatically.
  const room = await client.createRoom("My first room", []);
  console.log(`Created room ${room.roomId}`);

  // Send a message to the room.
  await client.sendToRoom(room.roomId, "Hello, Chat!");

  // Read the room's history back from your storage.
  console.log("History:");
  for await (const message of client.listRoomMessages(room.roomId)) {
    console.log(`  ${message.createdBy}: ${message.content.text}`);
  }

  // Disconnect.
  await client.stop();
}

main().catch(console.error);

Kör den:

node index.mjs

Du ser utdata som liknar:

Connected as alice
Created room <room-id>
alice: Hello, Chat!
History:
  alice: Hello, Chat!

Note

I denna quickstart använde du en portaltoken. För produktion, utfärda tokens från din egen server. Se Autentisera och anslut klienter.