MediaSFU Logo

Twitter Community Forum Github Website

License: MIT pub version Flutter 3.3+ Dart 3.3+


MediaSFU Flutter SDK

Build production-ready video conferencing, webinars, broadcasts, and chat in minutes.

MediaSFU Flutter SDK provides prebuilt, fully-featured event room components with real-time video/audio, screen sharing, recording, chat, polls, whiteboards, and more — ready to drop into your Flutter app.


⚠️ Important: Backend Server Required

MediaSFU is a frontend SDK that requires a backend media server to function.

You have two options:

Option Description Best For
☁️ MediaSFU Cloud Managed service at mediasfu.com Production apps, zero infrastructure
🏠 MediaSFU Open Self-hosted open-source server Full control, on-premise requirements
# Option 1: Use MediaSFU Cloud
# Sign up at https://www.mediasfu.com and get your API credentials

# Option 2: Self-host with MediaSFU Open
git clone https://github.com/MediaSFU/MediaSFUOpen
cd MediaSFUOpen
docker-compose up -d

📖 MediaSFU Cloud Documentation →
📖 MediaSFU Open Repository →


✨ Platform Features

MediaSFU delivers enterprise-grade real-time communication with these core capabilities:

🎥 Video & Audio

  • Multi-party video conferencing with adaptive quality
  • Screen sharing with real-time annotation
  • Virtual backgrounds and video effects (Android/iOS)
  • Audio-only participant support

🎤 Real-time Translation 🌍

  • Speak in any language — The system knows what language you're speaking
  • Listen in any language — Hear others translated to your preferred language
  • Live transcription — Real-time transcripts during meetings
  • 50+ languages supported — Global communication made seamless

👥 Participant Management

  • Panelists Mode — Designate speakers in webinars with audience Q&A
  • Individual Permissions — Granular control per-participant (video/audio/screen/chat)
  • Group Permissions — Apply permission templates to participant groups
  • Waiting room with manual admit
  • Co-host delegation with configurable responsibilities
  • Breakout rooms for focused discussions

📊 Engagement Tools

  • Live polls with real-time results
  • In-meeting chat (direct & group)
  • Collaborative whiteboards

🎬 Recording & Analytics

  • Cloud recording with track-based customization
  • Watermarks, name tags, custom backgrounds
  • Real-time call analytics

🔒 Security & Control

  • End-to-end encryption option
  • Managed events with time/capacity limits
  • Abandoned participant handling

📖 Table of Contents


🚀 Quick Start

flutter pub add mediasfu_sdk
import 'package:flutter/material.dart';
import 'package:mediasfu_sdk/mediasfu_sdk.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MediasfuGeneric(
        options: MediasfuGenericOptions(
          credentials: Credentials(
            apiUserName: "yourUsername",
            apiKey: "yourAPIKey",
          ),
        ),
      ),
    );
  }
}

That's it! You now have a fully-featured video conferencing room.


📦 Installation

flutter pub add mediasfu_sdk

Requirements

  • Flutter: 3.3.3 or higher
  • Dart: 3.3.3 or higher

Platform Support

Platform Supported Notes
Android Min SDK 23
iOS iOS 12.0+
Web HTTPS required
macOS macOS 10.15+
Windows -
Linux -

🔧 Platform Setup

Each platform requires specific permissions and configurations. See the Platform Setup Guide for detailed instructions:

Quick Platform Checklist

Platform Key Requirements
Android Camera, microphone, internet permissions in AndroidManifest.xml
iOS Camera, microphone usage descriptions in Info.plist
macOS Entitlements for camera, microphone, network access
Web HTTPS for production; browser permissions
Windows/Linux Standard Flutter desktop setup

Optional Dependencies

Some features require platform-specific dependencies. If installing from pub.flutter-io.cn, add these to your app's pubspec.yaml based on your target platforms:

# pubspec.yaml - Add as needed:

# Virtual Backgrounds (Android/iOS only)
google_mlkit_selfie_segmentation: ^0.8.0

# Web platform enhancements (Web only)
web: ^1.1.1
dart_webrtc: ^1.4.6
Feature Dependency Platforms
Virtual Backgrounds google_mlkit_selfie_segmentation Android, iOS
Whiteboard Canvas (Web) web, dart_webrtc Web

Note: If you clone from GitHub, all dependencies are already included. The pub.flutter-io.cn version excludes platform-specific deps so it shows support for all platforms.


