前提: 工作登录和刷新功能
1. 收集有效的登录凭据。
2. 使用 /rtc/createCall 端点设置后调用并设置请求正文,如下所述。
带注释的请求正文 JSON:
{ “callTitle”: “测试调用”, \\调用
名称 “callReason”: “STANDARD”, \\Either Standard or SERVICE_REQUEST
“callType”: “SFU”, \\ 定义使用的调用技术,例如。用于 1:1 呼叫的 MESH 或用于多重呼叫
的 SFU “invitedContacts”: [ \\ 多个 CallLogContact 对象
的列表 {
“displayName”: “Tester”,
“domain”: “ubimax”,
“email”: “[email protected]”,
“phoneNumber”: “”,
“userDbId”: 8, \\用户的数据库 ID,联系人也链接了该 ID。
“userId”: “tester” \\用户的用户 ID ID,联系人也链接了该用户 ID。
} ],
“invitedTeams”: [], \\ 留空或添加团队对象以邀请整个团队。
“joinAnonymousAllowed”: true, \\ 设置为 true 以允许匿名加入 else false
“informOthersDirectly”: true, \\ 设置为 true 以触发邀请联系人屏幕上
的呼叫通知弹出窗口 “creatorUser”: 12, \\ 用户的数据库 ID。将它留空或设置为代表某人创建呼叫,充当代理。
带注释的响应正文 JSON(CallLog 对象):
注意: 为简洁起见,省略了某些字段。
{ “id”: 842, \\数据库
生成的增量 ID “callId”: “e76e1d8a-8267-4bd4-ba5c-00ab76743e74”, \\UUID 由应用程序
生成 “anonymousJoinAllow”: true, \\是否允许
匿名加入 “callStatus”: “Ended”, \\可能的值: Planned、Started 或 Ended
“creatorContact”: { \\ CallLogContact 对象。引用生成调用的用户或创建调用时指定的“creatorUser”。
......
} “invitedContacts”: [ \\ 多个 CallLogContact 对象
的列表 {
...
} ]
“callEvents”: [ \\ 多个调用事件
列表 {
“id”: 234, \\数据库
生成的增量 id “type”: “Created”, \\可能的值: Created, Join, Leave, between others.
“contact”: { \\ CallLogContact 对象。引用与当前事件相关的用户。
......
} }
]
3. 服务器通过 WebSocket、邮件或短信(如果在 中 CallLogContactObject设置)通知受邀联系人。
前提: 工作登录和刷新功能
1. 收集有效的登录凭据。
2. 使用/rtc/getCallLogById?callId=value从上述端点的响应createCall中获取的callId端点设置 get 调用。
带注释的响应正文 JSON:
与 createCall 终结点的响应相同。例如,对于由 callertest1 发起的对 callertest2 的持续网格调用,事件如下所示:
“callEvents”: [
{
“id”: 697,
“type”: “已创建”,
“contact”: {
“id”: 1,
“userId”: “callertest1”,
“userDbId”: 8
}
},{ “id”: 698,
“type”: “Join”,
“contact”: {
“id”: 1,
“userId”: “callertest1”,
“userDbId”: 8
}
},
{
“id”:
699,
“type”: “Join”,
“contact”: {
“id”: 2,
“userId”: “callertest2”,
“userDbId”: 9
},
} ],
使用 . RtcControllerApi突出 createCallForContacts 的是创建呼叫并 getCallLogById 了解呼叫的状态。
若要创建调用,请使用 creatorUser 前面提到的属性。将其设置为智能眼镜用户, userDbId 并将专家用户和连接器用户添加到阵列中 invitedContacts 。因此,连接器最终表现得像一个代理。请记住,只有在专家用户接听电话后,才会呼叫智能眼镜用户。
Node.js示例调用(精简,可能需要通过登录名收集的更多安全标头和 cookie)。
fetch(“https://<serverurl>/rtc/createCall”, {
“headers”: {
“authorization”: “持有者<令牌>”,
},
“body”: “{\”callType\“:\”SFU\“,\”invitedContacts\“:[{\”userId\“:\”tester\“,\”userDbId\“:8,\”email\“:\”[email protected]\“,\”domain\“:\“ubimax\”,\“displayName\”:\“Tester\”,\“phoneNumber\”:null}],\“invitedTeams\”:[],\“joinAnonymousAllowed\”:false,\“callTitle\”:\“New Call\”,\“plannedDateTime\”:null,\“callReason\”:\“STANDARD\”}“,
”method“: ”POST“,
”mode“: ”cors“
});