Creating a Conference

The Dolby.io Communications APIs platform allows creating a conference in two ways. You can either call a REST API or use a Client SDK.

While creating a conference, you can set the preferred parameters to, for example, create an audio-only conference, select the preferred video codec, or set your recording preference. You can also provide a conference alias that allows identifying conferences. The alias needs to be a logical and unique string that consists of up to 250 characters, such as letters, digits, and symbols other than #. Based on the provided alias, the Dolby.io platform creates a conference ID that is available only through the conference object. If a conference with the provided alias already exists on the platform, the platform does not create a new conference. In this case, the Create REST API returns conference details and the create method returns the conference object.

If there are no participants in a conference, the conference is terminated. This happens either when no one joins a conference or when all participants leave it after a meeting. The time to live (ttl) parameter defines the number of seconds after which an empty conference should be terminated. You can set this parameter while creating a conference. By default, the ttl parameter is set to 0, which means that the conference will be terminated as soon as the last participant leaves.

Creating a conference using the Create REST API

The Create REST API allows creating a conference from your backend. We recommend using this method as it allows you to control conferences from a single location. This way, you can update only your backend, instead of updating all applications using different platforms and SDKs. The Create REST API returns information about the created conference, such as the conference ID.

Creating a conference using the create method

The create method allows creating a conference using a Client SDK. The method returns the conference object, so participants can call the create method to receive the conference object and join the conference.

To create a conference using the create method (Web, iOS, Android, C++, .NET, Flutter, React Native) method, use the following code:

const createOptions = {
    alias: alias,
};
const conference = await VoxeetSDK.conference.create(createOptions);
let createOptions = VTConferenceOptions()
createOptions.alias = alias
createOptions.params.dolbyVoice = true

VoxeetSDK.shared.conference.create(options: createOptions) { conference in
  // success
} fail: { error in
  // fail
}
ConferenceCreateOptions options = new ConferenceCreateOptions.Builder()
  .setConferenceAlias(conferenceAlias)
  // add other parameters
  .build();

Promise<Conference> promise = VoxeetSDK.conference().create(options);
val options = ConferenceCreateOptions.Builder()
  .setConferenceAlias(conferenceAlias)
  // add other parameters
  .build()

// in a coroutine scope
val conference = VoxeetSDK.conference().create(options).await()
dolbyio::comms::services::conference::conference_options options{};
    options.alias = "MyConference";
    sdk->conference()
       .create(options)
       .then([](dolbyio::comms::conference_info&& conf) {
         // store the conference info somewhere, or act on it directly.
       })
       .on_error([](auto&&) { std::cerr << "Failure!" << std::endl; });
ConferenceOptions options = new ConferenceOptions();
options.Alias = "Conference alias";


Conference conference = await _sdk.Conference.CreateAsync(options);
var params = ConferenceCreateParameters();
 params.dolbyVoice = switchDolbyVoice;

 var createOptions = ConferenceCreateOption(conferenceAlias, params, 0, spatialAudioStyle);

 var conference = await _dolbyioCommsSdkFlutterPlugin.conference.create(createOptions);
const conferenceParams = {
    liveRecording: true,
    rtcpMode: RTCPMode.AVERAGE,
    ttl: 0,
    videoCodec: Codec.H264,
    dolbyVoice: true,
    spatialAudioStyle: SpatialAudioStyle.INDIVIDUAL,
};

const conferenceOptions = {
    alias: alias,
    params: conferenceParams,
};

const createdConference = await CommsAPI.conference.create(conferenceOptions);