UNPKG

mediasfu-angular

Version:
71 lines (70 loc) 3.44 kB
import { Socket } from 'socket.io-client'; import { SignalNewConsumerTransportParameters, SignalNewConsumerTransportType } from '../@types/types'; import * as i0 from "@angular/core"; export interface GetPipedProducersAltParameters extends SignalNewConsumerTransportParameters { member: string; signalNewConsumerTransport: SignalNewConsumerTransportType; [key: string]: any; } export interface GetPipedProducersAltOptions { community?: boolean; nsock: Socket; islevel: string; parameters: GetPipedProducersAltParameters; } export type GetPipedProducersAltType = (options: GetPipedProducersAltOptions) => Promise<void>; /** * Retrieves piped producers and signals new consumer transport for each retrieved producer. * * @param {GetPipedProducersAltOptions} options - The options for retrieving piped producers. * @param {boolean} options.community - Whether the room is a community edition room. * @param {Socket} options.nsock - The WebSocket instance used for communication. * @param {string} options.islevel - A flag indicating the level of the request. * @param {GetPipedProducersAltParameters} options.parameters - Additional parameters for the request. * @param {string} options.parameters.member - The member identifier. * @param {SignalNewConsumerTransportType} options.parameters.signalNewConsumerTransport - A function to signal new consumer transport. * * @returns {Promise<void>} A promise that resolves when the operation is complete. * * @throws {Error} If an error occurs during the process of retrieving producers. * * @example * ```typescript * const options = { * community: true, * nsock: socketInstance, * islevel: '2', * parameters: { * member: 'user123', * signalNewConsumerTransport: async ({ nsock, remoteProducerId, islevel, parameters }) => { * // Implementation to signal new consumer transport * console.log(`Signaling new consumer transport for producer: ${remoteProducerId}`); * }, * }, * }; * * const getPipedProducersService = new GetPipedProducersAlt(); * await getPipedProducersService.getPipedProducersAlt(options); * console.log('Piped producers retrieved successfully.'); * ``` */ export declare class GetPipedProducersAlt { /** * Retrieves piped producers and signals new consumer transport for each retrieved producer. * * @param {Object} options - The options for retrieving piped producers. * @param {boolean} options.community - Whether the room is a community edition room. * @param {WebSocket} options.nsock - The WebSocket instance used for communication. * @param {boolean} options.islevel - A flag indicating the level of the request. * @param {Object} options.parameters - Additional parameters for the request. * @param {string} options.parameters.member - The member identifier. * @param {Function} options.parameters.signalNewConsumerTransport - A function to signal new consumer transport. * * @returns {Promise<void>} A promise that resolves when the operation is complete. * * @throws {Error} If an error occurs during the process of retrieving producers. */ getPipedProducersAlt({ community, nsock, islevel, parameters, }: GetPipedProducersAltOptions): Promise<void>; static ɵfac: i0.ɵɵFactoryDeclaration<GetPipedProducersAlt, never>; static ɵprov: i0.ɵɵInjectableDeclaration<GetPipedProducersAlt>; }