WebMeet Specification
Real-time audio and video conferencing within the Ploinky ecosystem.
Overview
WebMeet is a video conferencing application built into Ploinky. It allows for real-time audio and video communication between multiple participants, creating a virtual meeting room directly in the browser. It is not just a text-based chat, but a full-fledged video meeting solution.
Features
- Real-time Audio/Video: Utilizes WebRTC for high-quality, low-latency peer-to-peer communication.
- Multi-user Sessions: Supports multiple participants in a single meeting room.
- Participant Management: A dedicated panel lists all participants in the meeting.
- Speaking Queue: A system for participants to request to speak, helping to moderate conversations.
- Audio Controls: Participants can mute their own microphone and deafen (mute all incoming audio).
- Broadcasting: "Go Live" functionality allows users to broadcast their audio and video to the room.
Usage
To start a WebMeet session, use the webmeet
command:
ploinky webmeet
This will start the WebMeet server and provide a URL to access the meeting room. The URL will contain a token for authentication.
Joining a Meeting
To join a meeting, simply open the provided URL in your browser. You will be prompted to enter your name and grant access to your microphone and camera.
Moderation
WebMeet supports the concept of a moderator agent, which can have special privileges to control the meeting.
You can specify a moderator agent when starting the WebMeet server:
ploinky webmeet MyModeratorAgent
The moderator agent can be a custom agent you create to manage meetings, for example, by automatically muting participants, managing the speaking queue, or even transcribing the conversation.
Technology Stack
- WebRTC: The core technology for real-time communication.
- Node.js: The backend server for signaling and user management.
- WebSocket: Used for signaling and communication between the clients and the server.
- HTML/CSS/JavaScript: The frontend application that runs in the browser.