updateMediaSettings function

void updateMediaSettings(
  1. UpdateMediaSettingsOptions options
)

Updates media settings by calling the respective update functions for each setting type.

Example usage:

updateMediaSettings(
  UpdateMediaSettingsOptions(
    settings: ['enabled', 'enabled', 'disabled', 'enabled'],
    updateAudioSetting: (value) => print("Audio setting: $value"),
    updateVideoSetting: (value) => print("Video setting: $value"),
    updateScreenshareSetting: (value) => print("Screenshare setting: $value"),
    updateChatSetting: (value) => print("Chat setting: $value"),
  ),
);

Implementation

void updateMediaSettings(UpdateMediaSettingsOptions options) {
  try {
    // Get the settings
    String audioSetting;
    String videoSetting;
    String screenshareSetting;
    String chatSetting;

    audioSetting = options.settings.settings.isNotEmpty
        ? options.settings.settings[0]
        : 'allow';
    videoSetting = options.settings.settings.length > 1
        ? options.settings.settings[1]
        : 'allow';
    screenshareSetting = options.settings.settings.length > 2
        ? options.settings.settings[2]
        : 'allow';
    chatSetting = options.settings.settings.length > 3
        ? options.settings.settings[3]
        : 'allow';

    // Update each setting
    options.updateAudioSetting(audioSetting);
    options.updateVideoSetting(videoSetting);
    options.updateScreenshareSetting(screenshareSetting);
    options.updateChatSetting(chatSetting);
  } catch (error) {
    if (kDebugMode) {
      print("Error in updateMediaSettings: $error");
    }
  }
}