@senguoyun/dsh-arkme 0.1.62 → 0.1.63
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/assets/desktop_call/manifest.json +2 -1
- package/docs/desktop-call-invitations.md +46 -0
- package/lib/client.js +2405 -1511
- package/lib/client.js.map +1 -1
- package/lib/index.js +4 -1
- package/lib/persistent-extension.js +1 -1
- package/lib/{persistent-runtime-DUrok1U3.js → persistent-runtime-CBKy5v5l.js} +73 -9
- package/lib/types/arkme-service.d.ts +5 -0
- package/lib/types/arkme-service.d.ts.map +1 -1
- package/lib/types/client/ArkmeCallInviteDialog.d.ts +5 -0
- package/lib/types/client/ArkmeCallInviteDialog.d.ts.map +1 -0
- package/lib/types/client/ArkmeCallSurface.d.ts.map +1 -1
- package/lib/types/client/ArkmeOutgoingCallHost.d.ts.map +1 -1
- package/lib/types/client/outgoing-call-bridge.d.ts +1 -0
- package/lib/types/client/outgoing-call-bridge.d.ts.map +1 -1
- package/lib/types/client/outgoing-call-runtime.d.ts +16 -1
- package/lib/types/client/outgoing-call-runtime.d.ts.map +1 -1
- package/lib/types/client/outgoing-call-ui-controller.d.ts +3 -0
- package/lib/types/client/outgoing-call-ui-controller.d.ts.map +1 -1
- package/lib/types/client/use-resizable-call-browser.d.ts +13 -0
- package/lib/types/client/use-resizable-call-browser.d.ts.map +1 -0
- package/lib/types/host-api.d.ts.map +1 -1
- package/lib/types/outgoing-call-contract.d.ts +12 -0
- package/lib/types/outgoing-call-contract.d.ts.map +1 -1
- package/lib/types/services/call-history-service.d.ts.map +1 -1
- package/lib/types/services/outgoing-call-service.d.ts +6 -1
- package/lib/types/services/outgoing-call-service.d.ts.map +1 -1
- package/lib/types/types.d.ts +1 -1
- package/lib/types/types.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -6,5 +6,6 @@
|
|
|
6
6
|
"upstreamBundleSha256": "6ff59d3eb9ce4d7556ba4054bac0df22ae279a7bccc56ccbf5712b6f475c95ce",
|
|
7
7
|
"bundleSha256": "839e0376d8916472d99fe4b0cbcc39b165c3dc96ac00b31b15fb3910bcdf6917",
|
|
8
8
|
"iconSha256": "583d7dbd34069c5b50ca294a071637bbd3beed913cecdb91a202c001004eed45",
|
|
9
|
-
"outgoingOnly":
|
|
9
|
+
"outgoingOnly": false,
|
|
10
|
+
"supportsIncoming": true
|
|
10
11
|
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# 桌面通话邀请链接
|
|
2
|
+
|
|
3
|
+
桌面「发起通话」联系人选择框现在包含「邀请他人向我发起通话」入口。选择语音或视频后,生成移动端同一服务签发的回呼链接;收到链接的人可通过已有通话落地页向分享者发起呼叫。
|
|
4
|
+
|
|
5
|
+
## 行为
|
|
6
|
+
|
|
7
|
+
- 生成前先确认桌面通话引擎已登录并可等待来电。
|
|
8
|
+
- 生成成功自动复制链接,展示通话类型和失效时间。复制失败时保留可选择的完整链接,并提供重试按钮。
|
|
9
|
+
- 支持系统分享;无系统分享能力时复制邀请文案和链接。取消系统分享不会被报告为错误。
|
|
10
|
+
- 服务端链接有效期为 30 分钟,可重复使用。过期后停止复制和分享入口,允许重新生成。
|
|
11
|
+
- 关闭邀请弹窗后继续等待来电。来电沿用已打包通话组件的接听、拒绝和挂断界面;结束后恢复等待。
|
|
12
|
+
- 主动呼叫时暂停等待引擎,通话结束后恢复。来电和主动呼叫共用账号通话占用检查。
|
|
13
|
+
- 退出或切换账号会注销引擎、清除待处理凭据,并丢弃旧账号的异步结果。
|
|
14
|
+
|
|
15
|
+
## 接口和边界
|
|
16
|
+
|
|
17
|
+
- 桌面新增 `calls.invite.create`,服务端调用 `POST /api/v1/trtc/share-call-link/create`,参数 `call_media_type` 为语音 `0` / 视频 `1`。
|
|
18
|
+
- `calls.receiver.prepare` 仅在桌面受保护的 Host API 中取得当前账号通话凭据,不创建通话房间,也不预先开启摄像头或麦克风。
|
|
19
|
+
- `calls.receiver.claim` 复用现有通话占用、心跳和释放逻辑。
|
|
20
|
+
- 使用服务端返回的 `call_url` 与配置的 WebRTC origin 生成绝对链接;校验 origin、路径、token、账号、媒体类型和有效期。
|
|
21
|
+
- 不修改移动端、后端和链接落地页;通话 SDK bundle 内容及校验和保持原样,使用其已有的来电支持。主动呼叫仍使用 `outgoingOnly: true`,等待来电使用 `outgoingOnly: false`。
|
|
22
|
+
|
|
23
|
+
## 本次验证
|
|
24
|
+
|
|
25
|
+
2026-09-18:
|
|
26
|
+
|
|
27
|
+
- 15 个相关测试文件、260 项测试全部通过。覆盖邀请接口、失效和异常返回、分享交互、来电生命周期、账号切换、重连、原有呼出、联系人选择、摘要模板、私聊跳转、栏宽保存、引导流程、Host API 和通话资源。
|
|
28
|
+
- TypeScript 类型检查、完整插件构建、通话资源校验和及 `git diff --check` 通过。
|
|
29
|
+
- 使用真实 React 邀请组件和模拟服务响应检查浅色/深色布局、视频类型选择、生成结果、自动复制成功提示和关闭操作;这些检查不代表真实邀请链路已完成联机验收。
|
|
30
|
+
- 已登录的真实 DSH Web 中验证通话列表摘要、鼠标拖宽、刷新保留宽度、从通话详情进入对应已有私聊,以及联系人弹窗覆盖整个通话板块。
|
|
31
|
+
|
|
32
|
+
## 联机验收仍需执行
|
|
33
|
+
|
|
34
|
+
本地验收使用独立 DSH Web 预览。尚未向其他账号发送真实邀请或呼叫,以下双端验证仍需执行:
|
|
35
|
+
|
|
36
|
+
1. 安装候选版本并登录账号 A,分别生成语音和视频邀请链接。
|
|
37
|
+
2. 账号 B 在手机或浏览器打开链接并呼叫 A,确认桌面来电、接听、双方声音/画面、拒绝和挂断。
|
|
38
|
+
3. 关闭邀请弹窗、切换到其他桌面页面后再呼叫;同一链接在有效期内重复呼叫。
|
|
39
|
+
4. 检查原有主动呼叫、30 分钟后链接失效,以及退出/切换账号后不再显示旧账号来电。
|
|
40
|
+
|
|
41
|
+
## 通话记录和私聊入口补齐
|
|
42
|
+
|
|
43
|
+
- 通话列表兼容移动端摘要模板,按当前用户、联系人备注及参与者名称解析,不为每条记录额外请求详情。完成的摘要最多展示三行,生成中和失败状态各展示一行提示。
|
|
44
|
+
- 第二栏与详情之间支持拖动分隔线,沿用对话栏的绿色交互提示;宽度保存在当前 Web 的本地偏好中。支持左右方向键、Home/End,以及双击恢复默认宽度。窗口临时缩小时保留原偏好。
|
|
45
|
+
- 每条真实通话详情顶部增加「发起私聊」,按对方用户 ID 打开或复用会话;同名联系人不会误匹配。打开过程防重复点击,离开详情或切换账号后丢弃旧请求结果,失败可重试。
|
|
46
|
+
- 联系人选择弹窗使用有边框的搜索框、固定搜索和邀请入口、独立滚动联系人列表。弹窗浮层挂在通话板块根部,统一覆盖通话记录、分隔线和详情,以两栏整体居中;左侧全局导航不纳入遮罩。
|