Skip to content

Agora Meeting 业务服务

srs888001 edited this page Jun 22, 2020 · 6 revisions

Read this article in another language: English

概览

声网为后端开发能力不够的开发者提供 Agora Meeting 业务服务,实现会议、主持人和与会人的状态管理,具体功能如下:

  • 创建会议室
  • 生成及更新 RTC、RTM 白板 Token
  • 管理主持及与会人列表
  • 开关主持人和参会人的音视频
  • 管理房间禁言状态及会议控制
  • 共享屏幕
  • 操作白板
  • 移交主持人
  • 会议室内人员进出通知、人数统计
  • 即时聊天
  • 关闭会议室

你可直接使用 Agora Meeting 业务服务,并配合 Agora RTC SDK、Agora RTM SDK 和第三方 Netless 白板 SDK,快速搭建在线互动会议场景。

前提准备

在接入 Agora Meeting 业务服务之前,你需要在第三方白板 Netless 控制台创建账号,获取白板 Token,然后参考以下方式在你的客户端代码中部署一个生成白板 Token 的服务。

Request GET {{tokenServiceUrl}}?channelName={channelName}

入参 类型 说明
channelName String 频道名

Response

Content-Type: application/json;charset=UTF-8
{
   "msg": "Success",
   "code": 0,
   "data": {

       "boardId": "",
       "boardToken": ""

   }
}

快速上手 Agora Meeting 业务服务

进入房间

调用 entry room 方法加入房间。

POST /conf/v1/apps/{appId}/room/entry

关注以下参数:

入参 说明
appId Agora 为 App 开发者签发的 App ID
roomName 房间名,用于房间内显示。
roomUuid 你的会议系统中的唯一房间标识。传入相同 roomUuid 的用户会分配到同一个房间。
userName 用户名,用于房间内显示。
userUuid 你的用户系统中的唯一用户标识。使用相同 userUuid 会被认为是同一个用户。
password 会议室密码,为选填。
enableVideo 是否打开摄像头,默认 0,表示打开。
enableAudio 是否打开麦克风,默认 0,表示打开。
出参 说明
roomId 房间 ID,房间的唯一标识。
userToken 用户 Token,用户在该房间内的身份凭证,后续在房间内的操作都需要传入此凭证。

初始化房间

调用 get room info 方法获取房间信息(房间名、房间类型、白板 ID 和白板 Token、会议状态、房间内在线人数、连麦用户列表)和当前用户信息(用户名、用户角色、RTC Token、RTM Token、Mute 状态)。

客户端可以通过这些信息初始化房间。

GET /conf/v1/apps/{appId}/room/{roomId}

关注以下参数:

入参 说明
appId Agora 为 App 开发者签发的 App ID
roomId 房间 ID,房间的唯一标识,由 entry room 方法返回。
token 用户 Token,用户在该房间内的身份凭证,由 entry room 方法 response 中的 userToken 返回。
出参 说明
room 当前房间信息,包括房间名、房间类型、会议状态、在线人数等。此处会返回进房间时传的 roomUuid,如需进行定制化开发,你可以将此关联到你自己的会议系统。
user 当前用户的信息,包括用户名、用户角色、RTC Token、RTM Token、可否音视频聊天等。此处会返回进房间时传的 userUuid,如需进行定制化开发,你可以将此关联到你自己的用户系统。

会议中

在会议过程中,主持人可以调用 change room infochange user info 方法更新房间信息(是否全部禁言、是否锁定白板和会议状态)和用户信息(能否文字聊天、能否发视频、能否发语音、能否操作白板等)。

与会人可以调用 change user info 方法更新自己的用户信息。

信息修改完成后,后台会通过 RTM 频道消息广播给房间内其他用户。

change room info

POST /conf/v1/apps/{appId}/room/{roomId}

需要传入 appIdroomIdtoken

change user info

POST /conf/v1/apps/{appId}/room/{roomId}/user/{userId}

需要传入 appIdroomIdtoken,并指定 userId

Clone this wiki locally