join_mtg.js 12.5 KB
/**
 * @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} 请求示例
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 &lt;param&gt;
     &lt;siteId&gt;admin&lt;/siteId&gt;
     &lt;timestamp&gt;1476174725597&lt;/timestamp&gt;
     &lt;authId&gt;450d6357348e5c16a6ffb0069b9ae86f&lt;/authId&gt;
     &lt;mtgKey&gt;100012&lt;/mtgKey&gt;
     &lt;mtgTitle&gt;admintest&lt;/mtgTitle&gt;
     &lt;startTime&gt;2016-08-12 14:00:00&lt;/startTime&gt;
     &lt;endTime&gt;2017-08-12 14:30:00&lt;/endTime&gt;
     &lt;language&gt;1&lt;/language&gt;
     &lt;userName&gt;shanghai&lt;/userName&gt;
     &lt;userId&gt;2000012&lt;/userId&gt;
     &lt;userType&gt;8&lt;/userType&gt;
     &lt;hostPwd&gt;123456&lt;/hostPwd&gt;
     &lt;meetingType&gt;1&lt;/meetingType&gt;
     &lt;isPublic&gt;1&lt;/isPublic&gt;
     &lt;docModule&gt;0&lt;/docModule&gt;
     &lt;screenModule&gt;0&lt;/screenModule&gt;
     &lt;mediaModule&gt;0&lt;/mediaModule&gt;
     &lt;whiteboardModule&gt;0&lt;/whiteboardModule&gt;
     &lt;recordModule&gt;0&lt;/recordModule&gt;
     &lt;videoModule&gt;0&lt;/videoModule&gt;
     &lt;h5Module&gt;0&lt;/h5Module&gt;
     &lt;autoRecord&gt;0&lt;/autoRecord&gt;
     &lt;interaction&gt;0&lt;/interaction&gt;
     &lt;maxAudioChannels&gt;1&lt;/maxAudioChannels&gt;
     &lt;maxVideoChannels&gt;1&lt;/maxVideoChannels&gt;
     &lt;videoQuality&gt;1&lt;/videoQuality&gt;
     &lt;docID&gt;1,2,3&lt;/docID&gt;
     &lt;mediaID&gt;3,2,1&lt;/mediaID&gt;
     &lt;backUrl&gt;&lt;/backUrl&gt;
     &lt;videoQuality&gt;0&lt;/videoQuality&gt;
 &lt;/param&gt;
 *
 * @apiSuccessExample {xml} 返回示例
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 &lt;result&gt;
     &lt;errorCode&gt;0&lt;/errorCode&gt;
     &lt;url&gt;http://127.0.0.1:8080/3m/live/index.jsp&lt;/url&gt;
     &lt;param&gt;字符串&lt;/param&gt;
     &lt;timestamp&gt;1392032123210&lt;/timestamp&gt;
     &lt;meetingNumber&gt;01234567&lt;/meetingNumber&gt;
     &lt;password&gt;1234&lt;/password&gt;
 &lt;/result&gt;
 *
 */
/**
 * @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} 请求示例
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 &lt;param&gt;
     &lt;siteId&gt;admin&lt;/siteId&gt;
     &lt;timestamp&gt;1476174725597&lt;/timestamp&gt;
     &lt;authId&gt;450d6357348e5c16a6ffb0069b9ae86f&lt;/authId&gt;
     &lt;mtgKey&gt;100012&lt;/mtgKey&gt;
     &lt;mtgTitle&gt;admintest&lt;/mtgTitle&gt;
     &lt;startTime&gt;2016-08-12 14:00:00&lt;/startTime&gt;
     &lt;endTime&gt;2017-08-12 14:30:00&lt;/endTime&gt;
     &lt;language&gt;1&lt;/language&gt;
     &lt;userName&gt;shanghai&lt;/userName&gt;
     &lt;userId&gt;2000012&lt;/userId&gt;
     &lt;userType&gt;8&lt;/userType&gt;
     &lt;hostPwd&gt;123456&lt;/hostPwd&gt;
     &lt;meetingType&gt;1&lt;/meetingType&gt;
     &lt;isPublic&gt;1&lt;/isPublic&gt;
     &lt;docModule&gt;0&lt;/docModule&gt;
     &lt;screenModule&gt;0&lt;/screenModule&gt;
     &lt;mediaModule&gt;0&lt;/mediaModule&gt;
     &lt;whiteboardModule&gt;0&lt;/whiteboardModule&gt;
     &lt;recordModule&gt;0&lt;/recordModule&gt;
     &lt;videoModule&gt;0&lt;/videoModule&gt;
     &lt;h5Module&gt;0&lt;/h5Module&gt;
     &lt;autoRecord&gt;0&lt;/autoRecord&gt;
     &lt;interaction&gt;0&lt;/interaction&gt;
     &lt;maxAudioChannels&gt;1&lt;/maxAudioChannels&gt;
     &lt;maxVideoChannels&gt;1&lt;/maxVideoChannels&gt;
     &lt;videoQuality&gt;1&lt;/videoQuality&gt;
     &lt;docID&gt;1,2,3&lt;/docID&gt;
     &lt;mediaID&gt;3,2,1&lt;/mediaID&gt;
     &lt;sharedMediaID&gt;3,2,1&lt;/sharedMediaID&gt;
     &lt;backUrl&gt;&lt;/backUrl&gt;
     &lt;videoQuality&gt;0&lt;/videoQuality&gt;
 &lt;/param&gt;
 *
 * @apiSuccessExample {xml} 返回示例
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 &lt;result&gt;
     &lt;errorCode&gt;0&lt;/errorCode&gt;
     &lt;url&gt;http://localhost/h5/index.html?portalPort=8080&amp;portalIP=127.0.0.1&amp;classId=1992106612&amp;userId=2000012&amp;channels=1&amp;userName=%E5%BC%A0%E4%B8%89&amp;m=84b79056d155e186052dcf53cd22d54b&amp;userRole=normal&lt;/url&gt;
     &lt;param&gt;&lt;/param&gt;
     &lt;timestamp&gt;1392032123210&lt;/timestamp&gt;
     &lt;meetingNumber&gt;01234567&lt;/meetingNumber&gt;
     &lt;password&gt;1234&lt;/password&gt;
 &lt;/result&gt;
 *
 */