🏛️ Prebuilt Event Rooms

Component Use Case Description
MediasfuGeneric Universal Supports all event types dynamically
ModernMediasfuGeneric Universal (Premium) Theme-aware, glassmorphism UI
MediasfuConference Meetings Multi-party video conferencing
MediasfuWebinar Webinars Presenters + audience model
MediasfuBroadcast Broadcasting One-to-many live streaming
MediasfuChat Chat Rooms Text-based with optional media

All prebuilt components share the same options interface:

MediasfuGenericOptions(
  // Authentication
  credentials: Credentials(apiUserName: "user", apiKey: "key"),
  
  // Connection
  localLink: "",                    // Self-hosted server URL
  connectMediaSFU: true,            // Toggle auto-connection
  
  // Customization
  preJoinPageWidget: customPreJoin, // Custom pre-join page
  customVideoCard: customVideoCard, // Custom video display
  customAudioCard: customAudioCard, // Custom audio display
  customMiniCard: customMiniCard,   // Custom mini display
  
  // Advanced
  returnUI: true,                   // Set false for headless mode
  useLocalUIMode: false,            // Demo/local mode
  seedData: seedData,               // Pre-populate for demos
)

🎨 Modern UI Components

ModernMediasfuGeneric is the most advanced, theme-aware variant featuring:

  • Premium glassmorphism design with backdrop blur effects
  • Dark/Light theme support built-in with automatic detection
  • Smooth animations and micro-interactions
  • Premium color system with gradient support
  • Responsive layouts for all screen sizes
import 'package:mediasfu_sdk/mediasfu_sdk.dart';

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return ModernMediasfuGeneric(
      options: ModernMediasfuGenericOptions(
        credentials: Credentials(apiUserName: "user", apiKey: "key"),
        // Theme automatically adapts to system preference
      ),
    );
  }
}

Modern Components Available

Modern Component Classic Equivalent Features
ModernVideoCard VideoCard Glass effect, animated borders
ModernAudioCard AudioCard Gradient waveforms, glow effects
ModernMiniCard MiniCard Sleek thumbnails with status
ModernMenuModal MenuModal Slide animations, blur backdrop
ModernMessagesModal MessagesModal Chat bubbles, typing indicators
ModernRecordingModal RecordingModal Status animations, progress rings
ModernParticipantsModal ParticipantsModal Search, filters, role badges
ModernBackgroundModal BackgroundModal Image gallery, blur previews
ModernPollModal PollModal Real-time voting, animations
ModernBreakoutRoomsModal BreakoutRoomsModal Drag-and-drop, room previews
ModernPanelistsModal Panelist management for webinars
ModernPermissionsModal Per-participant permission control
TranslationSettingsModal Real-time translation configuration

---

## 💡 Usage Examples

### Basic Conference Room

