Publicación y suscripción entre clientes
Esta guía de inicio rápido muestra cómo
- conectarse al recurso de Web PubSub
- suscribirse a mensajes de grupos
- publicar mensajes en grupos
Requisitos previos
- Un recurso de Web PubSub. Si no ha creado uno, puede seguir las instrucciones: Creación de un recurso de Web PubSub
- Un editor de código como Visual Studio Code
- Instalación de las dependencias para el lenguaje que planea usar
Instalación del SDK de cliente
Nota
En esta guía, se usa el SDK de cliente proporcionado por el servicio Web PubSub, que todavía está en versión preliminar. La interfaz puede cambiar en versiones posteriores.
mkdir pubsub_among_clients
cd pubsub_among_clients
# The SDK is available as an NPM module.
npm install @azure/web-pubsub-client
Conexión a Web PubSub
Un cliente, ya sea un explorador 💻, una aplicación móvil 📱 o un dispositivo IoT 💡, usa una dirección URL de acceso de cliente para conectarse y autenticarse con el recurso. Esta dirección URL sigue el patrón de wss://<service_name>.webpubsub.azure.com/client/hubs/<hub_name>?access_token=<token>
. Un cliente puede tener varias maneras de obtener la dirección URL de acceso de cliente. Para este inicio rápido, puede copiar y pegar una de Azure Portal, como se muestra en el siguiente diagrama. Se recomienda no codificar la URL de acceso del cliente en el código. En el mundo de producción, normalmente configuramos un servidor de aplicaciones para devolver esta dirección URL a petición.
Generar dirección URL de acceso del cliente describe la práctica en detalle.
Como se muestra en el diagrama anterior, el cliente tiene los permisos para enviar mensajes a un grupo específico denominado group1
.
Cree un archivo con el nombre index.js
y agregue el siguiente código
const { WebPubSubClient } = require("@azure/web-pubsub-client");
// Instantiate the client object.
// <client-access-url> is copied from Azure portal mentioned above.
const client = new WebPubSubClient("<client-access-url>");
Suscripción a un grupo
Para recibir mensajes de grupos, el cliente
- debe unirse al grupo del que desea recibir mensajes
- tiene una devolución de llamada para controlar el evento
group-message
En el código siguiente, se muestra que un cliente se suscribe a los mensajes de un grupo denominado group1
.
// ...code from the last step
// Provide callback to the "group-message" event.
client.on("group-message", (e) => {
console.log(`Received message: ${e.message.data}`);
});
// Before joining group, you must invoke start() on the client object.
client.start();
// Join a group named "group1" to subscribe message from this group.
// Note that this client has the permission to join "group1",
// which was configured on Azure portal in the step of generating "Client Access URL".
client.joinGroup("group1");
Publicación de un mensaje en un grupo
En el paso anterior, hemos configurado todo lo necesario para recibir mensajes de group1
. Ahora enviemos mensajes a ese grupo.
// ...code from the last step
// Send message "Hello World" in the "text" format to "group1".
client.sendToGroup("group1", "Hello World", "text");
Pasos siguientes
Con el SDK de cliente, ahora sabe cómo
- conectarse al recurso de Web PubSub
- suscribirse a mensajes de grupo
- publicar mensajes en grupos
A continuación, aprenderá a insertar mensajes en tiempo real desde un servidor de aplicaciones a los clientes.