Skip to content

Video Consultations

Overview

Video consultations enable patients and providers to meet remotely through secure video sessions. VitalBridge currently integrates with Jitsi for virtual consultations.


Consultation Architecture

flowchart LR
  PATIENT["Patient"]
  PROVIDER["Provider"]
  VIDEO["Video Session Service"]
  JITSI["Jitsi"]
  PATIENT --> VIDEO
  PROVIDER --> VIDEO
  VIDEO --> JITSI
Hold "Alt" / "Option" to enable pan & zoom

Session Creation

Video sessions are typically created after appointment confirmation.

sequenceDiagram
  participant AppointmentService
  participant VideoService
  participant Jitsi
  AppointmentService->>VideoService: appointment.confirmed
  VideoService->>Jitsi: Create Room
  Jitsi-->>VideoService: Room Created
Hold "Alt" / "Option" to enable pan & zoom

Join Flow

sequenceDiagram
  participant User
  participant VideoService
  participant AppointmentService
  participant Jitsi
  User->>VideoService: Join Consultation
  VideoService->>AppointmentService: Validate Access
  AppointmentService-->>VideoService: Authorized
  VideoService->>Jitsi: Generate Join Configuration
  Jitsi-->>User: Join Meeting
Hold "Alt" / "Option" to enable pan & zoom

Consultation Lifecycle

stateDiagram-v2
  [*] --> Created
  Created --> Ready
  Ready --> Active
  Active --> Completed
  Active --> Cancelled
Hold "Alt" / "Option" to enable pan & zoom

Realtime Events

flowchart LR
  JOIN["Participant Joined"]
  LEAVE["Participant Left"]
  START["Consultation Started"]
  END["Consultation Completed"]
Hold "Alt" / "Option" to enable pan & zoom

These events may be delivered through the WebSocket Gateway to update patient and provider dashboards in real time.