```dart
import 'package:mediasfu_sdk/mediasfu_sdk.dart';

class ConferenceApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MediasfuConference(
      options: MediasfuConferenceOptions(
        credentials: Credentials(
          apiUserName: "yourUsername",
          apiKey: "yourAPIKey",
        ),
      ),
    );
  }
}

Demo/Preview Mode (No Server)

import 'package:mediasfu_sdk/mediasfu_sdk.dart';

class DemoApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MediasfuGeneric(
      options: MediasfuGenericOptions(
        useLocalUIMode: true,
        useSeed: true,
        seedData: SeedData(
          member: "DemoUser",
          eventType: EventType.conference,
        ),
      ),
    );
  }
}

Headless Mode (Custom UI)

import 'package:mediasfu_sdk/mediasfu_sdk.dart';

class CustomApp extends StatefulWidget {
  @override
  State<CustomApp> createState() => _CustomAppState();
}

class _CustomAppState extends State<CustomApp> {
  final ValueNotifier<MediasfuParameters?> _params = ValueNotifier(null);

  void _updateParams(MediasfuParameters? params) {
    _params.value = params;
  }

  @override
  Widget build(BuildContext context) {
    return Stack(
      children: [
        MediasfuGeneric(
          options: MediasfuGenericOptions(
            credentials: Credentials(apiUserName: "user", apiKey: "key"),
            returnUI: false, // Headless mode
            updateSourceParameters: _updateParams,
          ),
        ),
        // Your custom UI using _params
        ValueListenableBuilder<MediasfuParameters?>(
          valueListenable: _params,
          builder: (context, params, _) {
            if (params == null) return CircularProgressIndicator();
            return MyCustomMeetingUI(parameters: params);
          },
        ),
      ],
    );
  }
}

Custom Video Cards

VideoCardType myCustomVideoCard({
  required Participant participant,
  required Stream stream,
  required double width,
  required double height,
  // ... other parameters
}) {
  return Container(
    width: width,
    height: height,
    decoration: BoxDecoration(
      borderRadius: BorderRadius.circular(16),
      border: Border.all(color: Colors.purple, width: 2),
    ),
    child: ClipRRect(
      borderRadius: BorderRadius.circular(16),
      child: VideoCard(
        options: VideoCardOptions(
          participant: participant,
          videoStream: stream.stream,
          // ... configure as needed
        ),
      ),
    ),
  );
}

// Use it
MediasfuGeneric(
  options: MediasfuGenericOptions(
    credentials: credentials,
    customVideoCard: myCustomVideoCard,
  ),
)

🎨 Customization

UI Overrides

Override specific UI components while keeping the rest:

final uiOverrides = MediasfuUICustomOverrides(
  mainContainer: ComponentOverride<MainContainerComponentOptions>(
    render: (context, options, defaultBuilder) {
      return Container(
        decoration: BoxDecoration(
          borderRadius: BorderRadius.circular(24),
          border: Border.all(color: Colors.purple, width: 3),
        ),
        child: defaultBuilder(context, options),
      );
    },
  ),
  // Override other components...
);

MediasfuGeneric(
  options: MediasfuGenericOptions(
    credentials: credentials,
    uiOverrides: uiOverrides,
  ),
)

Available Override Keys

Category Keys
Layout mainContainer, mainAspect, mainScreen, mainGrid, subAspect, otherGrid, flexibleGrid, audioGrid, pagination
Controls controlButtons, controlButtonsAlt, controlButtonsTouch
Participant miniAudio, miniAudioPlayer, meetingProgressTimer
Modals loadingModal, alert, menuModal, participantsModal, messagesModal, recordingModal, pollModal, breakoutRoomsModal, and more...
Entry preJoinPage, welcomePage
Functions consumerResume, addVideosGrid, prepopulateUserMedia

🏠 Self-Hosting / Community Edition

For self-hosted MediaSFU servers:

MediasfuGeneric(
  options: MediasfuGenericOptions(
    localLink: "https://your-mediasfu-server.com",
    connectMediaSFU: false,  // Don't connect to cloud
  ),
)

Hybrid Mode (Local + Cloud)

MediasfuGeneric(
  options: MediasfuGenericOptions(
    localLink: "https://your-server.com",
    connectMediaSFU: true,   // Also connect to MediaSFU cloud
    credentials: Credentials(apiUserName: "user", apiKey: "key"),
  ),
)

🌐 Advanced Features

sourceParameters - The Power API

Access all MediaSFU functionality through sourceParameters:

// Get all video/audio streams
final videoStreams = params.allVideoStreams;
final audioStreams = params.allAudioStreams;

// Control media
params.clickVideo(ClickVideoOptions(parameters: params));
params.clickAudio(ClickAudioOptions(parameters: params));
params.clickScreenShare(ClickScreenShareOptions(parameters: params));

// Toggle modals
params.updateIsParticipantsModalVisible(true);
params.updateIsMessagesModalVisible(true);
params.updateIsRecordingModalVisible(true);

// Access room state
final participants = params.participants;
final roomName = params.roomName;
final isRecording = params.recordStarted;

Panelists Mode (Webinars)

In webinar mode, designate specific participants as panelists who can speak, while others remain audience members:

// Access panelists from sourceParameters
final panelists = params.panelists;
final panelistsFocused = params.panelistsFocused;

// Listen for panelist events:
// - panelistsUpdated
// - addedAsPanelist
// - removedFromPanelists
// - panelistFocusChanged

// Toggle panelists modal
params.updateIsPanelistsModalVisible(true);

Individual & Group Permissions

Control each participant's capabilities with granular permissions:

// Permission levels:
// "0" - Standard participant
// "1" - Elevated (co-host level)
// "2" - Host (full control)

// Configure per-participant capabilities:
// - Video on/off
// - Audio on/off  
// - Screen sharing
// - Chat access

// Access permission config
final permissionConfig = params.permissionConfig;

// Toggle permissions modal
params.updateIsPermissionsModalVisible(true);

Real-time Translation 🌍

Enable participants to speak in their native language and listen in any language with live AI translation:

// Translation is configured via TranslationSettingsModal
// Available in ModernMediasfuGeneric

// Translation events:
// - translation:roomConfig
// - translation:languageSet
// - translation:subscribed
// - translation:transcript
// - translation:speakerOutputChanged

// Access translation state
final translationMeta = params.translationMeta;
final translationConfig = params.translationConfig;

Translation Features:

  • Set your spoken language — The system knows what language you're speaking
  • Choose listening language — Hear others translated to your preferred language
  • Real-time transcription — See live transcripts during meetings
  • 50+ languages supported — Global communication made seamless
  • Voice cloning options — Advanced TTS with custom voice configurations

Get Participant Media

Retrieve specific participant streams:

final videoStream = getParticipantMedia(
  options: GetParticipantMediaOptions(
    participantId: 'producer-123',
    mediaType: 'video',
    parameters: params,
  ),
);

// Or by name
final audioStream = getParticipantMedia(
  options: GetParticipantMediaOptions(
    participantName: 'John Doe',
    mediaType: 'audio',
    parameters: params,
  ),
);

Virtual Backgrounds (Android/iOS)

The SDK supports virtual backgrounds on Android and iOS using ML Kit:

// Virtual backgrounds are automatically available in MediaSettingsModal
// Users can select blur or image backgrounds

Note: Virtual backgrounds require an optional dependency. Add to your pubspec.yaml:

# Android/iOS only - for virtual backgrounds
google_mlkit_selfie_segmentation: ^0.8.0

See Platform Setup for ML Kit configuration.


📖 Detailed Documentation

For comprehensive documentation including:

  • Full API reference
  • All component props
  • 200+ methods documentation
  • Socket event handling
  • Recording configuration
  • Breakout rooms
  • Whiteboard integration
  • Troubleshooting guide
  • And much more...

📄 See README_DETAILED.md



📄 License

MIT © MediaSFU


Built with ❤️ by MediaSFU

Libraries

components
components/background_components/background_components
Background Components
components/background_components/background_modal
components/background_components/background_preview_widget
components/background_components/background_processor_service
components/background_components/background_video_display
components/background_components/compositor
components/background_components/frame_processor
components/background_components/mlkit_segmenter_stub
ML Kit Selfie Segmentation Integration
components/background_components/native_virtual_background
components/background_components/processed_video_renderer
components/background_components/segmenter/segmenter
Segmenter - Conditional Export Router
components/background_components/segmenter/segmenter_interface
Segmenter Interface - Shared Base for All Platforms
components/background_components/segmenter/segmenter_mobile
Stub Segmenter - Fallback for Unsupported Platforms
components/background_components/segmenter/segmenter_stub
Stub Segmenter - Fallback for Unsupported Platforms
components/background_components/virtual_background_channel
components/background_components/virtual_background_processor
components/background_components/virtual_background_types
components/background_components/virtual_stream_source
components/breakout_components/breakout_rooms_modal
components/co_host_components/co_host_modal
components/display_components/alert_component
components/display_components/audio_card
components/display_components/audio_decibel_check
components/display_components/audio_grid
components/display_components/card_video_display
components/display_components/control_buttons_alt_component
components/display_components/control_buttons_component
components/display_components/control_buttons_component_touch
components/display_components/flexible_grid
components/display_components/flexible_video
components/display_components/loading_modal
components/display_components/main_aspect_component
components/display_components/main_container_component
components/display_components/main_grid_component
components/display_components/main_screen_component
components/display_components/meeting_progress_timer
components/display_components/mini_audio
components/display_components/mini_card
components/display_components/other_grid_component
components/display_components/pagination
components/display_components/participants_counter_badge
components/display_components/simple_audio_player
components/display_components/sub_aspect_component
components/display_components/video_card
components/display_settings_components/display_settings_modal
components/event_settings_components/event_settings_modal
components/exit_components/confirm_exit_modal
components/media_settings_components/media_settings_modal
components/mediasfu_components/mediasfu_broadcast
components/mediasfu_components/mediasfu_chat
components/mediasfu_components/mediasfu_conference
components/mediasfu_components/mediasfu_generic
components/mediasfu_components/mediasfu_webinar
components/menu_components/custom_buttons
components/menu_components/meeting_id_component
components/menu_components/meeting_passcode_component
components/menu_components/share_buttons_component
components/message_components/message_panel
components/message_components/messages_modal
components/misc_components/confirm_here_modal
components/misc_components/prejoin_page
components/misc_components/share_event_modal
components/misc_components/welcome_page
components/misc_components/welcome_page_qrcode
components/panelists_components/panelists_components
components/panelists_components/panelists_modal
components/participants_components/participant_list
components/participants_components/participant_list_item
components/participants_components/participant_list_others
components/participants_components/participant_list_others_item
components/participants_components/participants_modal
components/permissions_components/permissions_components
components/permissions_components/permissions_modal
components/polls_components/poll_modal
components/recording_components/advanced_panel_component
components/recording_components/recording_modal
components/recording_components/standard_panel_component
components/requests_components/render_request_component
components/requests_components/requests_modal
components/waiting_components/waiting_modal
components/whiteboard_components/configure_whiteboard_modal
components/whiteboard_components/screenboard
components/whiteboard_components/screenboard_modal
components/whiteboard_components/whiteboard
components/whiteboard_components/whiteboard_components
Whiteboard Components
components/whiteboard_components/whiteboard_painter
components/whiteboard_components/whiteboard_shape
components/whiteboard_components/whiteboard_toolbar
components_modern/background_components/modern_background_modal
components_modern/breakout_components/modern_breakout_rooms_modal
components_modern/co_host_components/modern_co_host_modal
components_modern/components_modern
Core theme exports
components_modern/core/mediasfu_core
MediaSFU Modern Core
components_modern/core/theme/mediasfu_animations
components_modern/core/theme/mediasfu_borders
components_modern/core/theme/mediasfu_colors
components_modern/core/theme/mediasfu_spacing
components_modern/core/theme/mediasfu_theme
components_modern/core/theme/mediasfu_theme_exports
MediaSFU Modern Theme System
components_modern/core/theme/mediasfu_typography
components_modern/core/theme/modern_style_options
components_modern/core/widgets/animated_gradient_background
components_modern/core/widgets/animated_icon_button
components_modern/core/widgets/animation_widgets
components_modern/core/widgets/glassmorphic_container
components_modern/core/widgets/glow_container
components_modern/core/widgets/gradient_card
components_modern/core/widgets/neumorphic_container
components_modern/core/widgets/premium_button
components_modern/core/widgets/premium_text_field
components_modern/core/widgets/premium_widgets
Premium UI widget primitives for the modern MediaSFU UI.
components_modern/core/widgets/pulse_border
components_modern/core/widgets/shimmer_loading
components_modern/core/widgets/skeleton_loader
components_modern/core/widgets/styled_container
components_modern/display_components/modern_alert_component
components_modern/display_components/modern_audio_card
components_modern/display_components/modern_audio_decibel_check
components_modern/display_components/modern_card_video_display
components_modern/display_components/modern_control_buttons_component
components_modern/display_components/modern_control_buttons_component_touch
components_modern/display_components/modern_flexible_grid
components_modern/display_components/modern_flexible_video
components_modern/display_components/modern_loading_modal
components_modern/display_components/modern_main_container_component
components_modern/display_components/modern_meeting_progress_timer
components_modern/display_components/modern_mini_card
components_modern/display_components/modern_pagination
components_modern/display_components/modern_video_card
components_modern/display_settings_components/modern_display_settings_modal
components_modern/event_settings_components/modern_event_settings_modal
components_modern/exit_components/modern_confirm_exit_modal
components_modern/media_settings_components/modern_media_settings_modal
components_modern/mediasfu_components/modern_mediasfu_generic
components_modern/menu_components/modern_custom_buttons
components_modern/menu_components/modern_meeting_id_component
components_modern/menu_components/modern_meeting_passcode_component
components_modern/menu_components/modern_menu_modal
components_modern/menu_components/modern_share_buttons_component
components_modern/message_components/modern_message_panel
components_modern/message_components/modern_messages_modal
components_modern/misc_components/modern_confirm_here_modal
components_modern/misc_components/modern_prejoin_page
components_modern/misc_components/modern_share_event_modal
components_modern/misc_components/modern_welcome_page
components_modern/panelists_components/modern_panelists_modal
components_modern/participants_components/modern_participant_list
components_modern/participants_components/modern_participants_modal
components_modern/permissions_components/modern_permissions_modal
components_modern/polls_components/modern_poll_modal
components_modern/recording_components/modern_advanced_panel_component
components_modern/recording_components/modern_recording_modal
components_modern/recording_components/modern_standard_panel_component
components_modern/requests_components/modern_requests_modal
components_modern/translation_components/translation_components
Translation Components Module
components_modern/translation_components/translation_settings_modal
components_modern/utils/modern_mini_audio_player
Modern Mini Audio Player - Glassmorphic audio player widget
components_modern/waiting_components/modern_waiting_modal
components_modern/whiteboard_components/modern_configure_whiteboard_modal
consumers
consumers/add_videos_grid
consumers/auto_adjust
consumers/calculate_rows_and_columns
consumers/change_vids
consumers/check_grid
consumers/check_permission
consumers/check_screen_share
consumers/close_and_resize
consumers/compare_active_names
consumers/compare_screen_states
consumers/connect_ips
consumers/connect_local_ips
consumers/connect_recv_transport
consumers/connect_send_transport
consumers/connect_send_transport_audio
consumers/connect_send_transport_screen
consumers/connect_send_transport_video
consumers/consumer_resume
consumers/control_media
consumers/create_send_transport
consumers/disconnect_send_transport_audio
consumers/disconnect_send_transport_screen
consumers/disconnect_send_transport_video
consumers/disp_streams
consumers/generate_page_content
consumers/get_estimate
consumers/get_piped_producers_alt
consumers/get_producers_piped
consumers/get_videos
consumers/mix_streams
consumers/on_screen_changes
consumers/prepopulate_user_media
consumers/process_consumer_transports
consumers/process_consumer_transports_audio
consumers/re_port
consumers/re_update_inter
consumers/readjust
consumers/receive_all_piped_transports
consumers/receive_room_messages
consumers/reorder_streams
consumers/request_screen_share
consumers/resume_pause_audio_streams
consumers/resume_pause_streams
consumers/resume_send_transport_audio
consumers/signal_new_consumer_transport
consumers/socket_receive_methods/join_consume_room
consumers/socket_receive_methods/new_pipe_producer
consumers/socket_receive_methods/producer_closed
consumers/start_consuming_translation
consumers/start_share_screen
consumers/stop_share_screen
consumers/stream_success_audio
consumers/stream_success_audio_switch
consumers/stream_success_screen
consumers/stream_success_video
consumers/switch_user_audio
consumers/switch_user_video
consumers/switch_user_video_alt
consumers/translation_consumer_switch
Translation Consumer Switch Utilities
consumers/trigger
consumers/update_mini_cards_grid
consumers/update_participant_audio_decibels
main
main_broadcast
main_chat
main_conference
main_generic
main_modern
main_playbook_core
main_unique
main_webinar
mediasfu_sdk
methods
methods/breakout_rooms_methods/breakout_room_updated
methods/breakout_rooms_methods/launch_breakout_rooms
methods/co_host_methods/launch_co_host
methods/co_host_methods/modify_co_host_settings
methods/display_settings_methods/launch_display_settings
methods/display_settings_methods/modify_display_settings
methods/exit_methods/confirm_exit
methods/exit_methods/launch_confirm_exit
methods/media_settings_methods/launch_media_settings
methods/menu_methods/launch_menu_modal
methods/message_methods/launch_messages
methods/message_methods/send_message
methods/panelists_methods/focus_panelists
methods/panelists_methods/launch_panelists
launchPanelists - Toggles the visibility of the panelists modal.
methods/panelists_methods/panelists_methods
methods/panelists_methods/update_panelists
methods/participants_methods/launch_participants
methods/participants_methods/message_participants
methods/participants_methods/mute_participants
methods/participants_methods/remove_participants
methods/permissions_methods/launch_permissions
launchPermissions - Toggles the visibility of the permissions modal.
methods/permissions_methods/permissions_methods
methods/permissions_methods/update_participant_permission
methods/permissions_methods/update_permission_config
methods/polls_methods/handle_create_poll
methods/polls_methods/handle_end_poll
methods/polls_methods/handle_vote_poll
methods/polls_methods/launch_poll
methods/polls_methods/poll_updated
methods/recording_methods/check_pause_state
methods/recording_methods/check_resume_state
methods/recording_methods/confirm_recording
methods/recording_methods/launch_recording
methods/recording_methods/record_pause_timer
methods/recording_methods/record_resume_timer
methods/recording_methods/record_start_timer
methods/recording_methods/record_update_timer
methods/recording_methods/start_recording
methods/recording_methods/stop_recording
methods/recording_methods/update_recording
methods/requests_methods/launch_requests
methods/requests_methods/respond_to_requests
methods/settings_methods/launch_settings
methods/settings_methods/modify_settings
methods/stream_methods/click_audio
methods/stream_methods/click_chat
methods/stream_methods/click_screen_share
methods/stream_methods/click_video
methods/stream_methods/switch_audio
methods/stream_methods/switch_audio_output
methods/stream_methods/switch_video
methods/stream_methods/switch_video_alt
methods/utils/check_limits_and_make_request
methods/utils/create_join_room
methods/utils/create_response_join_room
methods/utils/create_room_on_media_sfu
methods/utils/format_number
methods/utils/generate_random_messages
methods/utils/generate_random_participants
methods/utils/generate_random_polls
methods/utils/generate_random_request_list
methods/utils/generate_random_waiting_room_list
methods/utils/get_media_devices_list
Retrieves the list of available media devices.
methods/utils/get_modal_position
methods/utils/get_overlay_position
methods/utils/get_participant_media
Retrieves the media stream of a participant by ID or name.
methods/utils/initial_values
methods/utils/join_room_on_media_sfu
methods/utils/mediasfu_parameters
methods/utils/meeting_timer/start_meeting_progress_timer
methods/utils/mini_audio_player/mini_audio_player
methods/utils/platform_feature_support
methods/utils/producer/a_params
methods/utils/producer/h_params
methods/utils/producer/screen_params
methods/utils/producer/v_params
methods/utils/producer/video_capture_constraints
methods/utils/sleep
methods/utils/sound_player
methods/utils/translation_languages
Central Language Definitions for Translation Pipeline (Frontend)
methods/utils/validate_alphanumeric
methods/waiting_methods/launch_waiting
methods/waiting_methods/respond_to_waiting
methods/whiteboard_methods/canvas_capture_stub
Stub implementation for non-web platforms.
methods/whiteboard_methods/canvas_capture_web
Stub implementation for non-web platforms.
methods/whiteboard_methods/capture_canvas_stream
methods/whiteboard_methods/launch_configure_whiteboard
misc
producer_client/producer_client_emits/create_device_client
producer_client/producer_client_emits/join_room_client
producer_client/producer_client_emits/update_room_parameters_client
producers
producers/producer_emits/join_con_room
producers/producer_emits/join_local_room
producers/producer_emits/join_room
producers/socket_receive_methods/all_members
producers/socket_receive_methods/all_members_rest
producers/socket_receive_methods/all_waiting_room_members
producers/socket_receive_methods/ban_participant
producers/socket_receive_methods/control_media_host
producers/socket_receive_methods/disconnect
producers/socket_receive_methods/disconnect_user_self
producers/socket_receive_methods/get_domains
producers/socket_receive_methods/host_request_response
producers/socket_receive_methods/meeting_ended
producers/socket_receive_methods/meeting_still_there
producers/socket_receive_methods/meeting_time_remaining
producers/socket_receive_methods/panelist_receive_methods
Handler for panelist-related socket events.
producers/socket_receive_methods/participant_requested
producers/socket_receive_methods/permission_receive_methods
Handler for permission-related socket events.
producers/socket_receive_methods/person_joined
producers/socket_receive_methods/producer_media_closed
producers/socket_receive_methods/producer_media_paused
producers/socket_receive_methods/producer_media_resumed
producers/socket_receive_methods/re_initiate_recording
producers/socket_receive_methods/receive_message
producers/socket_receive_methods/recording_notice
producers/socket_receive_methods/room_record_params
producers/socket_receive_methods/screen_producer_id
producers/socket_receive_methods/start_records
producers/socket_receive_methods/stopped_recording
producers/socket_receive_methods/time_left_recording
producers/socket_receive_methods/translation_receive_methods
Translation Socket Receive Methods
producers/socket_receive_methods/update_consuming_domains
producers/socket_receive_methods/update_media_settings
producers/socket_receive_methods/updated_co_host
producers/socket_receive_methods/user_waiting
sockets
sockets/socket_manager
types
types/custom_builders
types/types
types/ui_overrides