app接口
使用Socket 前,需先打开设备的http api的入口。
使用命令需要按照顺序一步一步执行,不能直接停止投屏。
会中投屏和会外投屏使用的参数不同,请注意区分。
请注意1~6 在定制版本支持。
如果使用socket 协议对接,需要同时开启 TCP/IP安全控制 及 HTTPS API 两个开关:
1. 开启rtsp
基本信息:
Method: POST
Path: /rtsp/start-service
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Body
名称
类型
取值范围
是否必须
参数说明
返回值
名称
类型
取值范围
备注
备注
请求示例
POST /rtsp/start-service
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"status":900200,
"data": true,
"message": "success"
}
中控指令
rtsp set start-service
2. 关闭rtsp
基本信息:
Method: POST
Path: /rtsp/stop-service
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Body
名称
类型
取值范围
是否必须
参数说明
返回值
名称
类型
取值范围
备注
备注
请求示例
POST /rtsp/stop-service
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"status":900200,
"data": true,
"message": "success"
}
中控指令
rtsp set stop-service
3. 设置会议中所有人那路音频流包含本地声音
基本信息:
Method: POST
Path: /rtsp/local-voice-on
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Body
名称
类型
取值范围
是否必须
参数说明
返回值
名称
类型
取值范围
备注
备注
请求示例
POST /rtsp/local-voice-on
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"status":900200,
"data": true,
"message": "success"
}
中控指令
rtsp set local-voice-on
4. 设置会议中所有人那路音频流不包含本地声音
基本信息:
Method: POST
Path: /rtsp/local-voice-off
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Body
名称
类型
取值范围
是否必须
参数说明
返回值
名称
类型
取值范围
备注
备注
请求示例
POST /rtsp/local-voice-off
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"status":900200,
"data": true,
"message": "success"
}
中控指令
rtsp set local-voice-off
5. 获取当前会议中所有人的个人音频流
基本信息:
Method: POST
Path: /rtsp/audio-url
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Body
名称
类型
取值范围
是否必须
参数说明
返回值
名称
类型
取值范围
备注
address
字符串
无
rtsp个人音频流地址
name
字符串
无
对应人的名字
备注
请求示例
POST /rtsp/audio-url
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"status":900200,
"data": [
{"address":"rtsp_url1", "name":""},
{"address":"rtsp_url2", "name":""},
],
"message": "success"
}
中控指令
rtsp set audio-url
6. 获取音视频混合流
基本信息:
Method: POST
Path: /rtsp/media-url
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Body
名称
类型
取值范围
是否必须
参数说明
返回值
名称
类型
取值范围
备注
备注
请求示例
POST /rtsp/media-url
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"status":900200,
"data": ["rtsp_url1"],
"message": "success"
}
中控指令
rtsp set media-url
7. 获取当前成员发言者
基本信息:
Method: GET
Path: /centralcontrol/meeting/speakers?app=ymrooms
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
speakers
speaker []
是
发言者列表
speaker
名称
类型
是否必须
备注
speakerId
string
是
发言者id
speakerName
string
是
发言者名称
isMain
bool
是
是否为主摄像头的发言者
备注
请求示例
GET /centralcontrol/meeting/speakers?app=ymrooms
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data":
{"speakers\":[{\"isMain\":false,\"speakerId\":\"203\",\"speakerName\":\"被告-从流\"},{\"isMain\":true,\"speakerId\":\"200\",\"speakerName\":\"法官-主流-1\"}]}",
"message": "success",
"status": 900200
}
中控指令
meeting get incentive-speaker app:ymrooms
8. 切换语音激励成员
基本信息:
Method: POST
Path: /centralcontrol/meeting/incentive-speaker?app=ymrooms
支持机型
MeetingBoard 65/86,MeetingEye 500,Yealink RoomConnect,UVC40
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
speakerId
string
是
语音激励成员id
备注
请求示例
POST /centralcontrol/meeting/incentive-speaker?app=ymrooms
{
"speakerId": "203"
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": true,
"message": "success",
"status": 900200
}
中控指令
meeting set incentive-speaker app:ymrooms {speakerId:"203"}
9. 立即开会接口
基本信息:
Method: POST
Path: /centralcontrol/meeting/meeting-now?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
备注
请求示例
POST /centralcontrol/meeting/meeting-now?app=ymrooms
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": 0,
"message": "success",
"status": 900200
}
中控指令
meeting set meeting-now app:ymrooms
10. 加入会议接口
基本信息:
Method: POST
Path: /centralcontrol/meeting/join-conference?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
meetingNumber
string
是
会议号码
password
string
是
会议密码
备注
请求示例
POST /centralcontrol/meeting/join-conference?app=ymrooms
{
"meetingNumber": "100000" ,
"password" : "000000"
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": 0,
"message": "success",
"status": 900200
}
中控指令
meeting set join-conference app:ymrooms {"meetingNumber": "100000", "password" :"000000"}
11. 离开会议接口
基本信息:
Method: POST
Path: /centralcontrol/meeting/leave-conference?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
talkId
int
是
通话id,0默认挂断所有
备注
请求示例
POST /centralcontrol/meeting/leave-conference?app=ymrooms
{
"talkId": 0
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": 0,
"message": "success",
"status": 900200
}
中控指令
meeting set leave-conference app:ymrooms {"talkId": 0}
12. 结束会议接口
基本信息:
Method: POST
Path: /centralcontrol/meeting/finish-conference?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
talkId
int
是
通话id,0默认挂断所有
备注
请求示例
POST /centralcontrol/meeting/finish-conference?app=ymrooms
{
"talkId": 0
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": 0,
"message": "success",
"status": 900200
}
中控指令
meeting set finish-conference app:ymrooms {"talkId": 0}
13. P2P呼叫接口
基本信息:
Method: POST
Path: /centralcontrol/call/make-call?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
number
string
是
呼叫号码
备注
请求示例
POST /centralcontrol/call/make-call?app=ymrooms
{
"number": "10086"
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": 0,
"message": "success",
"status": 900200
}
中控指令
call set make-call app:ymrooms {"number": "10086"}
14. 挂断电话接口
基本信息:
Method: POST
Path: /centralcontrol/call/hangup?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
talkId
int
是
通话id,0默认挂断所有
备注
请求示例
POST /centralcontrol/call/hangup?app=ymrooms
{
"talkId": "0"
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": 0,
"message": "success",
"status": 900200
}
中控指令
call set hangup app:ymrooms {"talkId": "0"}
15. 多屏选看
获取会议通话列表
基本信息:
Method: GET
Path: /centralcontrol/meeting/list?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
返回数据
Body
名称
类型
是否必须
备注
meetingTalkInfo
meetingTalkInfo []
是
会议通话列表信息
meetingTalkInfo
名称
类型
是否必须
备注
talkId
int
是
会议通话id
meetingNumber
string
是
会议号
备注
请求示例
GET /centralcontrol/meeting/list?app=ymrooms
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": {
"meetingTalkInfo":[
{
"talkId:" 1,
"meetingNumber":"258369"
}
]
},
"message": "success",
"status": 900200
}
中控指令
meeting get list app:ymrooms
获取会议成员列表
基本信息:
Method: GET
Path: /centralcontrol/meeting/users?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
talkId
int
是
通话ID
返回数据
Body
名称
类型
是否必须
备注
users
user []
是
会议成员信息
user
名称
类型
是否必须
备注
userId
int
是
用户id
displayName
string
是
用户名称
备注
请求示例
GET /centralcontrol/meeting/users?app=ymrooms
{
talkId:1
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": {
"users":[
{
"userId:" 1,
"displayName":"258369"
}
]
},
"message": "success",
"status": 900200
}
中控指令
meeting get users app:ymrooms {talkId:1}
获取布局信息
基本信息:
Method: GET
Path: /centralcontrol/meeting/layouts?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
talkId
int
是
通话ID
返回参数
Body
名称
类型
是否必须
备注
layouts
layout []
是
布局信息
layout
名称
类型
是否必须
备注
screenIndex
int
是
屏幕id,0为主屏
type
string
是
speaker(演讲者模式)、gallery(画廊模式)、pip(画中画布局)、single(单方全屏)、发言人(incentive)、本地(local)和广播(broadcast)
users
int []
是
成用户ID
thumbnailSwitch
bool
是
是否显示缩列图开关状态
备注
请求示例
GET /centralcontrol/meeting/layouts?app=ymrooms
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
{
"data": {
"layouts":[
{
"screenIndex":0,
"type":"speaker",
"thumbnailSwitch": true,
"users":[1,2,3,4,5]
}
]
},
"message": "success",
"status": 900200
}
中控指令
meeting get layouts app:ymrooms
设置布局信息
基本信息:
Method: POST
Path: /centralcontrol/meeting/layouts?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
talkId
int
是
通话ID
layouts
layout []
是
布局信息
备注
请求示例
POST /centralcontrol/meeting/layouts?app=ymrooms
{
"talkId":1,
"layouts":[
{
"screenIndex":0,
"type":"speaker",
"thumbnailSwitch": true,
"users":[1,2,3,4,5]
}
]
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": true,
"message": "success",
"status": 900200
}
中控指令 meeting set layouts app:ymrooms {"talkId":1,"layouts":[{"screenIndex":1,"type":"speaker", "thumbnailSwitch": true, "users":[1,2,3,4,5],},{ "screenIndex":2,"type":"gallery","thumbnailSwitch": true,"users":[6,7,8]}]}
16. 投屏
获取通话状态
基本信息:
Method: GET
Path: /centralcontrol/call/state?app=ymrooms
请求参数:
Query
名称
是否必须
备注
app
是
应用app
返回数据
Body
名称
类型
是否必须
备注
callState
string
是
Idle(空闲)、Meeting(会议)、Phone(P2P通话)
备注
请求示例
GET /centralcontrol/call/state?app=ymrooms
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": {
"callState":"Idle"
},
"message": "success",
"status": 900200
}
中控指令
call get state app:ymrooms
当获取的通话状态为Idle时,控制投屏传入的app参数为castscreen,否则为ymrooms。
16.2. 获取当前接入的设备信息
基本信息:
Method: GET
Path: /centralcontrol/share/device-info?app=castscreen
请求参数:
Query
名称
是否必须
备注
app
是
应用app
返回数据
Body
名称
类型
是否必须
备注
deviceInfo
deviceInfo []
是
设备信息
deviceInfo
名称
类型
是否必须
备注
deviceName
string
是
设备名称
deviceId
string
是
设备ID,设备的唯一标识
备注
请求示例
GET /centralcontrol/share/device-info?app=castscreen
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": {
"deviceInfo":[
{
"deviceName:" "wpp30",
"deviceId":"38"
}
]
},
"message": "success",
"status": 900200
}
中控指令
share get device-info app:castscreen
16.3. 选择辅流设备
基本信息:
Method: POST
Path: /centralcontrol/share/device?app=castscreen
请求参数:
Query
名称
是否必须
备注
app
是
应用app
Body
名称
类型
是否必须
备注
deviceId
string
是
设备ID,设备的唯一标识
备注
请求示例
POST /centralcontrol/share/device?app=castscreen
{
"deviceId":"38"
}
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": true,
"message": "success",
"status": 900200
}
中控指令
share set device app:castscreen {"deviceId":"38"}
获取当前选择的辅流源设备信息
基本信息:
Method: GET
Path: /centralcontrol/share/device?app=castscreen
请求参数:
Query
名称
是否必须
备注
app
是
应用app
返回数据
Body
名称
类型
是否必须
备注
deviceId
string
是
设备ID
备注
请求示例
GET /centralcontrol/share/device?app=castscreen
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": {
"deviceId":"38"
},
"message": "success",
"status": 900200
}
中控指令
share get device app:castscreen
恢复投屏
基本信息:
Method: POST
Path: /centralcontrol/share/resume?app=castscreen
请求参数:
Query
名称
是否必须
备注
app
是
应用app
备注
请求示例
POST /centralcontrol/share/resume?app=castscreen
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": true,
"message": "success",
"status": 900200
}
中控指令
share set resume app:castscreen
暂停投屏
基本信息:
Method: POST
Path: /centralcontrol/share/pause?app=castscreen
请求参数:
Query
名称
是否必须
备注
app
是
应用app
备注
请求示例
POST /centralcontrol/share/pause?app=castscreen
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": true,
"message": "success",
"status": 900200
}
中控指令
share set pause app:castscreen
暂停所有投屏
基本信息:
Method: POST
Path: /centralcontrol/share/pause-all?app=castscreen
请求参数:
Query
名称
是否必须
备注
app
是
应用app
备注
请求示例
POST /centralcontrol/share/pause-all?app=castscreen
响应实例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"data": true,
"message": "success",
"status": 900200
}
中控指令
share set pause-all app:castscreen