join_mtg.js
12.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
/**
* @api {post} /3m/meeting/join_mtg.do 02.获取课堂地址
* @apiName joinMtg
* @apiGroup meeting
* @apiVersion 1.6.0
* @apiDescription 获取课堂地址, ,如果课堂不存在,先创建该课堂
*
* @apiParam {String} siteId 站点标识
* @apiParam {String} mtgKey 课堂的唯一标识。最大长度 64
* @apiParam {String} mtgTitle 课堂名称或者课堂主题,最大长度 32
* @apiParam {String} startTime 课堂的开始时间,作为课堂开始气泡提示的参考时间。格式为:YYYY-MM-DD HH:MM:SS
* @apiParam {String} endTime 课堂的结束时间,作为课堂结束气泡提示的参考时间。格式为:YYYY-MM-DD HH:MM:SS
* @apiParam {int} [duration] 持续时长
* @apiParam {int} [language=2] 客户端语言:1 英文, 2 中文
* @apiParam {String} userName 客户端显示的姓名,最大长度 32
* @apiParam {String} userId 英文或数字组成的字符串,最大长度 50。等于0时是匿名用户,可以允许多个用户同时存在
* @apiParam {int} userType 用户类型:1 主持人(所有权限) 2 主讲人(不能操作摄像头) 8 普通与会者 32 监课人员
* @apiParam {int} [meetingType=1] 1 1V1互动 支持一对一音视频互动 2 直播 适用于千人以上大课堂,不能进行音视频互动,支持H5网页观看 3 小班课 适用于小班授课
* @apiParam {String} hostPwd 主持人密码,密码长度 6 到 8 位,用于对普通人员申请主持人时的验证
* @apiParam {String} docID 文档唯一标识。多个文档标识用英文逗号分隔。文档标识通过查询文档列表接口获取
* @apiParam {String} mediaID 伴音唯一标识。多个标识用英文逗号分隔。标识通过查询伴音列表接口获取
* @apiParam {String} [backUrl] 课堂结束后的回调地址
* @apiParam {Long} timestamp 时间戳
* @apiParam {int} [docModule] 是否启用文档共享:1 启用,其它禁止。默认为站点默认值
* @apiParam {int} [screenModule] 是否启用屏幕共享:1 启用,其它禁止。仅当站点开启屏幕共享时有效
* @apiParam {int} [mediaModule] 是否启用媒体共享:1 启用,其它禁止。仅当站点开启媒体共享时有效
* @apiParam {int} [whiteboardModule] 是否启用白板:1 启用,其它禁止
* @apiParam {int} [recordModule] 是否启用录制:1 启用,其它禁止。仅当站点开启录制功能时有效
* @apiParam {int} [videoModule] 是否启用视频:1 启用,其它禁止。仅当站点开启视频功能时有效
* @apiParam {int} [h5Module] 是否启用 H5:1 启用,其它禁止。仅当站点开启 H5 功能时有效
* @apiParam {int} [autoRecord] 是否自动录制:1 是 0 否。默认为站点默认值
* @apiParam {int} [interaction] 是否参与音视频互动:1 是 0 否。默认为站点默认值
* @apiParam {int} [maxAudioChannels] 最大音频路数。如果不传或传的值大于站点配置,以站点配置为准。直播课堂只支持 1 路,1V1支持2路,小班课支持1,2,3,5路
* @apiParam {int} [maxVideoChannels] 最大视频路数。如果不传或传的值大于站点配置,以站点配置为准。直播课堂只支持 1 路,1V1支持2路,小班课支持1,2,3,5路
* @apiParam {int} [videoQuality=0] 视频画质设置:0 低,1 中,2 高,3 较高,4 最高
* @apiParam {String} authId MD5(key+siteId+mtgKey+userID+userType+timestamp), 其中 key 为与系统约定的加密 key
*
* @apiSuccess {int} errorCode
* 0:正常 <br/>
* 1:siteId 错误,站点不存在或已删除 <br/>
* 2:站点未到生效日期 <br/>
* 3: 站点过期 <br/>
* 4:课堂信息 mtgKey/mtgTitle/hostPwd 不能为空 <br/>
* 5:用户信息 userName/userId/userType 不能为空 <br/>
* 6:timestamp 超时 <br/>
* 7:authId 错误 <br/>
* 8:authId 不能重复使用 <br/>
* 9:课堂开始或结束时间格式错误 <br/>
* 10:报文格式错误 <br/>
* @apiSuccess {String} url 课堂地址
* @apiSuccess {String} param 地址请求参数,post 请求,参数名是 param
* @apiSuccess {String} meetingNumber 学点云系统生成的课堂号
* @apiSuccess {String} password 课堂密码
* @apiSuccess {Long} timestamp 时间戳
*
* @apiParamExample {xml} 请求示例
<?xml version="1.0" encoding="UTF-8"?>
<param>
<siteId>admin</siteId>
<timestamp>1476174725597</timestamp>
<authId>450d6357348e5c16a6ffb0069b9ae86f</authId>
<mtgKey>100012</mtgKey>
<mtgTitle>admintest</mtgTitle>
<startTime>2016-08-12 14:00:00</startTime>
<endTime>2017-08-12 14:30:00</endTime>
<language>1</language>
<userName>shanghai</userName>
<userId>2000012</userId>
<userType>8</userType>
<hostPwd>123456</hostPwd>
<meetingType>1</meetingType>
<isPublic>1</isPublic>
<docModule>0</docModule>
<screenModule>0</screenModule>
<mediaModule>0</mediaModule>
<whiteboardModule>0</whiteboardModule>
<recordModule>0</recordModule>
<videoModule>0</videoModule>
<h5Module>0</h5Module>
<autoRecord>0</autoRecord>
<interaction>0</interaction>
<maxAudioChannels>1</maxAudioChannels>
<maxVideoChannels>1</maxVideoChannels>
<videoQuality>1</videoQuality>
<docID>1,2,3</docID>
<mediaID>3,2,1</mediaID>
<backUrl></backUrl>
<videoQuality>0</videoQuality>
</param>
*
* @apiSuccessExample {xml} 返回示例
<?xml version="1.0" encoding="UTF-8"?>
<result>
<errorCode>0</errorCode>
<url>http://127.0.0.1:8080/3m/live/index.jsp</url>
<param>字符串</param>
<timestamp>1392032123210</timestamp>
<meetingNumber>01234567</meetingNumber>
<password>1234</password>
</result>
*
*/
/**
* @api {post} /3m/meeting/join_mtg.do 02.获取课堂地址
* @apiName joinMtg
* @apiGroup meeting
* @apiVersion 2.1.0
* @apiDescription 获取课堂地址, ,如果课堂不存在,先创建该课堂
*
* @apiParam {String} siteId 站点标识
* @apiParam {String} mtgKey 课堂的唯一标识。最大长度 64
* @apiParam {String} mtgTitle 课堂名称或者课堂主题,最大长度 32
* @apiParam {String} startTime 课堂的开始时间,作为课堂开始气泡提示的参考时间。格式为:YYYY-MM-DD HH:MM:SS
* @apiParam {String} endTime 课堂的结束时间,作为课堂结束气泡提示的参考时间。格式为:YYYY-MM-DD HH:MM:SS
* @apiParam {int} [duration] 持续时长
* @apiParam {int} [language=2] 客户端语言:1 英文, 2 中文
* @apiParam {String} userName 客户端显示的姓名,最大长度 32
* @apiParam {String} userId 英文或数字组成的字符串,最大长度 50。等于0时是匿名用户,可以允许多个用户同时存在,也可使学生不使用密码即可登录
* @apiParam {int} userType 用户类型:1 主讲人(老师) 2 助教(所有权限) 8 普通与会者 32 监课人员
* @apiParam {int} [meetingType=1] 1 1V1互动 支持一对一音视频互动 2 直播 适用于千人以上大课堂,不能进行音视频互动,支持H5网页观看 3 小班课 适用于小班授课
* @apiParam {String} hostPwd 主持人密码,密码长度 6 到 8 位,用于对普通人员申请主持人时的验证
* @apiParam {String} docID 文档唯一标识。多个文档标识用英文逗号分隔。文档标识通过查询文档列表接口获取
* @apiParam {String} mediaID 伴音唯一标识。多个标识用英文逗号分隔。标识通过查询伴音列表接口获取
* @apiParam {String} sharedMediaID 媒体共享文件唯一标识。多个标识用英文逗号分隔。标识通过查询媒体共享文件接口获取
* @apiParam {String} [backUrl] 课堂结束后的回调地址
* @apiParam {Long} timestamp 时间戳
* @apiParam {int} [docModule] 是否启用文档共享:1 启用,其它禁止。默认为站点默认值
* @apiParam {int} [screenModule] 是否启用屏幕共享:1 启用,其它禁止。仅当站点开启屏幕共享时有效
* @apiParam {int} [mediaModule] 是否启用媒体共享:1 启用,其它禁止。仅当站点开启媒体共享时有效
* @apiParam {int} [whiteboardModule] 是否启用白板:1 启用,其它禁止
* @apiParam {int} [recordModule] 是否启用录制:1 启用,其它禁止。仅当站点开启录制功能时有效
* @apiParam {int} [videoModule] 是否启用视频:1 启用,其它禁止。仅当站点开启视频功能时有效
* @apiParam {int} [h5Module] 是否启用 H5:1 启用,其它禁止。仅当站点开启 H5 功能时有效
* @apiParam {int} [autoRecord] 是否自动录制:1 是 0 否。默认为站点默认值
* @apiParam {int} [interaction] 是否参与音视频互动:1 是 0 否。默认为站点默认值
* @apiParam {int} [maxAudioChannels] 最大音频路数。如果不传或传的值大于站点配置,以站点配置为准。直播课堂只支持 1 路,1V1支持2路,小班课支持1,2,3,5路
* @apiParam {int} [maxVideoChannels] 最大视频路数。如果不传或传的值大于站点配置,以站点配置为准。直播课堂只支持 1 路,1V1支持2路,小班课支持1,2,3,5路
* @apiParam {int} [videoQuality=0] 视频画质设置:0 低,1 中,2 高,3 较高,4 最高
* @apiParam {String} authId MD5(key+siteId+mtgKey+userID+userType+timestamp), 其中 key 为与系统约定的加密 key
*
* @apiSuccess {int} errorCode
* 0:正常 <br/>
* 1:siteId 错误,站点不存在或已删除 <br/>
* 2:站点未到生效日期 <br/>
* 3: 站点过期 <br/>
* 4:课堂信息 mtgKey/mtgTitle/hostPwd 不能为空 <br/>
* 5:用户信息 userName/userId/userType 不能为空 <br/>
* 6:timestamp 超时 <br/>
* 7:authId 错误 <br/>
* 8:authId 不能重复使用 <br/>
* 9:课堂开始或结束时间格式错误 <br/>
* 10:报文格式错误 <br/>
* @apiSuccess {String} url 课堂地址,GET请求
* @apiSuccess {String} param 已废弃
* @apiSuccess {String} meetingNumber 学点云系统生成的课堂号
* @apiSuccess {String} password 课堂密码
* @apiSuccess {Long} timestamp 时间戳
*
* @apiParamExample {xml} 请求示例
<?xml version="1.0" encoding="UTF-8"?>
<param>
<siteId>admin</siteId>
<timestamp>1476174725597</timestamp>
<authId>450d6357348e5c16a6ffb0069b9ae86f</authId>
<mtgKey>100012</mtgKey>
<mtgTitle>admintest</mtgTitle>
<startTime>2016-08-12 14:00:00</startTime>
<endTime>2017-08-12 14:30:00</endTime>
<language>1</language>
<userName>shanghai</userName>
<userId>2000012</userId>
<userType>8</userType>
<hostPwd>123456</hostPwd>
<meetingType>1</meetingType>
<isPublic>1</isPublic>
<docModule>0</docModule>
<screenModule>0</screenModule>
<mediaModule>0</mediaModule>
<whiteboardModule>0</whiteboardModule>
<recordModule>0</recordModule>
<videoModule>0</videoModule>
<h5Module>0</h5Module>
<autoRecord>0</autoRecord>
<interaction>0</interaction>
<maxAudioChannels>1</maxAudioChannels>
<maxVideoChannels>1</maxVideoChannels>
<videoQuality>1</videoQuality>
<docID>1,2,3</docID>
<mediaID>3,2,1</mediaID>
<sharedMediaID>3,2,1</sharedMediaID>
<backUrl></backUrl>
<videoQuality>0</videoQuality>
</param>
*
* @apiSuccessExample {xml} 返回示例
<?xml version="1.0" encoding="UTF-8"?>
<result>
<errorCode>0</errorCode>
<url>http://localhost/h5/index.html?portalPort=8080&portalIP=127.0.0.1&classId=1992106612&userId=2000012&channels=1&userName=%E5%BC%A0%E4%B8%89&m=84b79056d155e186052dcf53cd22d54b&userRole=normal</url>
<param></param>
<timestamp>1392032123210</timestamp>
<meetingNumber>01234567</meetingNumber>
<password>1234</password>
</result>
*
*/