rokid-xpert-sdk 1.0.110
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 +26 -0
- package/lib/rokid-xpert-sdk.common.js +1 -0
- package/lib/rokid-xpert-sdk.esm.js +1 -0
- package/lib/rokid-xpert-sdk.js +1 -0
- package/lib/sdk.d.ts +62 -0
- package/package.json +51 -0
package/README.md
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# rokid-xpert-sdk
|
|
2
|
+
|
|
3
|
+
npm 薄壳:运行时 re-export `livekit-client` 的 `RKXPert` 适配层。
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
import RKXPert from 'rokid-xpert-sdk'
|
|
7
|
+
|
|
8
|
+
await RKXPert.initConfig({ token, saasUrl })
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
- **入口**:`src/sdk.ts` → 构建产物 `lib/rokid-xpert-sdk.{esm,common,js}.js`
|
|
12
|
+
- **类型**:`src/sdk.d.ts`(re-export `livekit-client`)
|
|
13
|
+
- **API 文档**:仓库根目录 `docs/rkxpert-api-doc/index.html`(v2.0.86)
|
|
14
|
+
|
|
15
|
+
经典 `src/core/*`(rokid-rtc-sdk + stomp)已移除,见 [DEPRECATED.md](./DEPRECATED.md)。
|
|
16
|
+
|
|
17
|
+
## 构建
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
pnpm install
|
|
21
|
+
pnpm run build
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## 依赖
|
|
25
|
+
|
|
26
|
+
仅 `livekit-client`(本地联调为 `file:../livekit-client`)。
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("livekit-client");const n={onJoin:"remote-join",onInvite:"remote-invite",onKick:"kicked",onRefuse:"remote-refuse",onAccept:"invite-result",onCallCancel:"invite-cancel",onInviteFail:"invite-fail",onReconnect:"rtc-state-change",onAudioChange:"media-status",onVideoChange:"media-status",onUserNetworkQuality:"network-quality",onUserStreamConnectState:"stream-connect-state",onMediaError:"media-error",onStartShareScreen:"share-state-update",onStopShareScreen:"share-state-update",onDoodle:"doodle",onNeedSubscribe:"subscribe-meeting",onForward:"remote-conversation",onThirdForward:"remote-conversation",onEnd:"meeting-end",onOutChannel:"meeting-end",onLeave:"remote-leave",onKeepSilence:"meeting-muted"};function o(e){return"function"==typeof e}function t(e,n){Array.isArray(e.__legacyDisposers)||(e.__legacyDisposers=[]),e.__legacyDisposers.push(n)}function r(e,n,r){o(null==e?void 0:e.on)&&o(null==e?void 0:e.off)&&(e.on(n,r),t(e,()=>e.off(n,r)))}function i(e,i=[]){!function(e){(Array.isArray(e.__legacyDisposers)?e.__legacyDisposers:[]).forEach(e=>{try{e()}catch(e){}}),e.__legacyDisposers=[]}(e),i.forEach(i=>{const a=null==i?void 0:i.eventName,s=null==i?void 0:i.doEvent;if(!a||!o(s))return;r(e,a,(...e)=>s(...e));const c=n[a];c&&r(e,c,"onReconnect"===a?e=>{"reconnecting"!==e&&"reconnected"!==e&&"connected"!==e||s()}:(...e)=>s(...e)),function(e,n,o){if("undefined"!=typeof window){if("online"===n||"offline"===n){const r=()=>o();return window.addEventListener(n,r),void t(e,()=>window.removeEventListener(n,r))}if("longTimeOffline"===n){let n=null;const r=()=>{n&&clearTimeout(n),n=setTimeout(()=>o(),6e4)},i=()=>{n&&(clearTimeout(n),n=null)};window.addEventListener("offline",r),window.addEventListener("online",i),t(e,()=>{window.removeEventListener("offline",r),window.removeEventListener("online",i),n&&clearTimeout(n)})}}}(e,a,s)})}!function(){const n=e.RKXPert;n.__legacyCompatInstalled||(n.__legacyCompatInstalled=!0,o(n.updateToken)||(n.updateToken=e=>{var o;return null===(o=n.refreshToken)||void 0===o?void 0:o.call(n,e)}),o(n.addToken)||(n.addToken=(e,o,t=[])=>{var r;e&&(null===(r=n.refreshToken)||void 0===r||r.call(n,e)),o&&(n.systemConfig=n.systemConfig||{},n.systemConfig.userId=o),i(n,t)}))}(),Object.defineProperty(exports,"RKXPert",{enumerable:!0,get:function(){return e.RKXPert}}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return e.RKXPert}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{RKXPert as e}from"livekit-client";export{RKXPert,RKXPert as default}from"livekit-client";const n={onJoin:"remote-join",onInvite:"remote-invite",onKick:"kicked",onRefuse:"remote-refuse",onAccept:"invite-result",onCallCancel:"invite-cancel",onInviteFail:"invite-fail",onReconnect:"rtc-state-change",onAudioChange:"media-status",onVideoChange:"media-status",onUserNetworkQuality:"network-quality",onUserStreamConnectState:"stream-connect-state",onMediaError:"media-error",onStartShareScreen:"share-state-update",onStopShareScreen:"share-state-update",onDoodle:"doodle",onNeedSubscribe:"subscribe-meeting",onForward:"remote-conversation",onThirdForward:"remote-conversation",onEnd:"meeting-end",onOutChannel:"meeting-end",onLeave:"remote-leave",onKeepSilence:"meeting-muted"};function o(e){return"function"==typeof e}function t(e,n){Array.isArray(e.__legacyDisposers)||(e.__legacyDisposers=[]),e.__legacyDisposers.push(n)}function i(e,n,i){o(null==e?void 0:e.on)&&o(null==e?void 0:e.off)&&(e.on(n,i),t(e,()=>e.off(n,i)))}function r(e,r=[]){!function(e){(Array.isArray(e.__legacyDisposers)?e.__legacyDisposers:[]).forEach(e=>{try{e()}catch(e){}}),e.__legacyDisposers=[]}(e),r.forEach(r=>{const a=null==r?void 0:r.eventName,s=null==r?void 0:r.doEvent;if(!a||!o(s))return;i(e,a,(...e)=>s(...e));const l=n[a];l&&i(e,l,"onReconnect"===a?e=>{"reconnecting"!==e&&"reconnected"!==e&&"connected"!==e||s()}:(...e)=>s(...e)),function(e,n,o){if("undefined"!=typeof window){if("online"===n||"offline"===n){const i=()=>o();return window.addEventListener(n,i),void t(e,()=>window.removeEventListener(n,i))}if("longTimeOffline"===n){let n=null;const i=()=>{n&&clearTimeout(n),n=setTimeout(()=>o(),6e4)},r=()=>{n&&(clearTimeout(n),n=null)};window.addEventListener("offline",i),window.addEventListener("online",r),t(e,()=>{window.removeEventListener("offline",i),window.removeEventListener("online",r),n&&clearTimeout(n)})}}}(e,a,s)})}!function(){const n=e;n.__legacyCompatInstalled||(n.__legacyCompatInstalled=!0,o(n.updateToken)||(n.updateToken=e=>{var o;return null===(o=n.refreshToken)||void 0===o?void 0:o.call(n,e)}),o(n.addToken)||(n.addToken=(e,o,t=[])=>{var i;e&&(null===(i=n.refreshToken)||void 0===i||i.call(n,e)),o&&(n.systemConfig=n.systemConfig||{},n.systemConfig.userId=o),r(n,t)}))}();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("livekit-client")):"function"==typeof define&&define.amd?define(["exports","livekit-client"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["rokid-xpert-sdk"]={},e.livekitClient)}(this,function(e,n){"use strict";const o={onJoin:"remote-join",onInvite:"remote-invite",onKick:"kicked",onRefuse:"remote-refuse",onAccept:"invite-result",onCallCancel:"invite-cancel",onInviteFail:"invite-fail",onReconnect:"rtc-state-change",onAudioChange:"media-status",onVideoChange:"media-status",onUserNetworkQuality:"network-quality",onUserStreamConnectState:"stream-connect-state",onMediaError:"media-error",onStartShareScreen:"share-state-update",onStopShareScreen:"share-state-update",onDoodle:"doodle",onNeedSubscribe:"subscribe-meeting",onForward:"remote-conversation",onThirdForward:"remote-conversation",onEnd:"meeting-end",onOutChannel:"meeting-end",onLeave:"remote-leave",onKeepSilence:"meeting-muted"};function t(e){return"function"==typeof e}function i(e,n){Array.isArray(e.__legacyDisposers)||(e.__legacyDisposers=[]),e.__legacyDisposers.push(n)}function r(e,n,o){t(null==e?void 0:e.on)&&t(null==e?void 0:e.off)&&(e.on(n,o),i(e,()=>e.off(n,o)))}function a(e,n=[]){!function(e){(Array.isArray(e.__legacyDisposers)?e.__legacyDisposers:[]).forEach(e=>{try{e()}catch(e){}}),e.__legacyDisposers=[]}(e),n.forEach(n=>{const a=null==n?void 0:n.eventName,s=null==n?void 0:n.doEvent;if(!a||!t(s))return;r(e,a,(...e)=>s(...e));const l=o[a];l&&r(e,l,"onReconnect"===a?e=>{"reconnecting"!==e&&"reconnected"!==e&&"connected"!==e||s()}:(...e)=>s(...e)),function(e,n,o){if("undefined"!=typeof window){if("online"===n||"offline"===n){const t=()=>o();return window.addEventListener(n,t),void i(e,()=>window.removeEventListener(n,t))}if("longTimeOffline"===n){let n=null;const t=()=>{n&&clearTimeout(n),n=setTimeout(()=>o(),6e4)},r=()=>{n&&(clearTimeout(n),n=null)};window.addEventListener("offline",t),window.addEventListener("online",r),i(e,()=>{window.removeEventListener("offline",t),window.removeEventListener("online",r),n&&clearTimeout(n)})}}}(e,a,s)})}!function(){const e=n.RKXPert;e.__legacyCompatInstalled||(e.__legacyCompatInstalled=!0,t(e.updateToken)||(e.updateToken=n=>{var o;return null===(o=e.refreshToken)||void 0===o?void 0:o.call(e,n)}),t(e.addToken)||(e.addToken=(n,o,t=[])=>{var i;n&&(null===(i=e.refreshToken)||void 0===i||i.call(e,n)),o&&(e.systemConfig=e.systemConfig||{},e.systemConfig.userId=o),a(e,t)}))}(),Object.defineProperty(e,"RKXPert",{enumerable:!0,get:function(){return n.RKXPert}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.RKXPert}}),Object.defineProperty(e,"__esModule",{value:!0})});
|
package/lib/sdk.d.ts
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 方案 A:rokid-xpert-sdk 作为壳,直接导出 livekit-client 的 RKXPert 适配层
|
|
3
|
+
* 保持与 x-expert-platform-web 现有功能一致(同一套 LiveKit 实现)
|
|
4
|
+
*
|
|
5
|
+
* 同时补齐旧版能力:
|
|
6
|
+
* - updateToken(token) -> refreshToken(token)
|
|
7
|
+
* - addToken(token, userId, eventList) -> refreshToken + 旧事件桥接
|
|
8
|
+
*/
|
|
9
|
+
import { RKXPert } from 'livekit-client';
|
|
10
|
+
export { RKXPert as default, RKXPert };
|
|
11
|
+
export type { RokidInitConfig, RokidMeetingParams, RokidJoinMeetingParams, RokidAdapterEvents, RokidMessageData, } from 'livekit-client';
|
|
12
|
+
export interface RokidMeetingMember {
|
|
13
|
+
userId: string;
|
|
14
|
+
audio: boolean;
|
|
15
|
+
video: boolean;
|
|
16
|
+
maxResolution: string;
|
|
17
|
+
netQuality: number;
|
|
18
|
+
pictureMode: number;
|
|
19
|
+
deviceTypeInfo?: unknown;
|
|
20
|
+
realName?: string;
|
|
21
|
+
fullName?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface RokidMeetingLife {
|
|
24
|
+
meetingId: string;
|
|
25
|
+
meetingName?: string;
|
|
26
|
+
joinRoomName?: string;
|
|
27
|
+
members: RokidMeetingMember[];
|
|
28
|
+
moderator: string;
|
|
29
|
+
hostName?: string;
|
|
30
|
+
speaker: boolean;
|
|
31
|
+
meetingMuted: boolean;
|
|
32
|
+
isRecord: boolean;
|
|
33
|
+
egressId?: string;
|
|
34
|
+
recordParams?: {
|
|
35
|
+
subStream?: string;
|
|
36
|
+
mode?: string;
|
|
37
|
+
layout?: string;
|
|
38
|
+
[key: string]: unknown;
|
|
39
|
+
};
|
|
40
|
+
shareInfo?: {
|
|
41
|
+
shareType: number;
|
|
42
|
+
promoterUserId: string;
|
|
43
|
+
executorUserId: string;
|
|
44
|
+
shareImageUrl?: string;
|
|
45
|
+
};
|
|
46
|
+
extraParams?: unknown;
|
|
47
|
+
isFront?: boolean;
|
|
48
|
+
colorNumber?: number;
|
|
49
|
+
maxResolution?: string;
|
|
50
|
+
}
|
|
51
|
+
/** @deprecated livekit-client no longer exports this legacy type. */
|
|
52
|
+
export interface RemoteCaptureRequestParams {
|
|
53
|
+
[key: string]: unknown;
|
|
54
|
+
}
|
|
55
|
+
/** @deprecated livekit-client no longer exports this legacy type. */
|
|
56
|
+
export interface RemoteCaptureReplyParams {
|
|
57
|
+
[key: string]: unknown;
|
|
58
|
+
}
|
|
59
|
+
/** @deprecated livekit-client no longer exports this legacy type. */
|
|
60
|
+
export interface FileUploadShareNotifyParams {
|
|
61
|
+
[key: string]: unknown;
|
|
62
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "rokid-xpert-sdk",
|
|
3
|
+
"version": "1.0.110",
|
|
4
|
+
"private": false,
|
|
5
|
+
"description": "ebg远程协作平台sdk",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "lib/rokid-xpert-sdk.common.js",
|
|
8
|
+
"module": "lib/rokid-xpert-sdk.esm.js",
|
|
9
|
+
"browser": "lib/rokid-xpert-sdk.esm.js",
|
|
10
|
+
"types": "src/sdk.d.ts",
|
|
11
|
+
"files": [
|
|
12
|
+
"lib/*"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"dev": "cross-env ENV=dev rollup -w -c config/rollup.config.dev.js --exports named",
|
|
16
|
+
"start": "pnpm run dev",
|
|
17
|
+
"build:test": "rimraf lib && cross-env ENV=test rollup -c config/rollup.config.prod.js",
|
|
18
|
+
"build": "rimraf lib && cross-env ENV=prod rollup -c config/rollup.config.prod.js",
|
|
19
|
+
"deploy": "npm publish --registry https://npm.rokid-inc.com/repository/npm-releases/"
|
|
20
|
+
},
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"livekit-client": "2.19.25"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@babel/core": "^7.22.5",
|
|
26
|
+
"@babel/plugin-transform-runtime": "^7.25.9",
|
|
27
|
+
"@babel/preset-env": "^7.22.5",
|
|
28
|
+
"@babel/preset-typescript": "^7.23.3",
|
|
29
|
+
"@rollup/plugin-alias": "^5.0.0",
|
|
30
|
+
"@rollup/plugin-babel": "^6.0.3",
|
|
31
|
+
"@rollup/plugin-commonjs": "^25.0.2",
|
|
32
|
+
"@rollup/plugin-eslint": "^9.0.4",
|
|
33
|
+
"@rollup/plugin-json": "^6.0.0",
|
|
34
|
+
"@rollup/plugin-node-resolve": "^15.1.0",
|
|
35
|
+
"@rollup/plugin-terser": "^0.4.3",
|
|
36
|
+
"@rollup/plugin-typescript": "^11.1.5",
|
|
37
|
+
"@typescript-eslint/parser": "^5.60.1",
|
|
38
|
+
"cross-env": "^7.0.3",
|
|
39
|
+
"rimraf": "^5.0.5",
|
|
40
|
+
"rollup": "^3.25.2",
|
|
41
|
+
"rollup-plugin-copy": "^3.4.0",
|
|
42
|
+
"rollup-plugin-node-polyfills": "^0.2.1",
|
|
43
|
+
"rollup-plugin-serve": "^2.0.2",
|
|
44
|
+
"tslib": "^2.6.0"
|
|
45
|
+
},
|
|
46
|
+
"engines": {
|
|
47
|
+
"node": ">=16.14.2"
|
|
48
|
+
},
|
|
49
|
+
"author": "nanxing",
|
|
50
|
+
"license": "ISC"
|
|
51
|
+
}
|