ms-vite-plugin 1.4.29 → 1.4.30
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/docs/api/cloud.md +154 -0
- package/docs/api/global.md +2 -2
- package/docs/api/ui.md +4 -2
- package/docs/apicn/cloud.md +154 -0
- package/docs/apicn/global.md +2 -2
- package/docs/apicn/ui.md +4 -2
- package/docs/apipython/cloud.md +175 -0
- package/docs/apipython/overview.md +1 -1
- package/docs/apipython/ui.md +4 -2
- package/package.json +1 -1
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# 云控模块 (Cloud)
|
|
2
|
+
|
|
3
|
+
云控模块用于在主脚本中使用内置云控 WebSocket 连接。脚本可以主动连接云控服务器、判断连接状态、断开连接、上报事件数据,并监听服务器事件数据。
|
|
4
|
+
|
|
5
|
+
## 注意事项
|
|
6
|
+
|
|
7
|
+
- `cloud` 只在主脚本上下文注册,不支持在线程脚本里调用。
|
|
8
|
+
- 服务器事件只有一个主脚本监听槽位,多次调用 `onEvent` 会覆盖旧监听。
|
|
9
|
+
|
|
10
|
+
## 协议
|
|
11
|
+
|
|
12
|
+
脚本上报数据时发送 JSON 文本帧:
|
|
13
|
+
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"type": "scriptReport",
|
|
17
|
+
"event": "eventName",
|
|
18
|
+
"data": {}
|
|
19
|
+
}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
服务器下发脚本事件时发送 JSON 文本帧:
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
{
|
|
26
|
+
"type": "scriptEvent",
|
|
27
|
+
"event": "eventName",
|
|
28
|
+
"data": {}
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
`event` 是脚本和服务器约定的自定义事件名。`data` 在 JS 中是普通 Object,必须能被 JSON 序列化。
|
|
33
|
+
|
|
34
|
+
## API 参考
|
|
35
|
+
|
|
36
|
+
### connect - 连接云控服务器
|
|
37
|
+
|
|
38
|
+
```typescript
|
|
39
|
+
function connect(url: string, deviceNo?: string): boolean;
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**参数**
|
|
43
|
+
|
|
44
|
+
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
45
|
+
| ---------- | ------ | -------- | -------------- | ---- |
|
|
46
|
+
| `url` | string | 是 | - | 完整 `ws://` 或 `wss://` 云控地址 |
|
|
47
|
+
| `deviceNo` | string | 否 | 已保存设备编号 | 连接时追加到 query 的设备编号 |
|
|
48
|
+
|
|
49
|
+
**返回值**
|
|
50
|
+
|
|
51
|
+
| 类型 | 描述 |
|
|
52
|
+
| ------- | ---- |
|
|
53
|
+
| boolean | URL 校验通过且连接请求已提交时返回 true |
|
|
54
|
+
|
|
55
|
+
**说明**
|
|
56
|
+
|
|
57
|
+
- `connect` 只能在主脚本上下文调用。
|
|
58
|
+
- `connect` 只影响当前运行期云控连接,不会写入设置页的持久化云控配置。
|
|
59
|
+
|
|
60
|
+
**示例**
|
|
61
|
+
|
|
62
|
+
```javascript
|
|
63
|
+
const accepted = cloud.connect("wss://example.com/control", "device-001");
|
|
64
|
+
logi("云控连接请求:", accepted);
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### isConnected - 判断是否已连接
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
function isConnected(): boolean;
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**返回值**
|
|
74
|
+
|
|
75
|
+
| 类型 | 描述 |
|
|
76
|
+
| ------- | ---- |
|
|
77
|
+
| boolean | WebSocket 已连接时返回 true |
|
|
78
|
+
|
|
79
|
+
**示例**
|
|
80
|
+
|
|
81
|
+
```javascript
|
|
82
|
+
if (cloud.isConnected()) {
|
|
83
|
+
cloud.report("status", { value: "ready" });
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### disconnect - 断开连接
|
|
88
|
+
|
|
89
|
+
```typescript
|
|
90
|
+
function disconnect(): void;
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
断开云控 WebSocket 并停止自动重连。
|
|
94
|
+
|
|
95
|
+
**示例**
|
|
96
|
+
|
|
97
|
+
```javascript
|
|
98
|
+
cloud.disconnect();
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### report - 上报数据
|
|
102
|
+
|
|
103
|
+
```typescript
|
|
104
|
+
function report(event: string, data: Record<string, any>): boolean;
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**参数**
|
|
108
|
+
|
|
109
|
+
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
110
|
+
| ------- | --------- | -------- | ------ | ---- |
|
|
111
|
+
| `event` | string | 是 | - | 自定义事件名 |
|
|
112
|
+
| `data` | Record<string, any> | 是 | - | 要上报的普通 Object 参数 |
|
|
113
|
+
|
|
114
|
+
**返回值**
|
|
115
|
+
|
|
116
|
+
| 类型 | 描述 |
|
|
117
|
+
| ------- | ---- |
|
|
118
|
+
| boolean | 已连接且 JSON 文本帧已提交写出时返回 true |
|
|
119
|
+
|
|
120
|
+
**示例**
|
|
121
|
+
|
|
122
|
+
```javascript
|
|
123
|
+
const ok = cloud.report("taskFinished", {
|
|
124
|
+
taskId: "A-1001",
|
|
125
|
+
success: true,
|
|
126
|
+
costMs: 1280,
|
|
127
|
+
});
|
|
128
|
+
logi("上报结果:", ok);
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### onEvent - 监听服务器事件
|
|
132
|
+
|
|
133
|
+
```typescript
|
|
134
|
+
function onEvent(callback: ((event: string, data: Record<string, any>) => void) | null): void;
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
监听服务器发送的 `scriptEvent` 协议帧。传入 `null` 会取消主脚本监听。
|
|
138
|
+
此回调注册接口只能在主线程调用,不能在线程脚本中调用。
|
|
139
|
+
|
|
140
|
+
**参数**
|
|
141
|
+
|
|
142
|
+
| 参数名 | 类型 | 是否必填 | 描述 |
|
|
143
|
+
| ---------- | ----------------------------- | -------- | ---- |
|
|
144
|
+
| `callback` | `(event, data) => void` 或 `null` | 是 | 事件处理函数,或传 `null` 取消监听 |
|
|
145
|
+
|
|
146
|
+
**示例**
|
|
147
|
+
|
|
148
|
+
```javascript
|
|
149
|
+
cloud.onEvent((event, data) => {
|
|
150
|
+
if (event === "startTask") {
|
|
151
|
+
logi("任务参数:", data);
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
```
|
package/docs/api/global.md
CHANGED
|
@@ -456,7 +456,7 @@ logi(`CPU 限流延迟: ${delay.minMs}~${delay.maxMs}ms`);
|
|
|
456
456
|
|
|
457
457
|
### setStopCallback
|
|
458
458
|
|
|
459
|
-
|
|
459
|
+
设置停止回调函数。此回调注册接口只能在主线程调用,不能在线程脚本中调用。
|
|
460
460
|
|
|
461
461
|
```typescript
|
|
462
462
|
function setStopCallback(callback: () => void): void;
|
|
@@ -483,7 +483,7 @@ setStopCallback(() => {
|
|
|
483
483
|
|
|
484
484
|
### setExceptionCallback
|
|
485
485
|
|
|
486
|
-
|
|
486
|
+
设置异常停止回调函数。此回调注册接口只能在主线程调用,不能在线程脚本中调用。
|
|
487
487
|
|
|
488
488
|
```typescript
|
|
489
489
|
function setExceptionCallback(callback: () => void): void;
|
package/docs/api/ui.md
CHANGED
|
@@ -74,15 +74,17 @@ UI 模块提供了 WebView 相关功能,支持事件通信和 JavaScript 交
|
|
|
74
74
|
|
|
75
75
|
```typescript
|
|
76
76
|
function onEvent(
|
|
77
|
-
onEvent: (event: string, data: Record<string, any>) => void
|
|
77
|
+
onEvent: ((event: string, data: Record<string, any>) => void) | null
|
|
78
78
|
): void;
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
+
此回调注册接口只能在主线程调用,不能在线程脚本中调用。传入 `null` 会取消监听。
|
|
82
|
+
|
|
81
83
|
**参数:**
|
|
82
84
|
|
|
83
85
|
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
84
86
|
| --------- | -------------------------------------------------- | -------- | ------ | ------------------------------------ |
|
|
85
|
-
| `onEvent` | (event: string, data: Record<string, any>) => void | 是
|
|
87
|
+
| `onEvent` | ((event: string, data: Record<string, any>) => void) 或 null | 是 | | 事件回调函数,用于处理来自网页的事件,传 `null` 取消监听 |
|
|
86
88
|
|
|
87
89
|
**示例:**
|
|
88
90
|
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# 云控模块 ($云控)
|
|
2
|
+
|
|
3
|
+
云控模块用于在主脚本中使用内置云控 WebSocket 连接。脚本可以连接服务器、判断连接状态、断开连接、上报事件数据,并监听服务器事件数据。
|
|
4
|
+
|
|
5
|
+
## 注意事项
|
|
6
|
+
|
|
7
|
+
- `$云控` 只在主脚本上下文注册,不支持在线程脚本里调用。
|
|
8
|
+
- 服务器事件只有一个主脚本监听槽位,多次调用 `监听事件回调` 会覆盖旧监听。
|
|
9
|
+
|
|
10
|
+
## 协议
|
|
11
|
+
|
|
12
|
+
脚本上报数据时发送 JSON 文本帧:
|
|
13
|
+
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"type": "scriptReport",
|
|
17
|
+
"event": "eventName",
|
|
18
|
+
"data": {}
|
|
19
|
+
}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
服务器下发脚本事件时发送 JSON 文本帧:
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
{
|
|
26
|
+
"type": "scriptEvent",
|
|
27
|
+
"event": "eventName",
|
|
28
|
+
"data": {}
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
`event` 是脚本和服务器约定的自定义事件名。`data` 在 JS 中是普通 Object,必须能被 JSON 序列化。
|
|
33
|
+
|
|
34
|
+
## API 参考
|
|
35
|
+
|
|
36
|
+
### 连接
|
|
37
|
+
|
|
38
|
+
```typescript
|
|
39
|
+
function 连接(地址: 字符串, 设备编号?: 字符串): 布尔值;
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**参数**
|
|
43
|
+
|
|
44
|
+
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
45
|
+
| ---------- | ------ | -------- | -------------- | ---- |
|
|
46
|
+
| `地址` | 字符串 | 是 | - | 完整 `ws://` 或 `wss://` 云控地址 |
|
|
47
|
+
| `设备编号` | 字符串 | 否 | 已保存设备编号 | 连接时追加到 query 的设备编号 |
|
|
48
|
+
|
|
49
|
+
**返回值**
|
|
50
|
+
|
|
51
|
+
| 类型 | 描述 |
|
|
52
|
+
| ------ | ---- |
|
|
53
|
+
| 布尔值 | URL 校验通过且连接请求已提交时返回 true |
|
|
54
|
+
|
|
55
|
+
**说明**
|
|
56
|
+
|
|
57
|
+
- `连接` 只能在主脚本上下文调用。
|
|
58
|
+
- `连接` 只影响当前运行期云控连接,不会写入设置页的持久化云控配置。
|
|
59
|
+
|
|
60
|
+
**示例**
|
|
61
|
+
|
|
62
|
+
```javascript
|
|
63
|
+
const 已提交 = $云控.连接("wss://example.com/control", "device-001");
|
|
64
|
+
$打印信息日志("云控连接请求:", 已提交);
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### 是否已连接
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
function 是否已连接(): 布尔值;
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**返回值**
|
|
74
|
+
|
|
75
|
+
| 类型 | 描述 |
|
|
76
|
+
| ------ | ---- |
|
|
77
|
+
| 布尔值 | WebSocket 已连接时返回 true |
|
|
78
|
+
|
|
79
|
+
**示例**
|
|
80
|
+
|
|
81
|
+
```javascript
|
|
82
|
+
if ($云控.是否已连接()) {
|
|
83
|
+
$云控.上报数据("status", { value: "ready" });
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### 断开连接
|
|
88
|
+
|
|
89
|
+
```typescript
|
|
90
|
+
function 断开连接(): 无返回值;
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
断开云控 WebSocket 并停止自动重连。
|
|
94
|
+
|
|
95
|
+
**示例**
|
|
96
|
+
|
|
97
|
+
```javascript
|
|
98
|
+
$云控.断开连接();
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### 上报数据
|
|
102
|
+
|
|
103
|
+
```typescript
|
|
104
|
+
function 上报数据(事件: 字符串, 数据: 字典<任意类型>): 布尔值;
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**参数**
|
|
108
|
+
|
|
109
|
+
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
110
|
+
| ------ | -------- | -------- | ------ | ---- |
|
|
111
|
+
| `事件` | 字符串 | 是 | - | 自定义事件名 |
|
|
112
|
+
| `数据` | 字典<任意类型> | 是 | - | 要上报的普通 Object 参数 |
|
|
113
|
+
|
|
114
|
+
**返回值**
|
|
115
|
+
|
|
116
|
+
| 类型 | 描述 |
|
|
117
|
+
| ------ | ---- |
|
|
118
|
+
| 布尔值 | 已连接且 JSON 文本帧已提交写出时返回 true |
|
|
119
|
+
|
|
120
|
+
**示例**
|
|
121
|
+
|
|
122
|
+
```javascript
|
|
123
|
+
const 成功 = $云控.上报数据("taskFinished", {
|
|
124
|
+
taskId: "A-1001",
|
|
125
|
+
success: true,
|
|
126
|
+
costMs: 1280,
|
|
127
|
+
});
|
|
128
|
+
$打印信息日志("上报结果:", 成功);
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### 监听事件回调
|
|
132
|
+
|
|
133
|
+
```typescript
|
|
134
|
+
function 监听事件回调(回调: ((事件: 字符串, 数据: 字典<任意类型>) => 无返回值) | null): 无返回值;
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
监听服务器发送的 `scriptEvent` 协议帧。传入 `null` 会取消主脚本监听。
|
|
138
|
+
该回调注册接口只能在主线程调用,不能在线程脚本中调用。
|
|
139
|
+
|
|
140
|
+
**参数**
|
|
141
|
+
|
|
142
|
+
| 参数名 | 类型 | 是否必填 | 描述 |
|
|
143
|
+
| ------ | ----------------------- | -------- | ---- |
|
|
144
|
+
| `回调` | `(事件, 数据) => 无返回值` 或 `null` | 是 | 事件处理函数,或传 `null` 取消监听 |
|
|
145
|
+
|
|
146
|
+
**示例**
|
|
147
|
+
|
|
148
|
+
```javascript
|
|
149
|
+
$云控.监听事件回调((事件, 数据) => {
|
|
150
|
+
if (事件 === "startTask") {
|
|
151
|
+
$打印信息日志("任务参数:", 数据);
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
```
|
package/docs/apicn/global.md
CHANGED
|
@@ -457,7 +457,7 @@ $打印信息日志(`CPU 限流延迟: ${延迟.minMs}~${延迟.maxMs}ms`);
|
|
|
457
457
|
|
|
458
458
|
### $设置停止回调
|
|
459
459
|
|
|
460
|
-
|
|
460
|
+
设置停止回调函数。该回调注册接口只能在主线程调用,不能在线程脚本中调用。
|
|
461
461
|
|
|
462
462
|
```typescript
|
|
463
463
|
declare const $设置停止回调: (回调: () => 无返回值) => 无返回值;
|
|
@@ -484,7 +484,7 @@ $设置停止回调(() => {
|
|
|
484
484
|
|
|
485
485
|
### $设置异常停止回调
|
|
486
486
|
|
|
487
|
-
|
|
487
|
+
设置异常停止回调函数。该回调注册接口只能在主线程调用,不能在线程脚本中调用。
|
|
488
488
|
|
|
489
489
|
```typescript
|
|
490
490
|
declare const $设置异常停止回调: (回调: () => 无返回值) => 无返回值;
|
package/docs/apicn/ui.md
CHANGED
|
@@ -62,15 +62,17 @@ UI 模块提供了 WebView 相关功能,支持事件通信和 JavaScript 交
|
|
|
62
62
|
|
|
63
63
|
```typescript
|
|
64
64
|
function 监听事件回调(
|
|
65
|
-
回调函数: (事件名称: 字符串, 数据: 字典<任意类型>) => 无返回值
|
|
65
|
+
回调函数: ((事件名称: 字符串, 数据: 字典<任意类型>) => 无返回值) | null
|
|
66
66
|
): 无返回值;
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
+
该回调注册接口只能在主线程调用,不能在线程脚本中调用。传入 `null` 会取消监听。
|
|
70
|
+
|
|
69
71
|
**参数:**
|
|
70
72
|
|
|
71
73
|
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
72
74
|
| ---------- | ---------------------------------------------------- | -------- | ------ | ------------------------------------ |
|
|
73
|
-
| `回调函数` | (事件名称: 字符串, 数据: 字典<任意类型>) => 无返回值 | 是
|
|
75
|
+
| `回调函数` | ((事件名称: 字符串, 数据: 字典<任意类型>) => 无返回值) 或 null | 是 | | 事件回调函数,用于处理来自网页的事件,传 `null` 取消监听 |
|
|
74
76
|
|
|
75
77
|
**示例:**
|
|
76
78
|
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
# 云控模块 (Cloud)
|
|
2
|
+
|
|
3
|
+
云控模块用于在 Python 主脚本中使用内置云控 WebSocket 连接。脚本可以连接云控服务器、判断连接状态、断开连接、上报事件数据,并监听服务器事件数据。
|
|
4
|
+
|
|
5
|
+
## 注意事项
|
|
6
|
+
|
|
7
|
+
- Python 云控模块只支持英文方法,不提供中文方法。
|
|
8
|
+
- `cloud` 只能在主脚本中调用,不支持在线程脚本里调用。
|
|
9
|
+
- 服务器事件只有一个主脚本监听槽位,多次调用 `onEvent` 会覆盖旧监听。
|
|
10
|
+
|
|
11
|
+
## 协议
|
|
12
|
+
|
|
13
|
+
脚本上报数据时发送 JSON 文本帧:
|
|
14
|
+
|
|
15
|
+
```json
|
|
16
|
+
{
|
|
17
|
+
"type": "scriptReport",
|
|
18
|
+
"event": "eventName",
|
|
19
|
+
"data": {}
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
服务器下发脚本事件时发送 JSON 文本帧:
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"type": "scriptEvent",
|
|
28
|
+
"event": "eventName",
|
|
29
|
+
"data": {}
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
`event` 是脚本和服务器约定的自定义事件名。`data` 在 Python 中是普通 `dict`,必须能被 JSON 序列化。
|
|
34
|
+
|
|
35
|
+
## API 参考
|
|
36
|
+
|
|
37
|
+
### connect - 连接云控服务器
|
|
38
|
+
|
|
39
|
+
```python
|
|
40
|
+
def connect(url: str, deviceNo: str | None = None) -> bool
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**参数**
|
|
44
|
+
|
|
45
|
+
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
46
|
+
| ---------- | ------------ | -------- | -------------- | ---- |
|
|
47
|
+
| `url` | str | 是 | - | 完整 `ws://` 或 `wss://` 云控地址 |
|
|
48
|
+
| `deviceNo` | str 或 `None` | 否 | 已保存设备编号 | 连接时追加到 query 的设备编号 |
|
|
49
|
+
|
|
50
|
+
**返回值**
|
|
51
|
+
|
|
52
|
+
| 类型 | 描述 |
|
|
53
|
+
| ---- | ---- |
|
|
54
|
+
| bool | URL 校验通过且连接请求已提交时返回 `True` |
|
|
55
|
+
|
|
56
|
+
**说明**
|
|
57
|
+
|
|
58
|
+
- `connect` 只能在主脚本中调用。
|
|
59
|
+
- `connect` 只影响当前运行期云控连接,不会写入设置页的持久化云控配置。
|
|
60
|
+
|
|
61
|
+
**示例**
|
|
62
|
+
|
|
63
|
+
```python
|
|
64
|
+
from kuaijs import cloud, logger
|
|
65
|
+
|
|
66
|
+
accepted = cloud.connect("wss://example.com/control", "device-001")
|
|
67
|
+
logger.info(f"云控连接请求: {accepted}")
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### isConnected - 判断是否已连接
|
|
71
|
+
|
|
72
|
+
```python
|
|
73
|
+
def isConnected() -> bool
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**返回值**
|
|
77
|
+
|
|
78
|
+
| 类型 | 描述 |
|
|
79
|
+
| ---- | ---- |
|
|
80
|
+
| bool | WebSocket 已连接时返回 `True` |
|
|
81
|
+
|
|
82
|
+
**示例**
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
from kuaijs import cloud
|
|
86
|
+
|
|
87
|
+
if cloud.isConnected():
|
|
88
|
+
cloud.report("status", {"value": "ready"})
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### disconnect - 断开连接
|
|
92
|
+
|
|
93
|
+
```python
|
|
94
|
+
def disconnect() -> None
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
断开云控 WebSocket 并停止自动重连。
|
|
98
|
+
|
|
99
|
+
**示例**
|
|
100
|
+
|
|
101
|
+
```python
|
|
102
|
+
from kuaijs import cloud
|
|
103
|
+
|
|
104
|
+
cloud.disconnect()
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### report - 上报数据
|
|
108
|
+
|
|
109
|
+
```python
|
|
110
|
+
from typing import Any, Dict
|
|
111
|
+
|
|
112
|
+
def report(event: str, data: Dict[str, Any]) -> bool
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**参数**
|
|
116
|
+
|
|
117
|
+
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
118
|
+
| ------- | ---------------- | -------- | ------ | ---- |
|
|
119
|
+
| `event` | str | 是 | - | 自定义事件名 |
|
|
120
|
+
| `data` | `Dict[str, Any]` | 是 | - | 要上报的普通 dict 参数 |
|
|
121
|
+
|
|
122
|
+
**返回值**
|
|
123
|
+
|
|
124
|
+
| 类型 | 描述 |
|
|
125
|
+
| ---- | ---- |
|
|
126
|
+
| bool | 已连接且 JSON 文本帧已提交写出时返回 `True` |
|
|
127
|
+
|
|
128
|
+
**示例**
|
|
129
|
+
|
|
130
|
+
```python
|
|
131
|
+
from kuaijs import cloud, logger
|
|
132
|
+
|
|
133
|
+
ok = cloud.report("taskFinished", {
|
|
134
|
+
"taskId": "A-1001",
|
|
135
|
+
"success": True,
|
|
136
|
+
"costMs": 1280,
|
|
137
|
+
})
|
|
138
|
+
logger.info(f"上报结果: {ok}")
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### onEvent - 监听服务器事件
|
|
142
|
+
|
|
143
|
+
```python
|
|
144
|
+
from typing import Any, Callable, Dict
|
|
145
|
+
|
|
146
|
+
def onEvent(callback: Callable[[str, Dict[str, Any]], None] | None) -> None
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
监听服务器发送的 `scriptEvent` 协议帧。传入 `None` 会取消主脚本监听。
|
|
150
|
+
该回调注册接口只能在 Python 主脚本中调用,不能在线程脚本中调用。
|
|
151
|
+
|
|
152
|
+
**参数**
|
|
153
|
+
|
|
154
|
+
| 参数名 | 类型 | 是否必填 | 描述 |
|
|
155
|
+
| ---------- | --------------------------------- | -------- | ---- |
|
|
156
|
+
| `callback` | `Callable[[str, Dict[str, Any]], None]` 或 `None` | 是 | 事件处理函数,或传 `None` 取消监听 |
|
|
157
|
+
|
|
158
|
+
事件处理函数参数:
|
|
159
|
+
|
|
160
|
+
| 字段 | 类型 | 描述 |
|
|
161
|
+
| ---- | ---- | ---- |
|
|
162
|
+
| `event` | str | 自定义事件名称 |
|
|
163
|
+
| `data` | dict | 服务端事件数据,普通 `dict` |
|
|
164
|
+
|
|
165
|
+
**示例**
|
|
166
|
+
|
|
167
|
+
```python
|
|
168
|
+
from kuaijs import cloud, logger
|
|
169
|
+
|
|
170
|
+
def handle_event(event: str, data: dict):
|
|
171
|
+
if event == "startTask":
|
|
172
|
+
logger.info(f"任务参数: {data}")
|
|
173
|
+
|
|
174
|
+
cloud.onEvent(handle_event)
|
|
175
|
+
```
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
- 导入方式:
|
|
6
6
|
|
|
7
7
|
```python
|
|
8
|
-
from kuaijs import action, hid, image, appleocr, paddleocr, yolo, yolocls, system, device, file, mysql, netcard, ime, media, hotupdate, tomatoocr, tts, ui, utils, node, pip, logger
|
|
8
|
+
from kuaijs import action, cloud, hid, image, appleocr, paddleocr, yolo, yolocls, system, device, file, mysql, netcard, ime, media, hotupdate, tomatoocr, tts, ui, utils, node, pip, logger
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
## 下载资源
|
package/docs/apipython/ui.md
CHANGED
|
@@ -75,14 +75,16 @@ UI 模块提供 WebView 相关功能,支持事件通信与 JavaScript 交互
|
|
|
75
75
|
```python
|
|
76
76
|
from typing import Callable, Any
|
|
77
77
|
|
|
78
|
-
def onEvent(callback: Callable[[str, Any], None]) -> None
|
|
78
|
+
def onEvent(callback: Callable[[str, Any], None] | None) -> None
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
+
该回调注册接口只能在 Python 主脚本中调用,不能在线程脚本中调用。传入 `None` 会取消监听。
|
|
82
|
+
|
|
81
83
|
**参数:**
|
|
82
84
|
|
|
83
85
|
| 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
84
86
|
| ---------- | ---------------------------- | -------- | ------ | ------------------------------------ |
|
|
85
|
-
| `callback` | `Callable[[str, Any], None]` | 是
|
|
87
|
+
| `callback` | `Callable[[str, Any], None]` 或 `None` | 是 | | 事件回调函数,用于处理来自网页的事件,传 `None` 取消监听 |
|
|
86
88
|
|
|
87
89
|
**示例:**
|
|
88
90
|
|