Weave.js

WeaveConnectedUsersPlugin

Get an structure with information about the connected users

Overview

The WeaveConnectedUsersPlugin class represents a plugin that manages and returns information about users connected to a collaborative session. It tracks user presence through the shared store and provides metadata such as active users, their IDs, names, and statuses, enabling applications to build user lists, indicators, and collaborative awareness features.

It enhances the multi-user experience by letting participants know who is connected, online, or active on the canvas in real time.

The class extends the WeavePlugin class

Name

This plugin name property value is connectedUsers.

Import

import { WeaveConnectedUsersPlugin } from "@inditextech/weave-sdk";

Instantiation

new WeaveConnectedUsersPlugin(params: WeaveConnectedUsersPluginParams);

TypeScript types

type WeaveUser = {
  [key: string]: any;
  name: string;
  email: string;
};

type WeaveConnectedUsers = {
  [userName: string]: WeaveUser;
};

type WeaveConnectedUsersPluginConfig = {
  getUser: () => WeaveUser;
};

type WeaveConnectedUsersPluginParams = {
  config: WeaveConnectedUsersPluginConfig;
};

type WeaveConnectedUsersChangeEvent = WeaveConnectedUsers;

Parameters

For WeaveConnectedUsersPluginParams:

Property Type Required Description

config

WeaveConnectedUsersPluginConfig

Required

Config parameters for the plugin.

For WeaveConnectedUsersPluginConfig:

Property Type Required Description

getUser

() ⇒ WeaveUser

Required

A function that returns the instance user metadata, used to inform the actual connected user to other peers.

Events

onConnectedUsersChange

onConnectedUsersChange: WeaveConnectedUsersChangeEvent;

The onConnectedUsersChange event is called every time a user connect / disconnect from a room.