cloudapi
Version:
CLOUD API
657 lines (656 loc) • 15.7 kB
TypeScript
import { videoResType, callbackType } from './cloud-api-interface';
interface CloudApiType {
id: string;
lock?: boolean;
fullscreen?: boolean;
debugMode?: string;
resolution?: Array<number>;
keyboard?: {
normal?: boolean;
func?: boolean;
};
initLog?: boolean;
rendererMode?: string;
}
/**
* @public
* @class CloudApi
*/
declare class CloudApi {
protected id: string;
protected taskId: string | null;
protected width: number;
protected height: number;
protected rendererMode: string;
protected deviceType: string;
protected playerDom: HTMLElement | null;
private callbacks;
private callbackEvents;
private debugMode;
private debugPer;
private multiple;
private rendererio;
private rendererPath;
private playerType;
private webRtcPlayerObj;
private playerInputDom;
private cpLock;
private spKeyBool;
private keyboardActive;
private browserFuncKey;
private socket;
private clientConfig;
private clientConfigFlag;
private resizeTimeout;
private lastTimeResized;
private video;
private audio;
private playDomDefault;
private styleWidth;
private styleHeight;
private styleTop;
private styleLeft;
private styleCursor;
private stylePosition;
private is_playing;
private normalizeAndQuantizeUnsigned;
private normalizeAndQuantizeSigned;
private _orientationChangeTimeout;
private recevieBigDataMessageString;
private recevieCirrusBigDataMessageString;
private reconnect_rtc;
private sendQueue;
private sendQueueCirrus;
private progressCallback;
private progressCallbackCirrus;
private sendPosition;
private sendPositionCirrus;
private sendBufferData;
private sendBufferDataCirrus;
private sendIntervalId;
private sendIntervalIdCirrus;
private deviceLock;
private fullscreenBool;
private initShow;
private aggregatedStats;
private screenAngle;
private touch_once;
/**
* @constructor
* @param {CloudApiType} opt
*/
constructor(opt: CloudApiType);
/**
* @private
* @function initLogInfo
* @returns {void}
*/
private initLogInfo;
/**
* @private
* @function initPlayerDom
* @returns {void}
*/
private initPlayerDom;
/**
* @private
* @function createVideo
* @returns {void}
*/
private createVideo;
/**
* @private
* @function createAudio
* @returns {void}
*/
private createAudio;
/**
* @private
* @function setupInputForChinese
* @returns {void}
*/
private setupInputForChinese;
/**
* @protected
* @function setDebugMode
* @param {string} d
* @returns {boolean}
*/
protected setDebugMode: (d: string) => boolean;
/**
* @private
* @function comparePer
* @param {number} myPer
* @param {string} actionPer
* @returns {boolean}
*/
private comparePer;
/**
* @private
* @function getCunrrentTime
* @returns {string}
*/
private getCunrrentTime;
/**
* @protected
* @function cloudApiLog
* @param {any[]} mess
* @returns {void}
*/
protected cloudApiLog: (...mess: any[]) => void;
/**
* @protected
* @function highLevelLog
* @param {any[]} mess
* @returns {void}
*/
protected highLevelLog: (...mess: any[]) => void;
/**
* @protected
* @function allLevelLog
* @param {any[]} mess
* @returns {void}
*/
protected allLevelLog: (...mess: any[]) => void;
/**
* @public
* @async
* @function getAggregatedStats
* @returns {Promise<any>}
*/
getAggregatedStats: () => Promise<any>;
/**
* @public
* @function setDeviceLock
* @param {boolean} bool
* @returns {void}
*/
setDeviceLock: (bool: boolean) => void;
/**
* @public
* @function setResolutionMultiple
* @param {number} multiple (defaultv value is 1)
* @returns {void}
*/
setResolutionMultiple: (multiple?: number) => void;
/**
* @public
* @function setResolution
* @param {number} width
* @param {number} height
* @returns {void}
*/
setResolution: (width: number, height: number) => void;
/**
* @public
* @function setBitrate
* @param {number} bitrate
* @returns {void}
*/
setBitrate: (bitrate: number) => void;
/**
* @public
* @function setFrameRate
* @param {number} maxFPS
* @returns {void}
*/
setFrameRate: (maxFPS: number) => void;
/**
* @public
* @function startRenderCloud
* @param {string} ionamespace
* @param {string} taskId
* @returns {void}
*/
startRenderCloud: (ionamespace: string, taskId: string) => void;
/**
* @public
* @function stopRenderCloud
* @returns {void}
*/
stopRenderCloud: () => void;
/**
* @public
* @function connect
* @returns {void}
*/
connect: () => void;
/**
* @public
* @function registerSocektEvent
* @returns {void}
*/
registerSocektEvent: () => void;
/**
* @public
* @function registerInputs
* @returns {void}
*/
registerInputs: () => void;
/**
* @public
* @function registerTouchEvents
* @returns {void}
*/
registerTouchEvents: () => void;
/**
* @public
* @function registerMouseEnterAndLeaveEvents
* @returns {void}
*/
registerMouseEnterAndLeaveEvents: () => void;
/**
* @public
* @function registerKeyboardEvents
* @returns {void}
*/
registerKeyboardEvents: () => void;
/**
* @public
* @function removeKeyboardEvents
* @returns {void}
*/
removeKeyboardEvents: () => void;
/**
* @public
* @function removeEvents
* @returns {void}
*/
removeEvents: () => void;
/**
* @public
* @function isKeyCodeBrowserKey
* @param {number} keyCode
* @returns {boolean}
*/
isKeyCodeBrowserKey: (keyCode: number) => boolean;
/**
* @public
* @function registerHoveringMouseEvents
* @returns {void}
*/
registerHoveringMouseEvents: () => void;
/**
* @public
* @function registerLockedMouseEvents
* @param {number} t (default value is 1)
* @returns {void}
*/
registerLockedMouseEvents: (t?: number) => void;
/**
* @public
* @function setupHtmlEvents
* @returns {void}
*/
setupHtmlEvents: () => void;
/**
* @public
* @function handleUnloadAct
* @param {any} e
* @returns {void}
*/
handleUnloadAct: (e: any) => void;
/**
* @public
* @function ChineseCompositionStartEvent
* @param {any} e
* @returns {void}
*/
ChineseCompositionStartEvent: (e: CompositionEvent) => void;
/**
* @public
* @function ChineseCompositionEndEvent
* @param {any} e
* @returns {void}
*/
ChineseCompositionEndEvent: (e: CompositionEvent) => void;
/**
* @public
* @function ChineseChangeEvent
* @param {any} e
* @returns {void}
*/
ChineseChangeEvent: (e: Event) => void;
/**
* @public
* @function inputKeyDown
* @param {any} e
* @returns {void}
*/
inputKeyDown: (e: KeyboardEvent) => void;
inputKeyUp: (e: KeyboardEvent) => void;
/**
* @public
* @function onClientConfig
* @returns {void | boolean}
*/
onClientConfig: () => void | boolean;
/**
* @public
* @function startPlay
* @returns {void}
*/
startPlay: () => void;
/**
* @public
* @function focusInputForSP
* @returns {void}
*/
focusInputForSP: () => void;
/**
* @public
* @function setupWebRtcPlayer
* @returns {void}
*/
setupWebRtcPlayer: () => void;
/**
* @public
* @function mergeArrayBuffer
* @param {Array<Uint8Array>} arrays
* @returns {Uint8Array}
*/
mergeArrayBuffer(arrays: Array<Uint8Array>): Uint8Array;
/**
* @public
* @function createWebRtcOffer
* @returns {void}
*/
createWebRtcOffer: () => void;
/**
* @public
* @function reconenctWebRtc
* @returns {void}
*/
reconenctWebRtc: () => void;
/**
* @public
* @function closeWebRtc
* @returns {void}
*/
closeWebRtc: () => void;
/**
* @public
* @function onVideoInitialised
* @returns {void}
*/
onVideoInitialised: () => void;
/**
* @public
* @function onVideoPaused
* @returns {void}
*/
onVideoPaused: () => void;
/**
* @public
* @function touchemoveAction
* @param {any} e
* @returns {void}
*/
touchemoveAction: (e: any) => void;
/**
* @public
* @function setVideoUnmutedWhenUserInteraction
* @returns {void}
*/
setVideoUnmutedWhenUserInteraction: () => void;
/**
* @public
* @function setRendererMode
* @param {string} mode
* @param {Array<number>} resolution (optional)
* @returns {void}
*/
setRendererMode: (mode: string, resolution?: Array<number>) => void;
/**
* @public
* @function orientationChanged
* @returns {void}
*/
orientationChanged: () => void;
/**
* @public
* @function resizePlayerStyle
* @returns {void}
*/
resizePlayerStyle: () => void;
/**
* @public
* @function setupNormalizeAndQuantize
* @returns {void}
*/
setupNormalizeAndQuantize: () => void;
/**
* @public
* @function emitMouseMove
* @param {number} x
* @param {number} y
* @param {number} deltaX
* @param {number} deltaY
* @returns {void}
*/
emitMouseMove: (x: number, y: number, deltaX: number, deltaY: number) => void;
/**
* @public
* @function emitMouseDown
* @param {number} button
* @param {number} x
* @param {number} y
* @returns {void}
*/
emitMouseDown: (button: number, x: number, y: number) => void;
/**
* @public
* @function emitMouseUp
* @param {number} button
* @param {number} x
* @param {number} y
* @returns {void}
*/
emitMouseUp: (button: number, x: number, y: number) => void;
/**
* @public
* @function emitMouseWheel
* @param {any} delta
* @param {number} x
* @param {number} y
* @returns {void}
*/
emitMouseWheel: (delta: any, x: number, y: number) => void;
/**
* @public
* @function releaseMouseButtons
* @param {any} buttons
* @param {number} x
* @param {number} y
* @returns {void}
*/
releaseMouseButtons: (buttons: any, x: number, y: number) => void;
/**
* @public
* @function pressMouseButtons
* @param {any} buttons
* @param {number} x
* @param {number} y
* @returns {void}
*/
pressMouseButtons: (buttons: any, x: number, y: number) => void;
/**
* @public
* @function sendPlayerType
* @returns {void}
*/
sendPlayerType: () => void;
/**
* @public
* @function sendUserConfig
* @returns {void}
*/
sendUserConfig: () => void;
/**
* @public
* @function sendWindowSize
* @returns {void}
*/
sendWindowSize: () => void;
/**
* @public
* @function sendResized
* @param {number} w
* @param {number} h
* @returns {void}
*/
sendResized: (w: number, h: number) => void;
/**
* @public
* @function updateVideoStreamSize
* @param {videoResType} videoRes
* @returns {void}
*/
updateVideoStreamSize: (videoRes: videoResType) => void;
/**
* @public
* @function emitUIInteraction
* @param {any} descriptor
* @returns {void}
*/
emitUIInteraction: (descriptor: any) => void;
/**
* @public
* @function emitCommand
* @param {any} descriptor
* @returns {void}
*/
emitCommand: (descriptor: any) => void;
/**
* @public
* @function emitMaxFpsRequest
* @returns {void}
*/
emitMaxFpsRequest: () => void;
/**
* @public
* @function emitDescriptor
* @param {number} messageType
* @param {any} descriptor
* @param {number} stype (default value is 0)
* @returns {void}
*/
emitDescriptor: (messageType: number, descriptor: any, stype?: number) => void;
/**
* @public
* @function emitString
* @param {number} messageType
* @param {any} content
* @returns {void}
*/
emitString: (messageType: number, content: any, type?: number) => void;
/**
* @public
* @function emitBuffer
* @param {number} messageType
* @param {any} content
* @returns {void}
*/
emitBuffer: (messageType: number, content: any, type?: number) => void;
/**
* @public
* @function sendInputData
* @param {any} data
* @returns {void}
*/
sendInputData: (data: any) => void;
/**
* @public
* @function sendMaxResolution
* @returns {void}
*/
sendMaxResolution: () => void;
/**
* @public
* @function sendLargeDataAction
* @param {string} mt
* @param {any} data
* @param {any} progressCallback
* @returns {void}
*/
sendLargeDataAction: (mt: string, data: any, progressCallback: any) => void;
/**
* @public
* @function sendCirrusLargeDataAction
* @param {string} mt
* @param {any} data
* @param {any} progressCallback
* @returns {void}
*/
sendCirrusLargeDataAction: (mt: string, data: any, progressCallback: any) => void;
/**
* @public
* @function registerEvents
* @param {Array<callbackType>} callbacks
* @returns {void}
*/
registerEvents: (callbacks: Array<callbackType>) => void;
/**
* @public
* @function registerEvent
* @param {Array<callbackType>} callbacks
* @returns {void}
*/
registerEvent: (callbacks: Array<callbackType>) => void;
/**
* @public
* @function unRegisterEvent
* @param {Array<string>} callbacks
* @returns {void}
*/
unRegisterEvent: (callbacks: Array<string>) => void;
/**
* @public
* @function unRegisterEvents
* @param {Array<string>} callbacks
* @returns {void}
*/
unRegisterEvents: (callbacks: Array<string>) => void;
/**
* @private
* @function onHandleCallbackFunc
* @param {string} name
* @param {any} e (default value is null)
* @returns {void}
*/
private onHandleCallbackFunc;
/**
* @public
* @function setDefaultKeyboard
* @param {boolean} bool
* @returns {void}
*/
setDefaultKeyboard: (bool: boolean) => void;
/**
* @public
* @function setDefaultBrowserFunctionKeyboard
* @param {boolean} bool
* @returns {void}
*/
setDefaultBrowserFunctionKeyboard: (bool: boolean) => void;
/**
* @public
* @function setFullScreen
* @param {boolean} bool
* @returns {void}
*/
setFullScreen: (bool: boolean) => void;
/**
* @private
* @function startFullScreen
* @returns {void}
*/
private startFullScreen;
/**
* @private
* @function exitFullScreen
* @returns {void}
*/
private exitFullScreen;
}
export default CloudApi;