UNPKG

mediasfu-angular

Version:

mediasfu-angular - Angular 17/18/19 WebRTC SDK for video conferencing, webinars, broadcasts, live streaming, chat, recording, whiteboard, and AI agents. Prebuilt rooms and fully custom UIs.

66 lines (65 loc) 2.82 kB
import { Socket } from 'socket.io-client'; import { ReorderStreamsParameters, ReorderStreamsType, ConnectRecvTransportType, ConnectRecvTransportParameters } from '../@types/types'; import { types } from 'mediasoup-client'; import * as i0 from "@angular/core"; type Device = types.Device; export interface SignalNewConsumerTransportParameters extends ReorderStreamsParameters, ConnectRecvTransportParameters { device: Device | null; consumingTransports: string[]; lock_screen: boolean; updateConsumingTransports: (transports: string[]) => void; connectRecvTransport: ConnectRecvTransportType; reorderStreams: ReorderStreamsType; getUpdatedAllParams: () => SignalNewConsumerTransportParameters; [key: string]: any; } export interface SignalNewConsumerTransportOptions { remoteProducerId: string; islevel: string; nsock: Socket; parameters: SignalNewConsumerTransportParameters; } export type SignalNewConsumerTransportType = (options: SignalNewConsumerTransportOptions) => Promise<string[] | void>; /** * Signals the creation of a new consumer transport. * * @param {Object} options - The options for signaling a new consumer transport. * @param {string} options.remoteProducerId - The ID of the remote producer. * @param {boolean} options.islevel - Indicates the level of the consumer. * @param {any} options.nsock - The socket instance for communication. * @param {SignalNewConsumerTransportOptions} options.parameters - The parameters for the transport. * * @returns {Promise<string[] | void>} A promise that resolves to an array of consuming transports or void. * * @throws Will throw an error if the signaling process fails. * * @example * const options = { * remoteProducerId: 'producer-id', * islevel: true, * nsock: socketInstance, * parameters: { * device: mediaDevice, * consumingTransports: [], * lock_screen: false, * updateConsumingTransports: updateFunction, * connectRecvTransport: connectFunction, * reorderStreams: reorderFunction, * getUpdatedAllParams: getUpdatedParamsFunction, * }, * }; * * signalNewConsumerTransport(options) * .then(consumingTransports => { * console.log('Consuming Transports:', consumingTransports); * }) * .catch(error => { * console.error('Error signaling new consumer transport:', error); * }); */ export declare class SignalNewConsumerTransport { signalNewConsumerTransport: ({ remoteProducerId, islevel, nsock, parameters, }: SignalNewConsumerTransportOptions) => Promise<string[] | void>; static ɵfac: i0.ɵɵFactoryDeclaration<SignalNewConsumerTransport, never>; static ɵprov: i0.ɵɵInjectableDeclaration<SignalNewConsumerTransport>; } export {};