正在显示
4 个修改的文件
包含
65 行增加
和
2 行删除
model/oldMeetingRecording.js
0 → 100644
1 | +var sequelize = require('../db2.config'); | ||
2 | +var Sequelize = require('sequelize'); | ||
3 | +const uuid = require('../util/UuidUtil') | ||
4 | + | ||
5 | + | ||
6 | +var recordingMeeting = sequelize.define('3m_recording_meeting', { | ||
7 | + id: { | ||
8 | + type: Sequelize.STRING(32), | ||
9 | + defaultValue:uuid.db32(), | ||
10 | + allowNull: false, | ||
11 | + unique: true, | ||
12 | + primaryKey: true, | ||
13 | + field: "id" | ||
14 | + }, | ||
15 | + meetingId: { | ||
16 | + type:Sequelize.STRING(32), | ||
17 | + field: "meeting_id" | ||
18 | + }, | ||
19 | + configFile: { | ||
20 | + type:Sequelize.STRING(32), | ||
21 | + field: "config_file" | ||
22 | + }, | ||
23 | + startTime:{ | ||
24 | + type:Sequelize.DATE, | ||
25 | + field: "start_time" | ||
26 | + }, | ||
27 | + endTime:{ | ||
28 | + type:Sequelize.DATE, | ||
29 | + field: "end_time" | ||
30 | + }, | ||
31 | +},{ | ||
32 | + timestamps: false, | ||
33 | + freezeTableName: true | ||
34 | +}) | ||
35 | + | ||
36 | + | ||
37 | +module.exports = recordingMeeting; |
routes/tgp.txt
0 → 100644
@@ -32,6 +32,16 @@ router.post('/upLoadDoc',uploaddemo, async (ctx, next) => { | @@ -32,6 +32,16 @@ router.post('/upLoadDoc',uploaddemo, async (ctx, next) => { | ||
32 | } | 32 | } |
33 | }) | 33 | }) |
34 | 34 | ||
35 | +router.post('/tgpCallback', async (ctx, next) => { | ||
36 | + | ||
37 | + //let s = await uploaddemo(ctx.req,ctx.res,next) | ||
38 | + //let w = await fs.rename('/Users/fzy/project/koa2_Sequelize_project/uploads/'+'19543f72d9682d0bedf67fc98da4597b','/Users/fzy/project/koa2_Sequelize_project/uploads/'+'www.jpg') | ||
39 | + let f = await fs.appendFileSync(path.join(__dirname, 'tgp.txt'),JSON.stringify(ctx.request.body)+'/n') | ||
40 | + ctx.body = { | ||
41 | + filename:2 | ||
42 | + } | ||
43 | + }) | ||
44 | + | ||
35 | 45 | ||
36 | 46 | ||
37 | module.exports = router | 47 | module.exports = router |
1 | var meetingModel = require('../model/meetingModel'); | 1 | var meetingModel = require('../model/meetingModel'); |
2 | var oldMeetingModel = require('../model/oldMeetingModel'); | 2 | var oldMeetingModel = require('../model/oldMeetingModel'); |
3 | +var oldMeetingRecording = require('../model/oldMeetingRecording'); | ||
3 | var status = require('../util/resTemplate'); | 4 | var status = require('../util/resTemplate'); |
4 | var saitMd5 = require('../util/saltMD5'); | 5 | var saitMd5 = require('../util/saltMD5'); |
5 | var sequelize = require('../config'); | 6 | var sequelize = require('../config'); |
6 | var tokenUtil = require('../util/tokenUtil'); | 7 | var tokenUtil = require('../util/tokenUtil'); |
8 | +var saitMd5 = require('../util/saltMD5') | ||
7 | var co = require('co'); | 9 | var co = require('co'); |
8 | 10 | ||
11 | +const xml2js = require('xml2js'); | ||
12 | +const requestUtil = require('../util/requestUtil') | ||
13 | +const builder = new xml2js.Builder(); // JSON->xml | ||
14 | +const parser = new xml2js.Parser(); //xml -> json | ||
15 | + | ||
9 | 16 | ||
10 | function meetingService(){ | 17 | function meetingService(){ |
11 | } | 18 | } |
@@ -158,7 +165,6 @@ meetingService.prototype.getAllMeetingBySiteID = async(params)=>{ | @@ -158,7 +165,6 @@ meetingService.prototype.getAllMeetingBySiteID = async(params)=>{ | ||
158 | meetingService.prototype.recording = async(params)=>{ | 165 | meetingService.prototype.recording = async(params)=>{ |
159 | try { | 166 | try { |
160 | let newURL = 'http://'+params.siteId+'.xuedianyun.com/3m/doPlayRecord.do?meetingNumber='; | 167 | let newURL = 'http://'+params.siteId+'.xuedianyun.com/3m/doPlayRecord.do?meetingNumber='; |
161 | - let oldURL = 'http://saas.3mang.com:80/3m/attend.do?meetingNumber='+meetingId+'&streamNameOfRecord='+meetingId+'_'; | ||
162 | let Meeting = await meetingModel.findOne({where:{id:params.meetingId}}); | 168 | let Meeting = await meetingModel.findOne({where:{id:params.meetingId}}); |
163 | if(Meeting){ | 169 | if(Meeting){ |
164 | return {url:newURL+Meeting.meetingNumber} | 170 | return {url:newURL+Meeting.meetingNumber} |
@@ -167,7 +173,17 @@ meetingService.prototype.recording = async(params)=>{ | @@ -167,7 +173,17 @@ meetingService.prototype.recording = async(params)=>{ | ||
167 | if(!oldMeeting){ | 173 | if(!oldMeeting){ |
168 | return {code:11,msg:'课堂不存在'} | 174 | return {code:11,msg:'课堂不存在'} |
169 | }else{ | 175 | }else{ |
170 | - | 176 | + let oldURL = 'http://saas.3mang.com:80/3m/attend.do?meetingNumber='+oldMeeting.meetingNumber+'&streamNameOfRecord='; |
177 | + let oldMRecording = await oldMeetingRecording.findOne({where:{meetingId:oldMeeting.meetingNumber}}); | ||
178 | + if(!oldMRecording){ | ||
179 | + throw new Error('课堂没有录制') | ||
180 | + } | ||
181 | + var d = oldMRecording.configFile.split('.')[0] | ||
182 | + let a = oldURL+d+"&userRole=record&userName="+params.username+"&password="+oldMeeting.attendeePassword; | ||
183 | + return {url:a} | ||
184 | + // var xml = builder.buildObject(recordInfo); | ||
185 | + // let info = await requestUtil.post('http://markettest.xuedianyun.com/3m/meeting/join_mtg.do',xml); | ||
186 | + // var jsonXml = await requestUtil.json2xml(info); | ||
171 | } | 187 | } |
172 | } | 188 | } |
173 | return {meeting:Meeting.concat(oldMeeting)} | 189 | return {meeting:Meeting.concat(oldMeeting)} |
-
请 注册 或 登录 后发表评论