@doubao-apps/ai 0.0.34 → 0.0.35
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 +2 -0
- package/dist/cli.js +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +33 -1
- package/dist/{manifest.json → public/manifest.json} +7 -2
- package/dist/{skills → public/skills}/doubao-apps-dev/SKILL.md +11 -10
- package/dist/{skills → public/skills}/doubao-apps-dev/references/examples/common-patterns.md +2 -2
- package/dist/{skills/doubao-apps-dev/references/examples/component-basics.md → public/skills/doubao-apps-dev/references/examples/page-widget-basics.md} +1 -1
- package/dist/{skills/doubao-apps-dev/references/examples/component-recipes.md → public/skills/doubao-apps-dev/references/examples/page-widget-recipes.md} +2 -3
- package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/component-development.md +2 -2
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/01-/345/237/272/347/241/200.md +270 -0
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/02-/347/263/273/347/273/237.md +438 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/03-/345/256/232/344/275/215.md +32 -55
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/04-/345/255/230/345/202/250.md +18 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/05-/350/267/257/347/224/261.md +8 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/06-/344/272/244/344/272/222.md +49 -3
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/07-/350/276/223/345/205/245.md +47 -0
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/08-/347/275/221/347/273/234.md +238 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/09-/345/252/222/344/275/223.md +81 -1
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/10-/344/270/232/345/212/241/350/203/275/345/212/233.md +143 -13
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/11-/347/231/273/345/275/225.md +11 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/14-/350/223/235/347/211/231.md +212 -1
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/15-wi-fi.md +104 -27
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/16-/345/212/240/351/200/237/345/272/246/350/256/241.md +122 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/17-ibeacon.md +38 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/18-/347/275/227/347/233/230.md +45 -22
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/19-/350/256/276/345/244/207/346/226/271/345/220/221.md +120 -0
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/20-/351/231/200/350/236/272/344/273/252.md +122 -0
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/21-/350/256/276/345/244/207-/347/275/221/347/273/234.md +153 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/23-/346/227/240/351/232/234/347/242/215.md +11 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/24-/345/237/272/347/241/200/344/277/241/346/201/257.md +19 -0
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/25-/347/224/265/346/261/240.md +92 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/26-/346/227/245/345/216/206.md +11 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/27-/345/211/252/350/264/264/346/235/277.md +11 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/28-/350/201/224/347/263/273/344/272/272.md +13 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/29-/345/212/240/345/257/206.md +11 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/31-/346/211/253/347/240/201.md +51 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/32-/345/261/217/345/271/225.md +60 -20
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/33-/351/234/207/345/212/250.md +11 -0
- package/dist/public/skills/doubao-apps-dev/references/reference/open-api/34-/346/226/207/344/273/266/347/263/273/347/273/237.md +334 -0
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/README.md +4 -4
- package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api.md +14 -12
- package/dist/public/skills/doubao-components-api/SKILL.md +50 -0
- package/dist/public/skills/doubao-components-api/references/reference/form.md +146 -0
- package/dist/public/skills/doubao-components-api/references/reference/interactive.md +120 -0
- package/dist/public/skills/doubao-components-api/references/reference/layout-overlay.md +131 -0
- package/dist/public/skills/doubao-components-api/references/reference/layout-scroll.md +149 -0
- package/dist/public/skills/doubao-components-api/references/reference/map-canvas.md +107 -0
- package/dist/public/skills/doubao-components-api/references/reference/media.md +195 -0
- package/dist/{skills → public/skills}/douyin-to-doubao/SKILL.md +1 -1
- package/dist/{skills → public/skills}/h5-to-doubao/SKILL.md +2 -2
- package/dist/{skills → public/skills}/quality-gate/scripts/collect-doubao-page-data.js +3 -3
- package/dist/{skills → public/skills}/uniapp-to-doubao/SKILL.md +1 -1
- package/dist/{skills → public/skills}/weixin-to-doubao/SKILL.md +1 -1
- package/package.json +5 -5
- package/dist/733.js +0 -33
- package/dist/skills/doubao-apps-dev/references/reference/components-quick-ref.md +0 -114
- package/dist/skills/doubao-apps-dev/references/reference/open-api/01-/345/237/272/347/241/200.md +0 -136
- package/dist/skills/doubao-apps-dev/references/reference/open-api/02-/347/263/273/347/273/237.md +0 -257
- package/dist/skills/doubao-apps-dev/references/reference/open-api/08-/347/275/221/347/273/234.md +0 -124
- package/dist/skills/doubao-apps-dev/references/reference/open-api/16-/345/212/240/351/200/237/345/272/246/350/256/241.md +0 -87
- package/dist/skills/doubao-apps-dev/references/reference/open-api/19-/350/256/276/345/244/207/346/226/271/345/220/221.md +0 -86
- package/dist/skills/doubao-apps-dev/references/reference/open-api/20-/351/231/200/350/236/272/344/273/252.md +0 -87
- package/dist/skills/doubao-apps-dev/references/reference/open-api/21-/350/256/276/345/244/207-/347/275/221/347/273/234.md +0 -102
- package/dist/skills/doubao-apps-dev/references/reference/open-api/25-/347/224/265/346/261/240.md +0 -63
- package/dist/skills/doubao-apps-dev/references/reference/open-api/34-/346/226/207/344/273/266/347/263/273/347/273/237.md +0 -73
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/examples/open-api-recipes.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/best-practices.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/expired-widget.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/mcp-ui.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/performance-optimization.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/troubleshooting.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/framework-api-quick-ref.md +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/12-/346/224/257/344/273/230.md" +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/13-/346/225/260/346/215/256/345/210/206/346/236/220.md" +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/22-/347/237/255/344/277/241.md" +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/30-/347/224/265/350/257/235.md" +0 -0
- /package/dist/{skills → public/skills}/doubao-apps-dev/references/rules/dos-and-donts.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/assets/migration-checklist-template.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/component-mapping.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/core-api-mapping.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/event-mapping.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/lifecycle-mapping.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/style-mapping.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/source-framework/api-reference.md +0 -0
- /package/dist/{skills → public/skills}/douyin-to-doubao/references/source-framework/components.md +0 -0
- /package/dist/{skills → public/skills}/h5-to-doubao/references/common/troubleshooting.md +0 -0
- /package/dist/{skills → public/skills}/h5-to-doubao/references/source-framework/react-to-doubao.md +0 -0
- /package/dist/{skills → public/skills}/h5-to-doubao/references/source-framework/vue-to-doubao.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/SKILL.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/gates/bronze.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/gates/gold-phase1.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/gates/gold-phase2.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/gates/gold-phase3.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/gates/silver.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/runtime-fix.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/screenshots/doubao-faq.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/screenshots/doubao.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/screenshots/h5-react.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/screenshots/weixin.md +0 -0
- /package/dist/{skills → public/skills}/quality-gate/scripts/phase2-normalized-compare.py +0 -0
- /package/dist/{skills → public/skills}/quality-gate/scripts/run-doubao-screenshots.sh +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/assets/migration-checklist-template.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/component-mapping.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/core-api-mapping.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/event-mapping.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/lifecycle-mapping.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/style-mapping.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/source-framework/api-reference.md +0 -0
- /package/dist/{skills → public/skills}/uniapp-to-doubao/references/source-framework/components.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/assets/migration-checklist-template.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/component-mapping.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/core-api-mapping.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/event-mapping.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/lifecycle-mapping.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/style-mapping.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/source-framework/api-reference.md +0 -0
- /package/dist/{skills → public/skills}/weixin-to-doubao/references/source-framework/components.md +0 -0
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
| API | 说明 |
|
|
10
10
|
| --- | --- |
|
|
11
11
|
| [hideKeyboard](#hidekeyboard) | 收起当前键盘。 |
|
|
12
|
+
| [onKeyboardHeightChange](#onkeyboardheightchange) | 监听键盘高度变化事件。 |
|
|
12
13
|
| [getSelectedTextRange](#getselectedtextrange) | 获取当前输入框的选区范围。 |
|
|
13
14
|
|
|
14
15
|
## API 详情
|
|
@@ -34,6 +35,33 @@ await hideKeyboard({});
|
|
|
34
35
|
|
|
35
36
|
返回 `Promise<object>`。
|
|
36
37
|
|
|
38
|
+
<a id="onkeyboardheightchange"></a>
|
|
39
|
+
### onKeyboardHeightChange()
|
|
40
|
+
|
|
41
|
+
监听键盘高度变化事件。
|
|
42
|
+
|
|
43
|
+
## 代码示例
|
|
44
|
+
|
|
45
|
+
```typescript
|
|
46
|
+
import { onKeyboardHeightChange } from '@doubao-apps/framework/api';
|
|
47
|
+
|
|
48
|
+
const unsubscribe = onKeyboardHeightChange(({ height }) => {
|
|
49
|
+
console.log('Keyboard height change event:', { height });
|
|
50
|
+
});
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## 入参
|
|
54
|
+
|
|
55
|
+
|参数名|类型|必填|说明|
|
|
56
|
+
|---|---|---|---|
|
|
57
|
+
|handler|`Function`|是|-|
|
|
58
|
+
|handler.event|`KeyboardHeightChangeEvent`|是|-|
|
|
59
|
+
|handler.event.height|`number`|是|键盘高度,单位 px。|
|
|
60
|
+
|
|
61
|
+
## 返回值
|
|
62
|
+
|
|
63
|
+
返回 `Function`。
|
|
64
|
+
|
|
37
65
|
<a id="getselectedtextrange"></a>
|
|
38
66
|
### getSelectedTextRange()
|
|
39
67
|
|
|
@@ -61,3 +89,22 @@ console.log(start, end);
|
|
|
61
89
|
|---|---|---|
|
|
62
90
|
|end|`number`|选区结束位置。|
|
|
63
91
|
|start|`number`|选区起始位置。|
|
|
92
|
+
|
|
93
|
+
## 相关类型
|
|
94
|
+
|
|
95
|
+
<a id="keyboardheightchangeevent"></a>
|
|
96
|
+
### KeyboardHeightChangeEvent
|
|
97
|
+
|
|
98
|
+
#### Properties
|
|
99
|
+
|
|
100
|
+
• **height**: `number` - 键盘高度,单位 px
|
|
101
|
+
|
|
102
|
+
<a id="getselectedtextrangeresult"></a>
|
|
103
|
+
### GetSelectedTextRangeResult
|
|
104
|
+
|
|
105
|
+
获取输入框选区范围的返回结果。
|
|
106
|
+
|
|
107
|
+
#### Properties
|
|
108
|
+
|
|
109
|
+
• **start**: `number` - 选区起始位置
|
|
110
|
+
• **end**: `number` - 选区结束位置
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
# Open API: 网络
|
|
2
|
+
|
|
3
|
+
网络请求与 WebSocket。
|
|
4
|
+
|
|
5
|
+
[返回目录](./README.md) | [返回速查](../open-api.md)
|
|
6
|
+
|
|
7
|
+
## 速查
|
|
8
|
+
|
|
9
|
+
| API | 说明 |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| [request](#request) | 发起网络请求。 |
|
|
12
|
+
| [connectSocket](#connectsocket) | 创建一个 WebSocket 连接,并返回可操作该连接的 SocketTask。 |
|
|
13
|
+
|
|
14
|
+
## API 详情
|
|
15
|
+
|
|
16
|
+
<a id="request"></a>
|
|
17
|
+
### request()
|
|
18
|
+
|
|
19
|
+
发起网络请求。
|
|
20
|
+
|
|
21
|
+
`request` 本身不接受泛型参数;如需业务数据类型,请读取 `result.data` 后再做类型收窄或断言。
|
|
22
|
+
|
|
23
|
+
## 代码示例
|
|
24
|
+
|
|
25
|
+
```typescript
|
|
26
|
+
import { request } from '@doubao-apps/framework/api';
|
|
27
|
+
|
|
28
|
+
const result = await request({
|
|
29
|
+
url: 'https://postman-echo.com/post',
|
|
30
|
+
method: 'POST',
|
|
31
|
+
dataType: 'json',
|
|
32
|
+
header: { 'content-type': 'application/json' },
|
|
33
|
+
data: { hello: 'world' }
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
console.log(result.statusCode, result.data);
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## 注意事项
|
|
40
|
+
|
|
41
|
+
返回 statusCode、header 和 data。
|
|
42
|
+
|
|
43
|
+
## 入参
|
|
44
|
+
|
|
45
|
+
|参数名|类型|必填|说明|
|
|
46
|
+
|---|---|---|---|
|
|
47
|
+
|data|`string | Record<string, any> | ArrayBuffer`|否|请求体数据。<br><br>传给服务器的数据最终会是 `String` 或 `ArrayBuffer`:<br>- 若 `data` 是 `string` 或 `ArrayBuffer`,直接使用;<br>- 若 `header['content-type']` 是 `application/x-www-form-urlencoded`,会被编码为 query string,例如:`encodeURIComponent(k)=encodeURIComponent(v)`;<br>- 若 `header['content-type']` 是 `application/json`,会执行 JSON 序列化;<br>- 若 `data` 是普通对象且未命中上述类型,也会执行 JSON 序列化;<br>- 其他类型会调用 `toString()`|
|
|
48
|
+
|dataType|`"string" | "json"`|否|期望返回的数据格式。<br>- `json`: 尝试按 JSON 解析;<br>- `string`: 按字符串返回。|
|
|
49
|
+
|header|`Record<string, string>`|否|请求 Header。|
|
|
50
|
+
|method|`RequestMethod`|否|请求方法。|
|
|
51
|
+
|url|`string`|是|请求地址,需为完整的 **HTTPS** URL。|
|
|
52
|
+
|
|
53
|
+
**类型说明**
|
|
54
|
+
|
|
55
|
+
- `RequestMethod`: `"GET" | "POST" | "PUT" | "DELETE" | "HEAD" | "OPTIONS" | "TRACE" | "CONNECT"`
|
|
56
|
+
|
|
57
|
+
## 返回值
|
|
58
|
+
|
|
59
|
+
返回一个 Promise,解析为 RequestResponse。
|
|
60
|
+
|
|
61
|
+
|字段名|类型|说明|
|
|
62
|
+
|---|---|---|
|
|
63
|
+
|data|`string | Record<string, any> | ArrayBuffer`|响应数据,类型由 `dataType` 决定。|
|
|
64
|
+
|header|`Record<string, string>`|HTTP 响应头。|
|
|
65
|
+
|statusCode|`number`|HTTP 状态码。|
|
|
66
|
+
|
|
67
|
+
<a id="connectsocket"></a>
|
|
68
|
+
### connectSocket()
|
|
69
|
+
|
|
70
|
+
创建一个 WebSocket 连接,并返回可操作该连接的 SocketTask。
|
|
71
|
+
|
|
72
|
+
该 API 会同步返回 `SocketTask`,但连接创建本身是异步过程。调用方应先在返回的
|
|
73
|
+
`SocketTask` 上注册事件回调,再等待 `onOpen` 表示连接可用。后续发送消息使用
|
|
74
|
+
`SocketTask.send`,关闭连接使用 `SocketTask.close`。
|
|
75
|
+
|
|
76
|
+
## 代码示例
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
import { connectSocket } from '@doubao-apps/framework/api';
|
|
80
|
+
|
|
81
|
+
const socketTask = connectSocket({
|
|
82
|
+
url: 'wss://example.com/socket',
|
|
83
|
+
header: { authorization: 'Bearer token' },
|
|
84
|
+
protocols: ['chat.v1']
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
socketTask.onOpen(() => {
|
|
88
|
+
socketTask.send({ data: 'hello' });
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
socketTask.onMessage((event) => {
|
|
92
|
+
console.log(event.data);
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
socketTask.onClose((event) => {
|
|
96
|
+
console.log(event.code, event.reason);
|
|
97
|
+
});
|
|
98
|
+
|
|
99
|
+
socketTask.onError((event) => {
|
|
100
|
+
console.error(event.errMsg);
|
|
101
|
+
});
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## 注意事项
|
|
105
|
+
|
|
106
|
+
- 返回 `SocketTask` 不代表连接已经成功,连接成功以 `onOpen` 为准。
|
|
107
|
+
- `send` 必须接收对象参数,并把要发送的内容放在 `data` 字段中。
|
|
108
|
+
- 如果 `protocols` 非空,需要服务端支持并返回匹配的子协议。
|
|
109
|
+
- 多次调用会创建多条连接,旧连接不会自动关闭;不再使用时应主动调用 `close`。
|
|
110
|
+
- 连接失败、发送失败或关闭失败会通过 `SocketTask.onError` 通知。
|
|
111
|
+
|
|
112
|
+
## 入参
|
|
113
|
+
|
|
114
|
+
|参数名|类型|必填|说明|
|
|
115
|
+
|---|---|---|---|
|
|
116
|
+
|header|`Record<string, string>`|否|WebSocket 握手阶段携带的 HTTP Header。<br><br>适合放置业务自定义 Header,例如鉴权 token、trace id、客户端能力标识等。<br>`referer` 由宿主侧统一生成和管理,不应依赖该字段被业务传入值覆盖。|
|
|
117
|
+
|protocols|`string[]`|否|WebSocket 子协议数组。<br><br>会作为握手请求中的 `Sec-WebSocket-Protocol` 候选值传给服务端。<br>如果传入非空数组,服务端需要选择其中一个协议并在握手响应中返回;<br>服务端不支持或不返回匹配协议时,连接可能被宿主判定为创建失败。|
|
|
118
|
+
|url|`string`|是|WebSocket 连接地址。<br><br>需要包含协议、域名、路径和可选 query,例如 `wss://example.com/socket?room=1`。<br>如果地址为空或不是字符串,本 API 会返回 `readyState` 为 `undefined` 的 SocketTask,<br>并异步触发 `onError`。|
|
|
119
|
+
|
|
120
|
+
## 返回值
|
|
121
|
+
|
|
122
|
+
当前 WebSocket 连接对应的 SocketTask。
|
|
123
|
+
|
|
124
|
+
|字段名|类型|说明|
|
|
125
|
+
|---|---|---|
|
|
126
|
+
|CLOSED|`3`|表示 Socket 连接已关闭。<br><br>进入该状态后,该任务不会再收到新的消息,也不应继续调用 `send`。|
|
|
127
|
+
|CLOSING|`2`|表示 Socket 连接关闭中。<br><br>调用 SocketTask.close 后、本地等待宿主侧完成关闭流程时通常处于该状态。|
|
|
128
|
+
|CONNECTING|`0`|表示 Socket 正在连接。<br><br>`connectSocket` 刚返回且宿主尚未完成握手时通常处于该状态。|
|
|
129
|
+
|OPEN|`1`|表示 Socket 连接已经打开。<br><br>进入该状态后可以调用 SocketTask.send 发送数据。|
|
|
130
|
+
|readyState|`number | undefined`|当前 Socket 连接状态 code。<br><br>可与 `CONNECTING`、`OPEN`、`CLOSING`、`CLOSED` 常量比较。<br>如果因为参数错误等原因导致连接请求没有被宿主成功创建,则为 `undefined`。|
|
|
131
|
+
|close|`(params?: SocketTaskCloseParams) => void`|-|
|
|
132
|
+
|onClose|`(callback: Function) => void`|-|
|
|
133
|
+
|onError|`(callback: Function) => void`|-|
|
|
134
|
+
|onMessage|`(callback: Function) => void`|-|
|
|
135
|
+
|onOpen|`(callback: Function) => void`|-|
|
|
136
|
+
|send|`(params: SocketTaskSendParams) => void`|-|
|
|
137
|
+
|
|
138
|
+
## 相关类型
|
|
139
|
+
|
|
140
|
+
<a id="requestmethod"></a>
|
|
141
|
+
### RequestMethod
|
|
142
|
+
|
|
143
|
+
#### Type
|
|
144
|
+
|
|
145
|
+
`'GET' | 'POST' | 'PUT' | 'DELETE' | 'HEAD' | 'OPTIONS' | 'TRACE' | 'CONNECT'`
|
|
146
|
+
|
|
147
|
+
<a id="requestresponse"></a>
|
|
148
|
+
### RequestResponse
|
|
149
|
+
|
|
150
|
+
网络请求返回结果。
|
|
151
|
+
|
|
152
|
+
#### Properties
|
|
153
|
+
|
|
154
|
+
• **statusCode**: `number` - HTTP 状态码
|
|
155
|
+
• **header**: `Record<string, string>` - HTTP 响应头
|
|
156
|
+
• **data?**: `string | ArrayBuffer | Record<string, any>` - 响应数据,类型由 dataType 决定
|
|
157
|
+
|
|
158
|
+
<a id="sockettasksendparams"></a>
|
|
159
|
+
### SocketTaskSendParams
|
|
160
|
+
|
|
161
|
+
SocketTask.send 的参数。 send 只负责向已打开的 WebSocket 连接写入一条消息,不返回 Promise。 发送失败、连接未就绪或底层通道异常时,会通过同一个 SocketTask 的 onError 回调通知。
|
|
162
|
+
|
|
163
|
+
#### Properties
|
|
164
|
+
|
|
165
|
+
• **data**: `string | ArrayBuffer` - 需要发送给服务端的数据。 - 传入 string 时按文本消息发送; - 传入 ArrayBuffer 时按二进制消息发送,内部会编码后交给宿主侧处理。 建议只在 onOpen 回调触发后调用 send,此时 readyState 通常为 SocketTask.OPEN
|
|
166
|
+
|
|
167
|
+
<a id="sockettaskcloseparams"></a>
|
|
168
|
+
### SocketTaskCloseParams
|
|
169
|
+
|
|
170
|
+
SocketTask.close 的参数。 close 用于主动关闭当前 WebSocket 连接。调用后 readyState 会先进入 SocketTask.CLOSING,最终关闭结果通过 onClose 或 onError 回调通知。
|
|
171
|
+
|
|
172
|
+
#### Properties
|
|
173
|
+
|
|
174
|
+
• **code?**: `number` - 关闭连接状态码。 不传时由宿主侧按正常关闭处理,通常等价于 1000。 常见值包括: - 1000: 正常关闭; - 1001: 因页面进入后台、宿主回收连接等原因关闭
|
|
175
|
+
• **reason?**: `string` - 连接被关闭的原因。 该字段会随关闭帧传递给服务端,是否被服务端记录或回传取决于服务端实现
|
|
176
|
+
|
|
177
|
+
<a id="sockettask"></a>
|
|
178
|
+
### SocketTask
|
|
179
|
+
|
|
180
|
+
通过 connectSocket 获取的 WebSocket 任务实例。 SocketTask 表示单条 WebSocket 连接的控制对象。它负责发送数据、关闭连接, 并通过事件回调接收连接状态、服务端消息和错误通知。connectSocket 返回时连接 仍可能处于创建中,调用方应先注册 onOpen、onError、onClose、onMessage 等回调,再根据 onOpen 事件发送业务数据。
|
|
181
|
+
|
|
182
|
+
#### Properties
|
|
183
|
+
|
|
184
|
+
• **CONNECTING**: `0` - 表示 Socket 正在连接。 connectSocket 刚返回且宿主尚未完成握手时通常处于该状态
|
|
185
|
+
• **OPEN**: `1` - 表示 Socket 连接已经打开。 进入该状态后可以调用 SocketTask.send 发送数据
|
|
186
|
+
• **CLOSING**: `2` - 表示 Socket 连接关闭中。 调用 SocketTask.close 后、本地等待宿主侧完成关闭流程时通常处于该状态
|
|
187
|
+
• **CLOSED**: `3` - 表示 Socket 连接已关闭。 进入该状态后,该任务不会再收到新的消息,也不应继续调用 send
|
|
188
|
+
• **readyState**: `number | undefined` - 当前 Socket 连接状态 code。 可与 CONNECTING、OPEN、CLOSING、CLOSED 常量比较。 如果因为参数错误等原因导致连接请求没有被宿主成功创建,则为 undefined
|
|
189
|
+
• **send**: `(params: SocketTaskSendParams) => void` - 通过 WebSocket 连接发送数据。 该方法只发起发送动作,不返回发送结果。建议在 readyState === SocketTask.OPEN 或收到 onOpen 事件后调用;如果连接未就绪、数据编码失败或宿主侧发送失败, 会触发 onError
|
|
190
|
+
• **close**: `(params?: SocketTaskCloseParams) => void` - 关闭 WebSocket 连接。 调用后会尝试向宿主侧发起关闭动作,并把 readyState 置为 SocketTask.CLOSING。 最终关闭完成时触发 onClose;关闭动作失败时触发 onError
|
|
191
|
+
• **onOpen**: `(callback: (event: SocketTaskOpenEvent) => void) => void` - 监听 WebSocket 连接服务器成功的事件。 可以注册多个回调。连接成功后触发回调,并携带握手响应 Header、协议类型等信息。 通常应在该回调中或之后调用 SocketTask.send
|
|
192
|
+
• **onClose**: `(callback: (event: SocketTaskCloseEvent) => void) => void` - 监听 WebSocket 与服务器连接断开的事件。 主动关闭、服务端关闭、宿主侧回收连接都可能触发该回调。 回调触发后当前任务会从内部连接表移除
|
|
193
|
+
• **onMessage**: `(callback: (event: SocketTaskMessageEvent) => void) => void` - 监听 WebSocket 接收到服务器发送信息的事件。 服务端每下发一条消息都会触发一次回调。消息内容通过 event.data 返回, 类型可能是 string 或 ArrayBuffer
|
|
194
|
+
• **onError**: `(callback: (event: SocketTaskErrorEvent) => void) => void` - 监听 WebSocket 发生错误的事件。 连接创建、发送、关闭或底层通道出现异常时触发。 该回调只表示发生错误,不等同于连接一定已经关闭;是否关闭应结合 readyState 或后续 onClose 事件判断
|
|
195
|
+
|
|
196
|
+
<a id="sockettaskopenevent"></a>
|
|
197
|
+
### SocketTaskOpenEvent
|
|
198
|
+
|
|
199
|
+
WebSocket 连接成功事件。 当宿主侧完成 WebSocket 握手并进入 open 状态后触发。 收到该事件后,调用方可以开始通过 SocketTask.send 发送数据。
|
|
200
|
+
|
|
201
|
+
#### Properties
|
|
202
|
+
|
|
203
|
+
• **header**: `Record<string, string>` - WebSocket 握手响应中的 Response Header。 不同平台对 Header key 的大小写处理可能不同,读取时建议按业务需要做兼容
|
|
204
|
+
• **protocolType?**: `string` - 当前连接使用的网络传输层协议。 该字段由宿主侧返回,部分运行环境可能不提供
|
|
205
|
+
• **socketType?**: `string` - 宿主侧使用的 WebSocket 实现类型。 可能的值由宿主实现决定,例如传统 WebSocket 实现或宿主网络库实现; 部分运行环境可能不提供
|
|
206
|
+
|
|
207
|
+
<a id="sockettaskmessageevent"></a>
|
|
208
|
+
### SocketTaskMessageEvent
|
|
209
|
+
|
|
210
|
+
WebSocket 收到服务端消息事件。 服务端通过当前连接下发消息时触发。文本消息会以 string 形式返回; 二进制消息会尽量还原为 ArrayBuffer。
|
|
211
|
+
|
|
212
|
+
#### Properties
|
|
213
|
+
|
|
214
|
+
• **data**: `string | ArrayBuffer` - 收到的服务端消息。 - 文本消息返回 string; - 二进制消息返回 ArrayBuffer。 如果运行环境不支持二进制解码能力,底层传回的内容可能仍保持字符串形式
|
|
215
|
+
• **protocolType?**: `string` - 当前消息所属连接使用的协议。 该字段由宿主侧返回,部分运行环境可能不提供
|
|
216
|
+
• **socketType?**: `string` - 宿主侧使用的 WebSocket 实现类型。 该字段由宿主侧返回,部分运行环境可能不提供
|
|
217
|
+
|
|
218
|
+
<a id="sockettaskcloseevent"></a>
|
|
219
|
+
### SocketTaskCloseEvent
|
|
220
|
+
|
|
221
|
+
WebSocket 关闭事件。 当前连接被主动关闭、服务端关闭或宿主侧因异常回收连接时触发。 触发后 readyState 会变为 SocketTask.CLOSED,该 SocketTask 不应再继续发送数据。
|
|
222
|
+
|
|
223
|
+
#### Properties
|
|
224
|
+
|
|
225
|
+
• **code?**: `number` - 关闭状态码。 可能来自调用 SocketTask.close 时传入的 code,也可能来自服务端或宿主侧
|
|
226
|
+
• **reason?**: `string` - 关闭原因。 可能来自调用 SocketTask.close 时传入的 reason,也可能来自服务端或宿主侧
|
|
227
|
+
• **errMsg?**: `string` - 错误信息。 非正常关闭时宿主侧可能通过该字段补充失败原因;正常关闭时通常为空
|
|
228
|
+
• **protocolType?**: `string` - 当前连接使用的网络传输层协议。 该字段由宿主侧返回,部分运行环境可能不提供
|
|
229
|
+
• **socketType?**: `string` - 宿主侧使用的 WebSocket 实现类型。 该字段由宿主侧返回,部分运行环境可能不提供
|
|
230
|
+
|
|
231
|
+
<a id="sockettaskerrorevent"></a>
|
|
232
|
+
### SocketTaskErrorEvent
|
|
233
|
+
|
|
234
|
+
WebSocket 错误事件。 连接创建失败、发送失败、主动关闭失败、底层通道异常等错误都会通过该事件通知。 如果错误发生在连接创建阶段,readyState 会变为 undefined 或 SocketTask.CLOSED。
|
|
235
|
+
|
|
236
|
+
#### Properties
|
|
237
|
+
|
|
238
|
+
• **errMsg**: `string` - 错误信息。 由前端参数校验、编码过程或宿主侧返回的失败原因组成,可直接用于日志上报
|
|
@@ -63,7 +63,7 @@ await previewImage({
|
|
|
63
63
|
|
|
64
64
|
|参数名|类型|必填|说明|
|
|
65
65
|
|---|---|---|---|
|
|
66
|
-
|current|`string
|
|
66
|
+
|current|`string | number`|否|当前显示图片的链接,或当前显示图片的下标,不填则默认为 urls 中的第一张|
|
|
67
67
|
|referrerPolicy|`string`|否|预览页使用的 Referrer 策略。|
|
|
68
68
|
|showmenu|`boolean`|否|是否显示长按菜单,菜单支持保存图片至本地相册|
|
|
69
69
|
|urls|`string[]`|是|需要预览的图片链接列表。|
|
|
@@ -190,3 +190,83 @@ console.log(tempFilePath);
|
|
|
190
190
|
|字段名|类型|说明|
|
|
191
191
|
|---|---|---|
|
|
192
192
|
|tempFilePath|`string`|压缩后图片的临时文件路径。|
|
|
193
|
+
|
|
194
|
+
## 相关类型
|
|
195
|
+
|
|
196
|
+
<a id="imageorientation"></a>
|
|
197
|
+
### ImageOrientation
|
|
198
|
+
|
|
199
|
+
图片方向枚举。
|
|
200
|
+
|
|
201
|
+
#### Type
|
|
202
|
+
|
|
203
|
+
`| 'up'
|
|
204
|
+
| 'up-mirrored'
|
|
205
|
+
| 'down'
|
|
206
|
+
| 'down-mirrored'
|
|
207
|
+
| 'left-mirrored'
|
|
208
|
+
| 'right'
|
|
209
|
+
| 'right-mirrored'
|
|
210
|
+
| 'left'`
|
|
211
|
+
|
|
212
|
+
<a id="getimageinforesult"></a>
|
|
213
|
+
### GetImageInfoResult
|
|
214
|
+
|
|
215
|
+
图片信息结果。
|
|
216
|
+
|
|
217
|
+
#### Properties
|
|
218
|
+
|
|
219
|
+
• **height**: `number` - 图片原始高度,单位 px,不考虑旋转
|
|
220
|
+
• **orientation**: `ImageOrientation` - 图片方向
|
|
221
|
+
• **path**: `string` - 图片的本地路径
|
|
222
|
+
• **type**: `string` - 图片格式
|
|
223
|
+
• **width**: `number` - 图片原始宽度,单位 px,不考虑旋转
|
|
224
|
+
|
|
225
|
+
<a id="chooseimagesizetype"></a>
|
|
226
|
+
### ChooseImageSizeType
|
|
227
|
+
|
|
228
|
+
可选的图片尺寸类型。
|
|
229
|
+
|
|
230
|
+
#### Type
|
|
231
|
+
|
|
232
|
+
`'original' | 'compressed'`
|
|
233
|
+
|
|
234
|
+
<a id="chooseimagesourcetype"></a>
|
|
235
|
+
### ChooseImageSourceType
|
|
236
|
+
|
|
237
|
+
可选的图片来源类型。
|
|
238
|
+
|
|
239
|
+
#### Type
|
|
240
|
+
|
|
241
|
+
`'album' | 'camera' | 'user' | 'environment'`
|
|
242
|
+
|
|
243
|
+
<a id="chooseimagefile"></a>
|
|
244
|
+
### ChooseImageFile
|
|
245
|
+
|
|
246
|
+
选择图片返回的单个文件信息。
|
|
247
|
+
|
|
248
|
+
#### Properties
|
|
249
|
+
|
|
250
|
+
• **path**: `string` - 本地临时文件路径
|
|
251
|
+
• **size**: `number` - 文件大小,单位 B
|
|
252
|
+
• **type?**: `string` - 文件 MIME 类型
|
|
253
|
+
• **originalFileObj?**: `File` - 原始浏览器 File 对象
|
|
254
|
+
|
|
255
|
+
<a id="chooseimageresult"></a>
|
|
256
|
+
### ChooseImageResult
|
|
257
|
+
|
|
258
|
+
选择图片结果。
|
|
259
|
+
|
|
260
|
+
#### Properties
|
|
261
|
+
|
|
262
|
+
• **tempFilePaths**: `string[]` - 图片临时文件路径列表
|
|
263
|
+
• **tempFiles**: `ChooseImageFile[]` - 图片临时文件信息列表
|
|
264
|
+
|
|
265
|
+
<a id="compressimageresult"></a>
|
|
266
|
+
### CompressImageResult
|
|
267
|
+
|
|
268
|
+
压缩图片结果。
|
|
269
|
+
|
|
270
|
+
#### Properties
|
|
271
|
+
|
|
272
|
+
• **tempFilePath**: `string` - 压缩后图片的临时文件路径
|
|
@@ -31,15 +31,22 @@
|
|
|
31
31
|
|
|
32
32
|
```typescript
|
|
33
33
|
import { ActionDirectiveType, dispatchActionDirective } from '@doubao-apps/framework/api';
|
|
34
|
+
import { getWidgetInstanceId } from '@doubao-apps/framework';
|
|
34
35
|
|
|
35
36
|
await dispatchActionDirective({
|
|
36
|
-
widgetInstanceId:
|
|
37
|
+
widgetInstanceId: getWidgetInstanceId(),
|
|
37
38
|
actionType: ActionDirectiveType.BUTTON_CLICK,
|
|
38
|
-
actionDescribe: '
|
|
39
|
-
expectedAction: '
|
|
39
|
+
actionDescribe: '用户点击支付按钮并完成话费支付',
|
|
40
|
+
expectedAction: '调用话费账单查询工具,基于工具返回回复用户'
|
|
40
41
|
});
|
|
41
42
|
```
|
|
42
43
|
|
|
44
|
+
## 注意事项
|
|
45
|
+
|
|
46
|
+
适用于卡片交互后向模型补充结构化动作上下文,例如按钮点击、选项选择或表单提交。
|
|
47
|
+
`getWidgetInstanceId` 仅在卡片环境中有效,在小程序页面中会返回 `undefined`。如果需要在页面中调用,
|
|
48
|
+
请在 `navigateTo` 时通过参数传递卡片实例 ID。
|
|
49
|
+
|
|
43
50
|
## 入参
|
|
44
51
|
|
|
45
52
|
|参数名|类型|必填|说明|
|
|
@@ -53,7 +60,7 @@ await dispatchActionDirective({
|
|
|
53
60
|
|responseHint|`string`|否|自然语言描述,例如:严格参照提供的工具入参来调用工具,不要调用除bill_check以外的其他工具,只能严格基于bill_check工具返回结果进行回复|
|
|
54
61
|
|toolName|`string`|否|mcp名称,如果expectedAction里预期要调用工具,需要在这里写明调用工具的mcp name|
|
|
55
62
|
|toolParams|`Record<string, string>`|否|mcp入参,如果expectedAction里预期要调用工具,需要在这里写明调用工具的入参|
|
|
56
|
-
|widgetInstanceId|`string
|
|
63
|
+
|widgetInstanceId|`string`|是|会话消息关联的卡片实例 ID。<br><br>在卡片环境可通过 `getWidgetInstanceId` 获取;在小程序页面等非卡片环境需要通过传参或通信传递。|
|
|
57
64
|
|
|
58
65
|
## 返回值
|
|
59
66
|
|
|
@@ -62,26 +69,36 @@ await dispatchActionDirective({
|
|
|
62
69
|
<a id="expiredwidget"></a>
|
|
63
70
|
### expiredWidget()
|
|
64
71
|
|
|
65
|
-
更新过期的 widget
|
|
72
|
+
更新过期的 widget 为固定卡片。
|
|
66
73
|
|
|
67
74
|
## 代码示例
|
|
68
75
|
|
|
69
76
|
```ts
|
|
77
|
+
import { expiredWidget } from '@doubao-apps/framework/api';
|
|
78
|
+
import { getWidgetInstanceId } from '@doubao-apps/framework';
|
|
79
|
+
|
|
70
80
|
expiredWidget({
|
|
71
|
-
widgetInstanceId:
|
|
81
|
+
widgetInstanceId: getWidgetInstanceId(),
|
|
72
82
|
url: '${pageId}?key=value'
|
|
73
83
|
});
|
|
74
84
|
```
|
|
75
85
|
|
|
86
|
+
## 注意事项
|
|
87
|
+
|
|
88
|
+
用于将状态已经过期的 widget 实例转换为固定卡片,用户点击后可跳转到指定页面。
|
|
89
|
+
|
|
90
|
+
`getWidgetInstanceId` 仅在卡片环境中有效,在小程序页面中会返回 `undefined`。如果需要在页面中调用,
|
|
91
|
+
请在 `navigateTo` 时通过参数传递卡片实例 ID。
|
|
92
|
+
|
|
76
93
|
## 入参
|
|
77
94
|
|
|
78
95
|
|参数名|类型|必填|说明|
|
|
79
96
|
|---|---|---|---|
|
|
80
97
|
|detailText|`string`|否|点击失效卡要跳转的页面 detailText|
|
|
81
|
-
|schema|`string`|否|点击失效卡要跳转的页面 schema,格式与 navigateTo 的 url
|
|
98
|
+
|schema|`string`|否|点击失效卡要跳转的页面 schema,格式与 navigateTo 的 url 参数一致。<br><br>**已废弃**:使用 url 字段替代 schema 字段,后续版本将移除 schema 字段,请尽快迁移到 url 字段|
|
|
82
99
|
|title|`string`|否|点击失效卡要跳转的页面 title|
|
|
83
|
-
|url|`string`|否|点击失效卡要跳转的页面
|
|
84
|
-
|widgetInstanceId|`string`|是|卡片实例 ID
|
|
100
|
+
|url|`string`|否|点击失效卡要跳转的页面 URL 或 sslocal schema。小程序页面 URL 格式与 navigateTo 的 url 参数一致|
|
|
101
|
+
|widgetInstanceId|`string`|是|卡片实例 ID。<br><br>在卡片环境可通过 `getWidgetInstanceId` 获取;在小程序页面等非卡片环境需要通过传参或通信传递。|
|
|
85
102
|
|
|
86
103
|
## 返回值
|
|
87
104
|
|
|
@@ -194,6 +211,10 @@ await setAdditionalContext({
|
|
|
194
211
|
});
|
|
195
212
|
```
|
|
196
213
|
|
|
214
|
+
## 注意事项
|
|
215
|
+
|
|
216
|
+
设置全局上下文。
|
|
217
|
+
|
|
197
218
|
## 入参
|
|
198
219
|
|
|
199
220
|
|参数名|类型|必填|说明|
|
|
@@ -231,6 +252,11 @@ const result = await createTask({
|
|
|
231
252
|
console.log(result.taskId, result.token, result.expiresIn);
|
|
232
253
|
```
|
|
233
254
|
|
|
255
|
+
## 注意事项
|
|
256
|
+
|
|
257
|
+
创建任务时需要传入开发者侧唯一任务标识、任务模板、任务详情和任务类型。开发者侧唯一任务标识
|
|
258
|
+
可用于幂等创建和后续业务关联。远端任务创建成功后,返回的 taskId 可用于查询或更新任务。
|
|
259
|
+
|
|
234
260
|
## 入参
|
|
235
261
|
|
|
236
262
|
|参数名|类型|必填|说明|
|
|
@@ -294,6 +320,11 @@ const result = await updateTask({
|
|
|
294
320
|
console.log(result.taskId, result.nextToken, result.expiresIn);
|
|
295
321
|
```
|
|
296
322
|
|
|
323
|
+
## 注意事项
|
|
324
|
+
|
|
325
|
+
更新任务时至少传入 taskStatus 或 taskDetail 中的一个。更新远端任务成功后,旧 token 会失效,
|
|
326
|
+
如返回 nextToken,后续需要使用新的 token 继续更新远端任务。
|
|
327
|
+
|
|
297
328
|
## 入参
|
|
298
329
|
|
|
299
330
|
|参数名|类型|必填|说明|
|
|
@@ -348,6 +379,10 @@ if (task.taskStatus === 'running') {
|
|
|
348
379
|
}
|
|
349
380
|
```
|
|
350
381
|
|
|
382
|
+
## 注意事项
|
|
383
|
+
|
|
384
|
+
根据任务 ID 查询任务的模板、详情、状态和类型。若返回 token,可在后续远端任务更新中继续使用。
|
|
385
|
+
|
|
351
386
|
## 入参
|
|
352
387
|
|
|
353
388
|
|参数名|类型|必填|说明|
|
|
@@ -376,7 +411,7 @@ if (task.taskStatus === 'running') {
|
|
|
376
411
|
<a id="updatemodelcontext"></a>
|
|
377
412
|
### updateModelContext()
|
|
378
413
|
|
|
379
|
-
向 Agent
|
|
414
|
+
向 Agent 捐赠上下文。
|
|
380
415
|
|
|
381
416
|
## 代码示例
|
|
382
417
|
|
|
@@ -390,17 +425,22 @@ await updateModelContext({
|
|
|
390
425
|
});
|
|
391
426
|
```
|
|
392
427
|
|
|
428
|
+
## 注意事项
|
|
429
|
+
|
|
430
|
+
`taskId` 可以为空,此时客户端会尝试使用 `entityId` 填充;`entityId` 可以为空,
|
|
431
|
+
此时如果处于卡片环境,客户端会尝试使用卡片的 `entityId` 填充。
|
|
432
|
+
|
|
393
433
|
## 入参
|
|
394
434
|
|
|
395
435
|
|参数名|类型|必填|说明|
|
|
396
436
|
|---|---|---|---|
|
|
397
437
|
|content|`string`|是|上下文内容,格式无约束,可以与 MCP 服务下发的上下文格式保持一致|
|
|
398
|
-
|entityId|`string`|否|上下文所属的
|
|
399
|
-
|taskId|`string`|否|上下文所属任务 ID
|
|
438
|
+
|entityId|`string`|否|上下文所属的 entityId,业务侧管理。为空且处于卡片环境时,客户端会尝试使用卡片的 entityId 填充|
|
|
439
|
+
|taskId|`string`|否|上下文所属任务 ID,业务侧定义。为空时客户端会尝试使用 entityId 填充|
|
|
400
440
|
|
|
401
441
|
## 返回值
|
|
402
442
|
|
|
403
|
-
|
|
443
|
+
返回一个 Promise,在上下文成功捐赠时解析。
|
|
404
444
|
|
|
405
445
|
<a id="updatewidget"></a>
|
|
406
446
|
### updateWidget()
|
|
@@ -429,3 +469,93 @@ await updateWidget({
|
|
|
429
469
|
## 返回值
|
|
430
470
|
|
|
431
471
|
返回 `Promise<object>`。
|
|
472
|
+
|
|
473
|
+
## 相关类型
|
|
474
|
+
|
|
475
|
+
<a id="openappstatus"></a>
|
|
476
|
+
### OpenAppStatus
|
|
477
|
+
|
|
478
|
+
#### Type
|
|
479
|
+
|
|
480
|
+
`'deep_link' | 'market' | 'browser'`
|
|
481
|
+
|
|
482
|
+
<a id="tasktype"></a>
|
|
483
|
+
### TaskType
|
|
484
|
+
|
|
485
|
+
任务类型。 local 表示本地任务,remote 表示远端任务。
|
|
486
|
+
|
|
487
|
+
#### Type
|
|
488
|
+
|
|
489
|
+
`'local' | 'remote'`
|
|
490
|
+
|
|
491
|
+
<a id="taskdisplaydata"></a>
|
|
492
|
+
### TaskDisplayData
|
|
493
|
+
|
|
494
|
+
任务展示数据。
|
|
495
|
+
|
|
496
|
+
#### Properties
|
|
497
|
+
|
|
498
|
+
• **title**: `string` - 任务标题
|
|
499
|
+
• **sub_title?**: `string` - 任务副标题
|
|
500
|
+
|
|
501
|
+
<a id="taskactionparams"></a>
|
|
502
|
+
### TaskActionParams
|
|
503
|
+
|
|
504
|
+
任务操作参数。
|
|
505
|
+
|
|
506
|
+
#### Properties
|
|
507
|
+
|
|
508
|
+
• **action_key?**: `string` - 操作标识
|
|
509
|
+
• **page_param?**: `string` - 页面参数
|
|
510
|
+
|
|
511
|
+
<a id="jumpschemadata"></a>
|
|
512
|
+
### JumpSchemaData
|
|
513
|
+
|
|
514
|
+
点击任务跳转的页面参数。
|
|
515
|
+
|
|
516
|
+
#### Properties
|
|
517
|
+
|
|
518
|
+
• **path?**: `string` - 跳转页面
|
|
519
|
+
• **query?**: `string` - 页面参数,小程序内消费时会自动 base64 url encode,需要 decode
|
|
520
|
+
|
|
521
|
+
<a id="taskprogressdata"></a>
|
|
522
|
+
### TaskProgressData
|
|
523
|
+
|
|
524
|
+
任务进度数据。
|
|
525
|
+
|
|
526
|
+
#### Properties
|
|
527
|
+
|
|
528
|
+
• **progress**: `number` - 任务进度值,如百分比 0-100
|
|
529
|
+
• **progress_text?**: `string` - 进度描述文本,如"正在处理中"
|
|
530
|
+
• **remaining_seconds?**: `number` - 预估剩余时间,单位:秒
|
|
531
|
+
|
|
532
|
+
<a id="remotenormalv1detail"></a>
|
|
533
|
+
### RemoteNormalV1Detail
|
|
534
|
+
|
|
535
|
+
remote_normal_v1 模板对应的数据。
|
|
536
|
+
|
|
537
|
+
#### Properties
|
|
538
|
+
|
|
539
|
+
• **expire_in_sec**: `number` - 任务过期时间,单位:秒。任务创建后经过该时间将自动过期
|
|
540
|
+
• **display_data**: `TaskDisplayData` - 任务展示数据
|
|
541
|
+
• **jump_page_data?**: `JumpSchemaData` - 点击任务跳转的页面参数
|
|
542
|
+
• **remove_data?**: `TaskActionParams` - 移除任务时的操作参数
|
|
543
|
+
• **progress_data?**: `TaskProgressData` - 任务进度数据
|
|
544
|
+
|
|
545
|
+
<a id="taskdetail"></a>
|
|
546
|
+
### TaskDetail
|
|
547
|
+
|
|
548
|
+
任务详情。传入对象时会在调用 native 前自动 JSON.stringify。
|
|
549
|
+
|
|
550
|
+
#### Type
|
|
551
|
+
|
|
552
|
+
`string | RemoteNormalV1Detail`
|
|
553
|
+
|
|
554
|
+
<a id="taskstatus"></a>
|
|
555
|
+
### TaskStatus
|
|
556
|
+
|
|
557
|
+
任务状态。 running 表示任务运行中,completed 表示任务已完成。
|
|
558
|
+
|
|
559
|
+
#### Type
|
|
560
|
+
|
|
561
|
+
`'running' | 'completed'`
|
|
@@ -108,3 +108,14 @@ await postLoginResult({
|
|
|
108
108
|
## 返回值
|
|
109
109
|
|
|
110
110
|
返回回传完成的 Promise。
|
|
111
|
+
|
|
112
|
+
## 相关类型
|
|
113
|
+
|
|
114
|
+
<a id="logintype"></a>
|
|
115
|
+
### LoginType
|
|
116
|
+
|
|
117
|
+
Widget 登录类型。 - 0: 隐私协议登录 - 1: 仅登录 - 2: 先登录再隐私协议,两次弹窗 - 3: 登录和隐私协议合并,一次弹窗。
|
|
118
|
+
|
|
119
|
+
#### Type
|
|
120
|
+
|
|
121
|
+
`0 | 1 | 2 | 3`
|