声网名词解释
声网集成相关
关键词:
App ID
开发者在我们官网注册后, 可以创建多个项目, 每一个项目对应的唯一标识就是 App ID. 如果有人非法获取了你的 App ID, 他将可以在 Agora 提供的 SDK 中使用你的 App ID, 如果他知道你的频道名字, 甚至有可能干扰你正常的通话.
所以建议仅在测试阶段或对安全性要求不高的场景里使用 App ID.
使用不同 App ID 的应用程序是不能互通的. 如果已在通话中, 用户必须调用 leaveChannel() 退出当前通话, 才能进入下一个频道
Dynamic Key
当项目准备正式上线运营, 建议开发者采用 Dynamic Key, 这是一个更为安全的用户身份验证方案. 针对不同的服务, Dynamic Key 有不同的名称:
- Channel Key 用于加入频道;
- Signaling Key 用于登录信令系统;
App Certificate
将您的 App Certificate 保存在服务器端, 且对任何客户端均不可见. 通常 App Certificate 在启用一小时后生效.
当项目的 App Certificate 被启用后, 您必须使用 Dynamic Key. 例如: 在启用 App Certificate 前, 您可以使用 App ID 加入频道. 但启用了 App Certificate 后, 您必须使用 Channel Key 加入频道.
channel
标识通话的频道名称, 长度在 64 字节以内的字符串
可以理解为房间名
要进行语音或者视频, 不同的用户都必须在同一个 channel 中
channel key
安全要求不高: 将值设为 null 安全要求高: 将值设置为 Channel Key. 如果你已经启用了 App Certificate, 请务必使用 Channel Key.
UID
用户位移表示
同一个频道里不能出现两个相同的 UID. 如果你的 App 支持多设备同时登录, 即同一个用户账号可以在不同的设备上同时登录 (例如微信支持在 PC 端和移动端同时登录), 请保证传入的 UID 不相同. 例如你之前都是用同一个用户标识作为 UID, 建议从现在开始加上设备 ID, 以保证传入的 UID 不相同 . 如果你的 App 不支持多设备同时登录, 例如在电脑上登录时, 手机上会自动退出, 这种情况下就不需要在 UID 上添加设备 ID.
信令 和 通信
频道, 可以理解成通讯的房间, 信令和通信中的频道是一个意思, 只不过, 信令是确认进入房间, 通信是在房间内聊天.
https://dev.agora.io/cn/question/1780
群组
通话统计
App 的用户之间要建立和发起一个呼叫, 整个流程是怎样的?
以 A 呼叫 B 为例, 一般呼叫流程如下:
A 向信令服务器发起呼叫请求.
信令服务器检查 B 是否在线:
- 如不在线, 向 A 返回 B 不在线错误.
- 如在线, 信令服务器生成频道名, 返回给 A;并向 B 投递呼叫信令.
- A 收到信令服务器返回的频道名, 准备加入语音频道. 此时为加快进频道速度, 可以提前进入频道待命:
- A 调用 muteLocalAudioStream(true) 和 muteLocalVideoStream(true)(如有视频功能)禁止发送音视频数据.
- 调用 joinChannel 进入频道.
- B 收到信令服务器投递过来的 A 的呼叫请求.
- B 响铃. 为加快进频道速度, 可以提交进入频道待命.
- B 调用 muteLocalAudioStream(true) 和 muteLocalVideoStream(true)(如有视频功能)禁止发送音视频数据.
- A 调用 joinChannel 进入频道:
- 如 B 拒绝请求:
- B 调用 leaveChannel 退出频道
- B 向信令服务器返回拒绝应答
- 信令服务器向 A 返回 B 拒绝应答信令
- A 调用 leaveChannel 退出频道
- 如 B 接受请求:
- B 调用 muteLocalAudioStream(false) 和 muteLocalVideoStream(false) 开始发送音视频数据
- B 向信令服务器返回接受应答信令
- 调用 muteLocalAudioStream(false) 和 muteLocalVideoStream(false) 开始发送音视频数据
- B 调用 muteLocalAudioStream(false) 和 muteLocalVideoStream(false) 开始发送音视频数据
- 如 B 拒绝请求:
呼叫失败或者成功, 客户端需要调用 fkh 接口写日志
客户端呼叫 货主 (TMS/货主app) 需要发起 2 个呼叫, 当一方接通时, 回调中关闭另一个呼叫4