Class CreateRoomOnMediaSFU

Asynchronously creates a room on MediaSFU.

This method sends a POST request to the MediaSFU API to create a new room. It validates the provided credentials and dynamically constructs the API endpoint, supporting the Community Edition via a custom localLink.

Configuration options for creating the room.

The payload containing the room creation details.

The API username, used for authentication.

The API key, used for authentication.

A promise resolving to an object containing the API response:

  • data: The response object, either CreateJoinRoomResponse or CreateJoinRoomError.
  • success: Boolean indicating whether the operation was successful.

Throws an error if the request fails or if the provided credentials are invalid.

const response = await createRoomOnMediaSFU.createRoomOnMediaSFU({
payload: {
action: 'create',
duration: 120, // Duration in minutes
capacity: 20, // Max participants
userName: 'hostUser',
scheduledDate: Date.now() + 3600000, // One hour from now
secureCode: 'secure123', // Optional
eventType: 'webinar', // Optional
},
apiUserName: 'yourAPIUSERNAME',
apiKey: 'yourAPIKEY',
localLink: 'http://localhost:3000', // Optional for Community Edition
});

if (response.success) {
console.log('Room created successfully:', response.data);
} else {
console.error('Failed to create room:', response.data?.error);
}

Constructors

Methods

Constructors

Methods

  • Asynchronously creates a room on MediaSFU.

    This method sends a POST request to the MediaSFU API to create a new room. It validates the provided credentials and dynamically constructs the API endpoint, supporting the Community Edition via a custom localLink.

    Parameters

    • options: {
          payload: CreateMediaSFURoomOptions | JoinMediaSFURoomOptions;
          apiUserName: string;
          apiKey: string;
          localLink?: string;
      }

      Configuration options for creating the room.

      • payload: CreateMediaSFURoomOptions | JoinMediaSFURoomOptions

        The payload containing the room creation details.

      • apiUserName: string

        The API username, used for authentication.

      • apiKey: string

        The API key, used for authentication.

      • OptionallocalLink?: string

        The local link for Community Edition users. If provided, it overrides the default API URL.

    Returns Promise<{
        data: null | CreateJoinRoomResponse | CreateJoinRoomError;
        success: boolean;
    }>

    A promise resolving to an object containing the API response:

      • data: The response object, either CreateJoinRoomResponse or CreateJoinRoomError.
      • success: Boolean indicating whether the operation was successful.

    Throws an error if the request fails or if the provided credentials are invalid. * *

    * const response = await createRoomOnMediaSFU.createRoomOnMediaSFU({
    * payload: {
    * action: 'create',
    * duration: 120, // Duration in minutes
    * capacity: 20, // Max participants
    * userName: 'hostUser',
    * scheduledDate: Date.now() + 3600000, // One hour from now
    * secureCode: 'secure123', // Optional
    * eventType: 'webinar', // Optional
    * },
    * apiUserName: 'yourAPIUSERNAME',
    * apiKey: 'yourAPIKEY',
    * localLink: 'http://localhost:3000', // Optional for Community Edition
    * });
    *
    * if (response.success) {
    * console.log('Room created successfully:', response.data);
    * } else {
    * console.error('Failed to create room:', response.data?.error);
    * }