larksr_websdk 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -0
- package/dist/larksr-web-sdk.min.js +15 -0
- package/dist/larksr-web-sdk.min.worker.js +1 -0
- package/dist/types/api.d.ts +85 -0
- package/dist/types/appli_params.d.ts +244 -0
- package/dist/types/common/cmd.d.ts +28 -0
- package/dist/types/common/constant.d.ts +4 -0
- package/dist/types/common/interface.d.ts +30 -0
- package/dist/types/config.d.ts +59 -0
- package/dist/types/event/bus.d.ts +8 -0
- package/dist/types/event/event_base.d.ts +14 -0
- package/dist/types/event/events.d.ts +126 -0
- package/dist/types/event/iframe_poster.d.ts +9 -0
- package/dist/types/event/message.d.ts +69 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/lark/Worker.d.ts +3 -0
- package/dist/types/lark/application.d.ts +102 -0
- package/dist/types/lark/custom.d.ts +7 -0
- package/dist/types/lark/lark_event_type.d.ts +109 -0
- package/dist/types/lark/message.d.ts +19 -0
- package/dist/types/lark/peer_connection.d.ts +113 -0
- package/dist/types/lark/sdp_util.d.ts +36 -0
- package/dist/types/lark/websocket_channel.d.ts +57 -0
- package/dist/types/lark/websocket_proxy.d.ts +57 -0
- package/dist/types/larksr.d.ts +138 -0
- package/dist/types/localization/base.d.ts +8 -0
- package/dist/types/localization/gesture_ins.d.ts +4 -0
- package/dist/types/localization/language.d.ts +6 -0
- package/dist/types/localization/loader.d.ts +14 -0
- package/dist/types/localization/message.d.ts +81 -0
- package/dist/types/localization/ui.d.ts +58 -0
- package/dist/types/operation/gamepad_handler.d.ts +67 -0
- package/dist/types/operation/gesture.d.ts +70 -0
- package/dist/types/operation/gesture_handler.d.ts +13 -0
- package/dist/types/operation/handler_base.d.ts +8 -0
- package/dist/types/operation/keyboard_handler.d.ts +15 -0
- package/dist/types/operation/keymap.d.ts +20 -0
- package/dist/types/operation/letter_keymap.d.ts +8 -0
- package/dist/types/operation/mouse_handler.d.ts +40 -0
- package/dist/types/operation/num_keymap.d.ts +12 -0
- package/dist/types/operation/operation.d.ts +58 -0
- package/dist/types/operation/touch_handler.d.ts +11 -0
- package/dist/types/operation/utils.d.ts +18 -0
- package/dist/types/protobuf/cloudlark.d.ts +5944 -0
- package/dist/types/protobuf/message.d.ts +528 -0
- package/dist/types/screen_state.d.ts +108 -0
- package/dist/types/sdk_auth.d.ts +11 -0
- package/dist/types/utils/browser_type.d.ts +37 -0
- package/dist/types/utils/capabilities.d.ts +48 -0
- package/dist/types/utils/full_screen.d.ts +25 -0
- package/dist/types/utils/lock_pointer.d.ts +23 -0
- package/dist/types/utils/log.d.ts +25 -0
- package/dist/types/utils/scale_mode.d.ts +20 -0
- package/dist/types/utils/unit.d.ts +152 -0
- package/package.json +61 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { EventBase, LocalEvent } from '../event/event_base';
|
|
2
|
+
import * as Msg from '../protobuf/cloudlark';
|
|
3
|
+
import WebSocektChannel from './websocket_channel';
|
|
4
|
+
import WebsocketProxy from './websocket_proxy';
|
|
5
|
+
import { LarkSR } from '../larksr';
|
|
6
|
+
export declare enum APP_STATE {
|
|
7
|
+
BEFORE_CREATE = 0,
|
|
8
|
+
INITED = 1,
|
|
9
|
+
WEBSOCKET_CHANNEL_OPEN = 2,
|
|
10
|
+
LOGIN_SUCCESS = 3,
|
|
11
|
+
RTC_CONNECTED = 4,
|
|
12
|
+
MEDIA_LOADED = 5,
|
|
13
|
+
MEDIA_PLAED = 6,
|
|
14
|
+
RTC_RETRY = 7,
|
|
15
|
+
APP_RETRY = 8,
|
|
16
|
+
BEFORE_DESTORY = 9,
|
|
17
|
+
WEBSOCKET_CLOSED = 10,
|
|
18
|
+
RTC_CLOSED = 11,
|
|
19
|
+
DESTROYED = 12
|
|
20
|
+
}
|
|
21
|
+
export declare enum APP_EVENT_TYPE {
|
|
22
|
+
REMOTE_STREAM = 0,
|
|
23
|
+
SYNC_CURSORSTYLE = 1,
|
|
24
|
+
APP_STATE_CHANGE = 2,
|
|
25
|
+
LK_APP_RESIZE = 3,
|
|
26
|
+
LK_APP_MOUSE_MODE = 4,
|
|
27
|
+
LK_APP_PLAER_LIST = 5,
|
|
28
|
+
LK_APP_REQUEST_TEXT = 6,
|
|
29
|
+
LK_DATA_CHANNEL_RENDERSERVER_TEXT_MESSAGE = 7,
|
|
30
|
+
LK_DATA_CHANNEL_RENDERSERVER_BINARY_MESSAGE = 8,
|
|
31
|
+
LK_DATA_CHANNEL_RENDERSERVER_OPEN = 9,
|
|
32
|
+
LK_DATA_CHANNEL_RENDERSERVER_CLOSE = 10
|
|
33
|
+
}
|
|
34
|
+
export interface AppEvent extends LocalEvent<APP_EVENT_TYPE> {
|
|
35
|
+
data?: any;
|
|
36
|
+
state: APP_STATE;
|
|
37
|
+
}
|
|
38
|
+
export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
|
|
39
|
+
private websocketChannel;
|
|
40
|
+
private websocketProxy;
|
|
41
|
+
private peerConnection;
|
|
42
|
+
get state(): APP_STATE;
|
|
43
|
+
set state(state: APP_STATE);
|
|
44
|
+
private _state;
|
|
45
|
+
private retryTime;
|
|
46
|
+
private larksr;
|
|
47
|
+
constructor(larksr: LarkSR);
|
|
48
|
+
init(): void;
|
|
49
|
+
initPc(): void;
|
|
50
|
+
releasePc(): void;
|
|
51
|
+
clear(): void;
|
|
52
|
+
changeOperater(uid: number): void;
|
|
53
|
+
inputText(text: string): void;
|
|
54
|
+
sendTextToDataChannel(text: string): void;
|
|
55
|
+
sendBinaryToDataChannel(binary: Uint8Array): void;
|
|
56
|
+
start(): Promise<void>;
|
|
57
|
+
connect(): Promise<WebsocketProxy> | Promise<WebSocektChannel> | undefined;
|
|
58
|
+
disConnect(): void;
|
|
59
|
+
closeRtc(): void;
|
|
60
|
+
versionCheck(): void;
|
|
61
|
+
task(): void;
|
|
62
|
+
startSteam(): void;
|
|
63
|
+
startMonitorSteam(): void;
|
|
64
|
+
restart(): void;
|
|
65
|
+
restartApp(): void;
|
|
66
|
+
rtcOffer(): void;
|
|
67
|
+
setAnswer(sdp: string): void;
|
|
68
|
+
setIce(candidate: string): void;
|
|
69
|
+
sendInput(input: Msg.CloudLark.ClientInput): void;
|
|
70
|
+
private onChannelOpen;
|
|
71
|
+
private onClose;
|
|
72
|
+
private onChannelMsg;
|
|
73
|
+
private onVersionCheckResponse;
|
|
74
|
+
private onTaskResponse;
|
|
75
|
+
private onStartStreamResponse;
|
|
76
|
+
private onStartMonitorResponse;
|
|
77
|
+
private onWebRtcOfferAnswer;
|
|
78
|
+
private onWebRtcIcecandidate;
|
|
79
|
+
private onWebRtcError;
|
|
80
|
+
private onAppProcess;
|
|
81
|
+
private onLogout;
|
|
82
|
+
private onLocalSdp;
|
|
83
|
+
private onLoacalIce;
|
|
84
|
+
private onRemoteStream;
|
|
85
|
+
private onRtcError;
|
|
86
|
+
private onIceStateChange;
|
|
87
|
+
retryPeerconnection(): void;
|
|
88
|
+
private onPeerConnectionDisconnect;
|
|
89
|
+
private onBadNetwork;
|
|
90
|
+
private onCursorStyle;
|
|
91
|
+
private onAppResize;
|
|
92
|
+
private onAppMouseMode;
|
|
93
|
+
private onAppPlayerList;
|
|
94
|
+
private onAppRequestText;
|
|
95
|
+
private onDataChannelText;
|
|
96
|
+
private onDataChannelBinary;
|
|
97
|
+
private onDataChannelOpen;
|
|
98
|
+
private onDataChannelClose;
|
|
99
|
+
appStateChange(state: APP_STATE): void;
|
|
100
|
+
private $emit;
|
|
101
|
+
private createAppEvent;
|
|
102
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
export declare const enum LarkEventType {
|
|
2
|
+
LK_WEB_CLIENT_LOAD_SUCCESS = 1,
|
|
3
|
+
LK_API_ENTERAPPLI_SUCCESS = 10,
|
|
4
|
+
LK_API_ENTERAPPLI_FAILED = 11,
|
|
5
|
+
LK_TASK_SYNC_APP = 20,
|
|
6
|
+
LK_TASK_SYNC_APP_FAILED = 21,
|
|
7
|
+
LK_RENDER_SERVER_CONNECTED = 100,
|
|
8
|
+
LK_RENDER_SERVER_FAILED = 101,
|
|
9
|
+
LK_RENDER_SERVER_CLOSE = 102,
|
|
10
|
+
LK_RENDER_SERVER_ERROR = 103,
|
|
11
|
+
LK_PROXY_SERVER_CONNECTED = 200,
|
|
12
|
+
LK_PROXY_SERVER_FAILED = 201,
|
|
13
|
+
LK_PROXY_SERVER_CLOSE = 202,
|
|
14
|
+
LK_PROXY_SERVER_ERROR = 203,
|
|
15
|
+
LK_VERSION_CHECK_SUCCESS = 300,
|
|
16
|
+
LK_VERSION_CHECK_FAILED = 301,
|
|
17
|
+
LK_TASK_SUCCESS = 400,
|
|
18
|
+
LK_TASK_NOTFOUND = 401,
|
|
19
|
+
LK_TASK_SERVER_ERROR = 402,
|
|
20
|
+
LK_TASK_APP_WRONGPARAM = 403,
|
|
21
|
+
LK_TASK_NO_GPU_RESOURCE = 404,
|
|
22
|
+
LK_START_STREAM_SUCCESS = 500,
|
|
23
|
+
LK_START_STREAM_PROCESS_START_FAILED = 501,
|
|
24
|
+
LK_START_STREAM_PROCESS_START_TIMEOUT = 502,
|
|
25
|
+
LK_START_STREAM_NOT_STREAMING = 503,
|
|
26
|
+
LK_START_STREAM_ENCODER_ERROR = 504,
|
|
27
|
+
LK_RTC_EVENT_PEERCONNECTION_CONNECTED = 600,
|
|
28
|
+
LK_RTC_EVENT_PEERCONNECTION_CLOSED = 601,
|
|
29
|
+
LK_RTC_EVENT_PEERCONNECTION_ERROR = 602,
|
|
30
|
+
LK_RTC_EVENT_PEERCONNECTION_STATE = 610,
|
|
31
|
+
LK_RTC_EVENT_PEERCONNECTION_RETRY = 611,
|
|
32
|
+
LK_VIDEO_LOADED = 700,
|
|
33
|
+
LK_VIDEO_PLAY_FAILED = 701,
|
|
34
|
+
LK_GOT_REMOTE_STREAM = 710,
|
|
35
|
+
LK_NOTIFY_CLIENT_LOGOUT_PLAYER_LOGOUT = 800,
|
|
36
|
+
LK_NOTIFY_CLIENT_LOGOUT_TASKOWNER_LOGOUT = 801,
|
|
37
|
+
LK_APP_PROCESS_NOTIFI_APP_QUIT = 900,
|
|
38
|
+
LK_NO_OPERATION_TIMEOUT = 901,
|
|
39
|
+
LK_LOADING_TIMEOUT = 902,
|
|
40
|
+
LK_APP_RESIZE = 910,
|
|
41
|
+
LK_APP_MOUSE_MODE = 911,
|
|
42
|
+
LK_APP_PLAER_LIST = 912,
|
|
43
|
+
LK_APP_REQUEST_TEXT = 913,
|
|
44
|
+
LK_APP_CURSOR_STYLE = 914,
|
|
45
|
+
LK_USER_REQUEST_QUIT = 920,
|
|
46
|
+
LK_UI_RESIZE = 930,
|
|
47
|
+
LK_STARTVRSTREAM_SUCCESS = 1000,
|
|
48
|
+
LK_STARTVRSTREAM_START_PROCESS_FAILED = 1001,
|
|
49
|
+
LK_STARTVRSTREAM_START_DRIVER_RUNTIME_TIMEOUT = 1002,
|
|
50
|
+
LK_STARTVRSTREAM_START_DRIVER_RUNTIME_UDPPORT_ERROR = 1003,
|
|
51
|
+
LK_STARTVRSTREAM_START_DRIVER_RUNTIME_ENCODER_ERROR = 1004,
|
|
52
|
+
LK_WEBCLIENT_NOTIFY_ALERT = 1100,
|
|
53
|
+
LK_WEBCLIENT_NOTIFY_CONFIRM = 1101,
|
|
54
|
+
LK_WEBCLIENT_TOAST_MSG = 1102,
|
|
55
|
+
LK_USER_CAPTURE_FRAME = 2000,
|
|
56
|
+
LK_USER_CAPTURE_FRAME_WITH_EXTRA_DATA = 2001,
|
|
57
|
+
LK_REQUEST_CAPTURE_FRAME = 3000,
|
|
58
|
+
LK_REQUEST_CAPTURE_FRAME_WITH_EXTRA_DATA = 3001,
|
|
59
|
+
LK_IFRAME_POSTER_OPERATE_MOUSE_MOVE = 10000,
|
|
60
|
+
LK_IFRAME_POSTER_OPERATE_MOUSE_DOWN = 10001,
|
|
61
|
+
LK_IFRAME_POSTER_OPERATE_MOUSE_UP = 10002,
|
|
62
|
+
LK_IFRAME_POSTER_OPERATE_MOUSE_WHEEL = 10003,
|
|
63
|
+
LK_IFRAME_POSTER_OPERATE_KEY_DOWN = 10010,
|
|
64
|
+
LK_IFRAME_POSTER_OPERATE_KEY_UP = 10011,
|
|
65
|
+
LK_IFRAME_POSTER_OPERATE_TOUCH_DOWN = 10020,
|
|
66
|
+
LK_IFRAME_POSTER_OPERATE_TOUCH_MOVE = 10021,
|
|
67
|
+
LK_IFRAME_POSTER_OPERATE_TOUCH_UP = 10022,
|
|
68
|
+
LK_IFRAME_POSTER_OPERATE_GAMEPAD_BUTTON_DOWN = 10030,
|
|
69
|
+
LK_IFRAME_POSTER_OPERATE_GAMEPAD_BUTTON_UP = 10031,
|
|
70
|
+
LK_IFRAME_POSTER_OPERATE_GAMEPAD_TRIGGER_VALUE = 10032,
|
|
71
|
+
LK_IFRAME_POSTER_OPERATE_GAMEPAD_JOYSTICK_STATES = 10033,
|
|
72
|
+
LK_IFRAME_POSTER_FUNC_MOUSE_MODE = 10100,
|
|
73
|
+
LK_IFRAME_POSTER_FUNC_SCALE_MODE = 10101,
|
|
74
|
+
LK_IFRAME_POSTER_FUNC_RESTART_CLOUD_APP = 10102,
|
|
75
|
+
LK_IFRAME_POSTER_FUNC_WX_JS_BRIDGE_READY = 10103,
|
|
76
|
+
LK_IFRAME_POSTER_FUNC_REQUEST_PLAY_VIDEO = 10104,
|
|
77
|
+
LK_IFRAME_POSTER_UI_CONTROLLER_BAR = 10200,
|
|
78
|
+
LK_IFRAME_POSTER_UI_PLAYER_LIST = 10201,
|
|
79
|
+
LK_IFRAME_POSTER_UI_PLAYER_SHARE_URL = 10202,
|
|
80
|
+
LK_IFRAME_POSTER_UI_MOBILE_CONTROL_BALL = 10203,
|
|
81
|
+
LK_IFRMAE_POSTER_UI_MOBILE_JOYSTICK = 10204,
|
|
82
|
+
LK_IFRAME_POSTER_UI_MOBILE_VIRTUAL_KEYBOARD = 10205,
|
|
83
|
+
LK_IFRAME_POSTER_UI_MOBILE_VIRTUAL_MOUSE = 10206,
|
|
84
|
+
LK_IFRAME_POSTER_UI_MOBILE_MENU = 10207,
|
|
85
|
+
LK_IFRAME_POSTER_UI_MOBILE_FORCE_LANDSCAPE = 10208,
|
|
86
|
+
LK_IFRAME_POSTER_UI_MOBILE_TOUCH_POINT = 10209,
|
|
87
|
+
LK_IFRAME_POSTER_UI_TOAST_LEVEL = 10210,
|
|
88
|
+
LK_IFRAME_POSTER_UI_ALERT = 10211,
|
|
89
|
+
LK_IFRAME_POSTER_UI_CONFIRM = 10212,
|
|
90
|
+
LK_DATA_CHANNEL_ESTABLISHED = 20000,
|
|
91
|
+
LK_DATA_CHANNEL_RETYING = 20001,
|
|
92
|
+
LK_DATA_CHANNEL_CLOSE = 20002,
|
|
93
|
+
LK_DATA_CHANNEL_ERROR = 20003,
|
|
94
|
+
LK_DATA_CHANNEL_BINARY_MESSAGE = 20004,
|
|
95
|
+
LK_DATA_CHANNEL_TEXT_MESSAGE = 20005,
|
|
96
|
+
LK_RE_CONNECT_DATA_CHANNEL = 20100,
|
|
97
|
+
LK_CLOSE_DATA_CHANNEL = 20101,
|
|
98
|
+
LK_DATA_CHANNEL_SEND_TEXT = 20102,
|
|
99
|
+
LK_DATA_CHANNEL_SEND_BINARY = 20103,
|
|
100
|
+
LK_DATA_CHANNEL_RENDERSERVER_OPEN = 20200,
|
|
101
|
+
LK_DATA_CHANNEL_RENDERSERVER_CLOSE = 20201,
|
|
102
|
+
LK_DATA_CHANNEL_RENDERSERVER_BINARY_MESSAGE = 20202,
|
|
103
|
+
LK_DATA_CHANNEL_RENDERSERVER_TEXT_MESSAGE = 20203,
|
|
104
|
+
LK_DATA_CHANNEL_RENDERSERVER_SEND_TEXT = 20300,
|
|
105
|
+
LK_DATA_CHANNEL_RENDERSERVER_SEND_BINARY = 20301
|
|
106
|
+
}
|
|
107
|
+
export default class LarkEvent {
|
|
108
|
+
static GetEventMessageByType(type: LarkEventType): string;
|
|
109
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as Msg from '../protobuf/cloudlark';
|
|
2
|
+
import { LarkEventType } from './lark_event_type';
|
|
3
|
+
export declare const MESSAGE_MAGIC = 538317090;
|
|
4
|
+
export default class Message {
|
|
5
|
+
static emptyMsg(): Msg.CloudLark.ToServerMessage;
|
|
6
|
+
static versionCheckRequest(): Msg.CloudLark.ToServerMessage;
|
|
7
|
+
static taskRequest(taskid: string, isInteractiveMode: boolean, isObMode: boolean, nickName: string): Msg.CloudLark.ToServerMessage;
|
|
8
|
+
static startStreamReqeuest(request: Msg.CloudLark.IStartStreamRequest): Msg.CloudLark.ToServerMessage;
|
|
9
|
+
static startMonitorStreamReqeuest(request: Msg.CloudLark.IVrMonitorRequest): Msg.CloudLark.ToServerMessage;
|
|
10
|
+
static rtcOfferMsg(type: string, sdp: string): Msg.CloudLark.ToServerMessage;
|
|
11
|
+
static iceMsg(sdpmid: string, sdpMlineindex: number, candidate: string): Msg.CloudLark.ToServerMessage;
|
|
12
|
+
static restartApp(): Msg.CloudLark.ToServerMessage;
|
|
13
|
+
static getTaskResponseMsg(ressponse: Msg.CloudLark.TaskResponse.Response): string;
|
|
14
|
+
static getStartStreamResponseMsg(ressponse: Msg.CloudLark.StartStreamResponse.Response): string;
|
|
15
|
+
static getCloudlarkTaskEvent(ressponse: Msg.CloudLark.TaskResponse.Response): LarkEventType;
|
|
16
|
+
static getCloudlarkStartStreamEvent(ressponse: Msg.CloudLark.StartStreamResponse.Response): LarkEventType;
|
|
17
|
+
static getCloudlarkTaskEventMsg(type: LarkEventType): string;
|
|
18
|
+
static getCloudlarkStartStreamingEventMsg(type: LarkEventType): string;
|
|
19
|
+
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { EventBase, LocalEvent } from '../event/event_base';
|
|
2
|
+
import * as Input from '../protobuf/cloudlark';
|
|
3
|
+
import { LarkSR } from '../larksr';
|
|
4
|
+
export declare enum IceState {
|
|
5
|
+
DISCONNECT = 1,
|
|
6
|
+
BAD = 2,
|
|
7
|
+
CONNECT = 3,
|
|
8
|
+
GOOD = 4
|
|
9
|
+
}
|
|
10
|
+
export declare enum WEBRTC_EVENT_TYPE {
|
|
11
|
+
GOT_REMOTE_STREAM = 0,
|
|
12
|
+
ICE_STATE_CHANGE = 1,
|
|
13
|
+
LK_APP_RESIZE = 2,
|
|
14
|
+
LK_APP_MOUSE_MODE = 3,
|
|
15
|
+
LK_APP_PLAER_LIST = 4,
|
|
16
|
+
LK_APP_REQUEST_TEXT = 5,
|
|
17
|
+
LK_DATA_CHANNEL_RENDERSERVER_TEXT_MESSAGE = 6,
|
|
18
|
+
LK_DATA_CHANNEL_RENDERSERVER_BINARY_MESSAGE = 7,
|
|
19
|
+
LK_DATA_CHANNEL_RENDERSERVER_OPEN = 8,
|
|
20
|
+
LK_DATA_CHANNEL_RENDERSERVER_CLOSE = 9,
|
|
21
|
+
NET_STATE = 10,
|
|
22
|
+
SYNC_CURSORSTYLE = 11,
|
|
23
|
+
BAD_NETWORK = 12,
|
|
24
|
+
ERROR = 13,
|
|
25
|
+
RTC_SDP = 14,
|
|
26
|
+
RTC_ICECANDIDATE = 15
|
|
27
|
+
}
|
|
28
|
+
export interface GoogleBitRate {
|
|
29
|
+
start: number;
|
|
30
|
+
min: number;
|
|
31
|
+
max: number;
|
|
32
|
+
}
|
|
33
|
+
export interface WebRTCEvent extends LocalEvent<WEBRTC_EVENT_TYPE> {
|
|
34
|
+
data?: any;
|
|
35
|
+
}
|
|
36
|
+
export declare enum OfferModeType {
|
|
37
|
+
VP8 = 1,
|
|
38
|
+
VP9 = 2,
|
|
39
|
+
H264 = 3,
|
|
40
|
+
DEFAULT = 4
|
|
41
|
+
}
|
|
42
|
+
export interface WebRTCConfig {
|
|
43
|
+
serverIP: string;
|
|
44
|
+
preferPubOutIp: string;
|
|
45
|
+
codeRate?: number;
|
|
46
|
+
network: 'local' | 'public';
|
|
47
|
+
}
|
|
48
|
+
export interface AggregatedStats {
|
|
49
|
+
timestamp: number;
|
|
50
|
+
bytesReceived: number;
|
|
51
|
+
framesDecoded: number;
|
|
52
|
+
packetsLost: number;
|
|
53
|
+
bytesReceivedStart: number;
|
|
54
|
+
framesDecodedStart: number;
|
|
55
|
+
timestampStart: number;
|
|
56
|
+
bitrate: number;
|
|
57
|
+
lowBitrate: number;
|
|
58
|
+
highBitrate: number;
|
|
59
|
+
avgBitrate: number;
|
|
60
|
+
framerate: number;
|
|
61
|
+
lowFramerate: number;
|
|
62
|
+
highFramerate: number;
|
|
63
|
+
avgframerate: number;
|
|
64
|
+
framesDropped: number;
|
|
65
|
+
framesReceived: number;
|
|
66
|
+
framesDroppedPercentage: number;
|
|
67
|
+
frameHeight: number;
|
|
68
|
+
frameWidth: number;
|
|
69
|
+
frameHeightStart: number;
|
|
70
|
+
frameWidthStart: number;
|
|
71
|
+
currentRoundTripTime: number;
|
|
72
|
+
packetsLostPerc: number;
|
|
73
|
+
}
|
|
74
|
+
export default class PeerConnection extends EventBase<WEBRTC_EVENT_TYPE, WebRTCEvent> {
|
|
75
|
+
private config;
|
|
76
|
+
private pc;
|
|
77
|
+
private dataChannel;
|
|
78
|
+
private offerOptions;
|
|
79
|
+
private pcConfig;
|
|
80
|
+
private netTestTimeout;
|
|
81
|
+
private aggregatedStats;
|
|
82
|
+
private lastThrowBadNetork;
|
|
83
|
+
private lastPacktetsLost;
|
|
84
|
+
private lastPacktetsReceived;
|
|
85
|
+
private larksr;
|
|
86
|
+
constructor(larksr: LarkSR, config: WebRTCConfig);
|
|
87
|
+
create(): void;
|
|
88
|
+
createOffer(): void;
|
|
89
|
+
close(): void;
|
|
90
|
+
onRemoteDescription(des: RTCSessionDescriptionInit): void;
|
|
91
|
+
onReceiveCandidate(candateInit: RTCIceCandidateInit | null): void;
|
|
92
|
+
startNetTest(): void;
|
|
93
|
+
stopNetTest(): void;
|
|
94
|
+
sendInput(input: Input.CloudLark.ClientInput): void;
|
|
95
|
+
sendBuffer(buffer: ArrayBuffer): void;
|
|
96
|
+
sendToAppTextMsg(msg: string): void;
|
|
97
|
+
sendToAppBinaryMsg(binary: Uint8Array): void;
|
|
98
|
+
changeOperater(uid: number): void;
|
|
99
|
+
inputText(txt: string): void;
|
|
100
|
+
private getStats;
|
|
101
|
+
private getStateChrome;
|
|
102
|
+
private onBadNetWork;
|
|
103
|
+
private onDataChannelMessage;
|
|
104
|
+
private onCreateOfferSuccess;
|
|
105
|
+
private onIceCandidate;
|
|
106
|
+
private onIceStateChange;
|
|
107
|
+
private gotRemoteStream;
|
|
108
|
+
private addIceCandidate;
|
|
109
|
+
private iceStateChange;
|
|
110
|
+
private $emit;
|
|
111
|
+
private createEvent;
|
|
112
|
+
}
|
|
113
|
+
export declare const K1 = "A829D283593455015A21E3509347AFD8";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export default class SdpUtil {
|
|
2
|
+
private static vp8;
|
|
3
|
+
private static vp9;
|
|
4
|
+
private static h264;
|
|
5
|
+
private static av1x;
|
|
6
|
+
private static h265;
|
|
7
|
+
private static hevc;
|
|
8
|
+
private static svac;
|
|
9
|
+
private static tail;
|
|
10
|
+
private static config;
|
|
11
|
+
static isLoopIpAddress(ip: string): boolean;
|
|
12
|
+
static getRtpmapRegByMode(mode: 'VP8' | 'VP9' | 'H264' | 'AV1X' | 'H265' | 'HEVC' | 'SVAC'): RegExp;
|
|
13
|
+
static hasVp8(sdp: string): boolean;
|
|
14
|
+
static hasVp9(sdp: string): boolean;
|
|
15
|
+
static hasH264(sdp: string): boolean;
|
|
16
|
+
static hasAV1X(sdp: string): boolean;
|
|
17
|
+
static hasH265(sdp: string): boolean;
|
|
18
|
+
static hasHEVC(sdp: string): boolean;
|
|
19
|
+
static hasSVAC(sdp: string): boolean;
|
|
20
|
+
static hasMode(sdp: string, mode: 'VP8' | 'VP9' | 'H264' | 'AV1X' | 'H265' | 'HEVC' | 'SVAC'): boolean;
|
|
21
|
+
static setAudioBitrate(sdp: string, bitrate: number): string;
|
|
22
|
+
static setBitRate(sdp: string, startBitrate: number, maxBitrate: number, minBitrate: number): string;
|
|
23
|
+
static setModeBitRate(sdp: string, startBitrate: number, maxBitrate: number, minBitrate: number, mode: 'VP8' | 'VP9' | 'H264' | 'AV1X'): string;
|
|
24
|
+
static removeVp8(sdp: string): string;
|
|
25
|
+
static removeVp9(sdp: string): string;
|
|
26
|
+
static removeH264(sdp: string): string;
|
|
27
|
+
static removeAV1X(sdp: string): string;
|
|
28
|
+
static removeH265(sdp: string): string;
|
|
29
|
+
static removeHEVC(sdp: string): string;
|
|
30
|
+
static removeSVAC(sdp: string): string;
|
|
31
|
+
static sdpFilter(sdp: string, mode: 'VP8' | 'VP9' | 'H264' | 'AV1X' | 'H265' | 'HEVC' | 'SVAC'): string;
|
|
32
|
+
static sdpGooAttrLine(...attrs: string[]): string;
|
|
33
|
+
static sdpBlankAttrLine(...attrs: string[]): string;
|
|
34
|
+
static getBlankAttrs(sdpLine: string): string[];
|
|
35
|
+
static getAttrName(sdpLine: string): string;
|
|
36
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { EventBase, LocalEvent } from '../event/event_base';
|
|
2
|
+
import * as Msg from '../protobuf/cloudlark';
|
|
3
|
+
import { LarkSR } from '../larksr';
|
|
4
|
+
export declare enum CHANNEL_EVENT_TYPE {
|
|
5
|
+
OPEN = 0,
|
|
6
|
+
CLOSE = 1,
|
|
7
|
+
ERROR = 2,
|
|
8
|
+
CLIENT_MSG = 3
|
|
9
|
+
}
|
|
10
|
+
export interface ChannelEvent extends LocalEvent<CHANNEL_EVENT_TYPE> {
|
|
11
|
+
data?: Msg.CloudLark.ToClientMessage;
|
|
12
|
+
}
|
|
13
|
+
export interface WebscocketConfig {
|
|
14
|
+
serverAddress: string;
|
|
15
|
+
ip: string;
|
|
16
|
+
port: string;
|
|
17
|
+
path?: string;
|
|
18
|
+
}
|
|
19
|
+
export default class WebsocketChannel extends EventBase<CHANNEL_EVENT_TYPE, ChannelEvent> {
|
|
20
|
+
private get wsServer();
|
|
21
|
+
private config;
|
|
22
|
+
private connection;
|
|
23
|
+
private keepAliveTimeout;
|
|
24
|
+
private timerWorker;
|
|
25
|
+
private larksr;
|
|
26
|
+
constructor(config: WebscocketConfig, larksr: LarkSR);
|
|
27
|
+
/**
|
|
28
|
+
*
|
|
29
|
+
*/
|
|
30
|
+
connect(): Promise<this>;
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
*/
|
|
34
|
+
close(): Promise<void>;
|
|
35
|
+
sendMsg(msg: Msg.CloudLark.ToServerMessage): void;
|
|
36
|
+
sendBuffer(data: ArrayBuffer): void;
|
|
37
|
+
isOpen(): boolean;
|
|
38
|
+
private startKeepAlive;
|
|
39
|
+
private stopKeepAlive;
|
|
40
|
+
/**
|
|
41
|
+
*
|
|
42
|
+
*/
|
|
43
|
+
private onMessage;
|
|
44
|
+
private onOpen;
|
|
45
|
+
/**
|
|
46
|
+
*
|
|
47
|
+
* @param e
|
|
48
|
+
*/
|
|
49
|
+
private onWSError;
|
|
50
|
+
/**
|
|
51
|
+
*
|
|
52
|
+
* @param e
|
|
53
|
+
*/
|
|
54
|
+
private onWSClose;
|
|
55
|
+
private $emit;
|
|
56
|
+
private createEvent;
|
|
57
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { EventBase, LocalEvent } from '../event/event_base';
|
|
2
|
+
import * as Msg from '../protobuf/cloudlark';
|
|
3
|
+
import { LarkSR } from '../larksr';
|
|
4
|
+
export declare enum PROXY_EVENT_TYPE {
|
|
5
|
+
OPEN = 0,
|
|
6
|
+
CLOSE = 1,
|
|
7
|
+
ERROR = 2,
|
|
8
|
+
CLIENT_MSG = 3
|
|
9
|
+
}
|
|
10
|
+
export interface ProxyEvent extends LocalEvent<PROXY_EVENT_TYPE> {
|
|
11
|
+
data?: Msg.CloudLark.ToClientMessage;
|
|
12
|
+
}
|
|
13
|
+
export interface ProxyConfig {
|
|
14
|
+
serverAddress: string;
|
|
15
|
+
appServer: string;
|
|
16
|
+
appPort: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const PROXY_PATH = "websocket";
|
|
19
|
+
export default class WebsocketProxy extends EventBase<PROXY_EVENT_TYPE, ProxyEvent> {
|
|
20
|
+
private get wsServer();
|
|
21
|
+
private config;
|
|
22
|
+
private connection;
|
|
23
|
+
private keepAliveTimeout;
|
|
24
|
+
private timerWorker;
|
|
25
|
+
private larksr;
|
|
26
|
+
constructor(config: ProxyConfig, larksr: LarkSR);
|
|
27
|
+
/**
|
|
28
|
+
*
|
|
29
|
+
*/
|
|
30
|
+
connect(): Promise<this>;
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
*/
|
|
34
|
+
close(): Promise<void>;
|
|
35
|
+
isOpen(): boolean;
|
|
36
|
+
sendMsg(msg: Msg.CloudLark.ToServerMessage): void;
|
|
37
|
+
sendBuffer(data: ArrayBuffer): void;
|
|
38
|
+
private startKeepAlive;
|
|
39
|
+
private stopKeepAlive;
|
|
40
|
+
/**
|
|
41
|
+
*
|
|
42
|
+
*/
|
|
43
|
+
private onMessage;
|
|
44
|
+
private onOpen;
|
|
45
|
+
/**
|
|
46
|
+
*
|
|
47
|
+
* @param e
|
|
48
|
+
*/
|
|
49
|
+
private onWSError;
|
|
50
|
+
/**
|
|
51
|
+
*
|
|
52
|
+
* @param e
|
|
53
|
+
*/
|
|
54
|
+
private onWSClose;
|
|
55
|
+
private $emit;
|
|
56
|
+
private createEvent;
|
|
57
|
+
}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { EventBase, LocalEvent } from './event/event_base';
|
|
2
|
+
import Application, { APP_STATE } from './lark/application';
|
|
3
|
+
import { AppliParams, AppliParamsUtils, IAppliParams, LoadAppliParamsStartAppInfo } from './appli_params';
|
|
4
|
+
import { LarkEventType } from './lark/lark_event_type';
|
|
5
|
+
import API from './api';
|
|
6
|
+
import ScreenState from './screen_state';
|
|
7
|
+
import Operation from './operation/operation';
|
|
8
|
+
import { CloudLark } from './protobuf/cloudlark';
|
|
9
|
+
import { KEYMAP } from './operation/keymap';
|
|
10
|
+
import FullScreen from './utils/full_screen';
|
|
11
|
+
import LockPointer from './utils/lock_pointer';
|
|
12
|
+
import ScaleMode from './utils/scale_mode';
|
|
13
|
+
import Capabilities from './utils/capabilities';
|
|
14
|
+
declare const enum PlayerModeType {
|
|
15
|
+
Normal = 0,
|
|
16
|
+
Interactive = 1,
|
|
17
|
+
MutiPlayer = 2
|
|
18
|
+
}
|
|
19
|
+
declare const enum UserType {
|
|
20
|
+
Observer = 0,
|
|
21
|
+
Player = 1
|
|
22
|
+
}
|
|
23
|
+
interface LarkSREvent extends LocalEvent<LarkEventType> {
|
|
24
|
+
data?: any;
|
|
25
|
+
message: string;
|
|
26
|
+
}
|
|
27
|
+
interface ILarkSRConfig {
|
|
28
|
+
rootElement: HTMLElement;
|
|
29
|
+
serverAddress: string;
|
|
30
|
+
authCode?: string;
|
|
31
|
+
authCodeCallback?: (isSuccess: boolean, e: any) => void;
|
|
32
|
+
isMonitor?: boolean;
|
|
33
|
+
codeRate?: number;
|
|
34
|
+
frameRate?: number;
|
|
35
|
+
audioCodeRate?: number;
|
|
36
|
+
logLevel?: 'info' | 'warn' | 'error';
|
|
37
|
+
loadingTimeout?: number;
|
|
38
|
+
syncLocalToCloudClipboard?: boolean;
|
|
39
|
+
perferDecoder?: 'auto' | 'vp8' | 'vp9' | 'h264' | 'av1x';
|
|
40
|
+
scaleMode?: ScaleMode;
|
|
41
|
+
/**
|
|
42
|
+
* 全屏模式
|
|
43
|
+
* 0 -》 用户手动触发
|
|
44
|
+
* 1 -》 首次点击进入触发
|
|
45
|
+
* 2 -》 每次点击触发
|
|
46
|
+
*/
|
|
47
|
+
fullScreenMode?: number;
|
|
48
|
+
mobileFullScreenMode?: number;
|
|
49
|
+
mobileForceLandscape?: boolean;
|
|
50
|
+
}
|
|
51
|
+
declare class LarkSR extends EventBase<LarkEventType, LarkSREvent> {
|
|
52
|
+
static EnterAppli(config: ILarkSRConfig, params: {
|
|
53
|
+
appliId: string;
|
|
54
|
+
playerMode?: number;
|
|
55
|
+
userType?: number;
|
|
56
|
+
roomCode?: string;
|
|
57
|
+
taskId?: string;
|
|
58
|
+
}): Promise<LarkSR>;
|
|
59
|
+
get params(): IAppliParams;
|
|
60
|
+
private _params;
|
|
61
|
+
get playerModeType(): PlayerModeType;
|
|
62
|
+
get userType(): UserType;
|
|
63
|
+
get isObMode(): boolean;
|
|
64
|
+
get isInteractiveMode(): boolean;
|
|
65
|
+
get appState(): APP_STATE;
|
|
66
|
+
get app(): Application;
|
|
67
|
+
private _app;
|
|
68
|
+
get remoteScreenReady(): boolean;
|
|
69
|
+
set remoteScreenReady(ready: boolean);
|
|
70
|
+
private _remoteScreenReady;
|
|
71
|
+
get screenState(): ScreenState;
|
|
72
|
+
private _screenState;
|
|
73
|
+
get op(): Operation;
|
|
74
|
+
private _op;
|
|
75
|
+
private iframeHandler;
|
|
76
|
+
get fullScreen(): FullScreen;
|
|
77
|
+
private _fullScreen;
|
|
78
|
+
get lockPointer(): LockPointer;
|
|
79
|
+
private _lockPointer;
|
|
80
|
+
private view;
|
|
81
|
+
get rootElement(): HTMLElement;
|
|
82
|
+
private _rootElement;
|
|
83
|
+
get serverAddress(): string;
|
|
84
|
+
private _serverAddress;
|
|
85
|
+
get serverIp(): string;
|
|
86
|
+
get config(): ILarkSRConfig;
|
|
87
|
+
private _config;
|
|
88
|
+
private loadingTimeout;
|
|
89
|
+
private sdkAuth;
|
|
90
|
+
constructor(config: ILarkSRConfig, params: IAppliParams);
|
|
91
|
+
initSDKAuthCode(id: string): Promise<void>;
|
|
92
|
+
start(): Promise<void>;
|
|
93
|
+
restart(): void;
|
|
94
|
+
restartApp(): void;
|
|
95
|
+
changeOperater(uid: number): void;
|
|
96
|
+
inputText(text: string): void;
|
|
97
|
+
sendTextToDataChannel(text: string): void;
|
|
98
|
+
sendBinaryToDataChannel(binary: Uint8Array): void;
|
|
99
|
+
postMsg(type: LarkEventType, data?: any, msg?: string): void;
|
|
100
|
+
/**
|
|
101
|
+
* 退出当前页面
|
|
102
|
+
*/
|
|
103
|
+
quit(): void;
|
|
104
|
+
sendInput(input: CloudLark.IClientInput): void;
|
|
105
|
+
moseMove(PosX: number, PosY: number, DeltaX: number, DeltaY: number): void;
|
|
106
|
+
mouseTap(PosX: number, PosY: number, key: CloudLark.MouseKey): void;
|
|
107
|
+
mouseDown(PosX: number, PosY: number, key: CloudLark.MouseKey): void;
|
|
108
|
+
mouseUp(PosX: number, PosY: number, key: CloudLark.MouseKey): void;
|
|
109
|
+
mouseWheel(PosX: number, PosY: number, Delata: number): void;
|
|
110
|
+
keyDown(key: string, isRepeat: boolean): void;
|
|
111
|
+
keyUp(key: string): void;
|
|
112
|
+
gamepadButtonDown(userIndex: number, button: number, isRepeat: boolean): void;
|
|
113
|
+
gamepadButtonUp(userIndex: number, button: number): void;
|
|
114
|
+
gamepadTrigger(userIndex: number, isleft: boolean, value: number): void;
|
|
115
|
+
joystick(userIndex: number, thumblx: number, thumbly: number, thumbrx: number, thumbry: number): void;
|
|
116
|
+
touchDown(id: number, x: number, y: number): void;
|
|
117
|
+
touchMove(id: number, x: number, y: number): void;
|
|
118
|
+
touchUp(id: number, x: number, y: number): void;
|
|
119
|
+
getMouseButtonType(button: 'left' | 'mid' | 'right'): CloudLark.MouseKey;
|
|
120
|
+
$emit(type: LarkEventType, data?: any, message?: string): void;
|
|
121
|
+
private createEvent;
|
|
122
|
+
private taskProcess;
|
|
123
|
+
private startProcess;
|
|
124
|
+
private onAppStateChange;
|
|
125
|
+
private onGotRemoteStream;
|
|
126
|
+
private onCursorStyle;
|
|
127
|
+
private onAppResize;
|
|
128
|
+
private onAppMouseMode;
|
|
129
|
+
private onAppPlayerList;
|
|
130
|
+
private onAppRequestText;
|
|
131
|
+
private onDataChannelText;
|
|
132
|
+
private onDataChannelBinary;
|
|
133
|
+
private onDataChannelOpen;
|
|
134
|
+
private onDataChannelClose;
|
|
135
|
+
private onOperationTimeout;
|
|
136
|
+
private onOperationInput;
|
|
137
|
+
}
|
|
138
|
+
export { LarkSR, ILarkSRConfig, PlayerModeType, UserType, LarkSREvent, AppliParams, AppliParamsUtils, LoadAppliParamsStartAppInfo, EventBase, LocalEvent, API, Operation, Capabilities, ScaleMode, KEYMAP, CloudLark, FullScreen, LockPointer, };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Message from './message';
|
|
2
|
+
import GestureIns from './gesture_ins';
|
|
3
|
+
import UI from './ui';
|
|
4
|
+
export default class LocalizationLoader {
|
|
5
|
+
private static mLanguageCode;
|
|
6
|
+
private static mMessage;
|
|
7
|
+
private static mGestureIns;
|
|
8
|
+
private static mUI;
|
|
9
|
+
static getPrePath(): string;
|
|
10
|
+
static init(code: string): void;
|
|
11
|
+
static get message(): Message;
|
|
12
|
+
static get gestureIns(): GestureIns;
|
|
13
|
+
static get ui(): UI;
|
|
14
|
+
}
|