UNPKG

@100mslive/hms-video-store

Version:

@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow

108 lines (91 loc) 2.19 kB
import { HMSTrackSource, HMSTranscriptionMode } from '../..'; import { HLSTimedMetadata, RTMPRecordingResolution } from '../../interfaces'; /** * Parameteres for the role change request sent to the server. */ export interface RequestForRoleChangeParams { requested_for: string; force: boolean; role: string; } export interface RequestForBulkRoleChangeParams { roles: string[]; force: boolean; role: string; } /** * Parameters for accepting a role change request sent to the server. */ export interface AcceptRoleChangeParams { requested_by?: string; role: string; token: string; } export interface RemovePeerRequest { requested_for: string; reason: string; } export interface TrackUpdateRequestParams { requested_for: string; track_id: string; stream_id: string; mute: boolean; } export interface MultiTrackUpdateRequestParams { requested_for?: string; roles?: string[]; type?: 'audio' | 'video'; source?: HMSTrackSource; value: boolean; } export interface StartRTMPOrRecordingRequestParams { meeting_url?: string; rtmp_urls?: Array<string>; record: boolean; resolution?: RTMPRecordingResolution; } export interface UpdatePeerRequestParams { name?: string; data?: string; } export interface StartTranscriptionRequestParams { mode: HMSTranscriptionMode; } export interface SetSessionMetadataParams { key?: string; data: any; if_change_version?: number; } export interface HLSRequestParams { variants?: Array<HLSVariant>; hls_recording?: { single_file_per_layer?: boolean; // false by default on server hls_vod?: boolean; // false by default on server }; } export interface HLSTimedMetadataParams { metadata_objs: HLSTimedMetadata[]; metadata_id?: string; } export interface HLSVariant { meeting_url: string; metadata?: string; } export interface GetPeerRequestParams { peer_id: string; } export interface FindPeersRequestParams { peers?: string[]; role?: string; group?: string; limit: number; } export interface FindPeerByNameRequestParams { query?: string; limit?: number; offset?: number; } export interface PeerIterRequestParams { iterator: string; limit: number; }