UNPKG

@skyway-sdk/sfu-bot

Version:

The official Next Generation JavaScript SDK for SkyWay

66 lines 2.82 kB
import { Event } from '@skyway-sdk/common'; import { LocalAudioStream, LocalCustomVideoStream, LocalPersonImpl, LocalVideoStream, MemberImpl, MemberType, Publication, RemoteMemberImplInterface, SkyWayChannelImpl, SkyWayContext } from '@skyway-sdk/core'; import { SfuRestApiClient } from '@skyway-sdk/sfu-api-client'; import { SfuBotPlugin } from '.'; import { SFUConnection } from './connection'; import { TransportRepository } from './connection/transport/transportRepository'; import { Forwarding, ForwardingConfigure } from './forwarding'; import { SfuBotPluginOptions } from './option'; export declare class SfuBotMember extends MemberImpl implements RemoteMemberImplInterface { readonly side = "remote"; static readonly subtype = "sfu"; readonly subtype = "sfu"; readonly type: MemberType; private readonly _context; private readonly _transportRepository; readonly options: SfuBotPluginOptions; private _connections; /** @description [japanese] forwardingを開始した時に発火するイベント */ readonly onForwardingStarted: Event<{ forwarding: Forwarding; }>; /** @description [japanese] forwardingを終了した時に発火するイベント */ readonly onForwardingStopped: Event<{ forwarding: Forwarding; }>; /** @description [japanese] forwardingの数が変化した時に発火するイベント */ readonly onForwardingListChanged: Event<void>; private readonly _api; private _startForwardQueue; private _forwardings; get forwardings(): Forwarding[]; /**@internal */ constructor(args: { channel: SkyWayChannelImpl; id: string; name?: string; metadata?: string | undefined; plugin: SfuBotPlugin; api: SfuRestApiClient; context: SkyWayContext; transportRepository: TransportRepository; options: SfuBotPluginOptions; }); /**@private */ _getConnection(localPersonId: string): SFUConnection; /**@private */ _getOrCreateConnection(localPerson: LocalPersonImpl): SFUConnection; /**@private */ private _createConnection; /** * @description [japanese] StreamのPublicationをForwardingする * @throws {SkyWayError} * @example * const forwarding = await bot.startForwarding(publication, { maxSubscribers: 99 }); */ startForwarding(publication: Publication<LocalVideoStream | LocalAudioStream | LocalCustomVideoStream>, configure?: Partial<ForwardingConfigure>): Promise<Forwarding>; private _startForwarding; private listenStopForwardEvent; /** * @description [japanese] Forwardingを停止する */ stopForwarding: (target: string | Forwarding) => Promise<void>; /**@private */ _dispose(): void; } //# sourceMappingURL=member.d.ts.map