diff --git a/libs/childNode/childUtils.js b/libs/childNode/childUtils.js index d4fdaa46..67af1b96 100644 --- a/libs/childNode/childUtils.js +++ b/libs/childNode/childUtils.js @@ -34,9 +34,6 @@ module.exports = function(s,config,lang,app,io){ var filePath = s.getTimelapseFrameDirectory(d.d) + `${d.currentDate}/` + d.file s.file('delete',filePath) break; - case'insertCompleted'://close video - s.insertCompletedVideo(d.d,d.k) - break; case'cameraStop'://start camera s.camera('stop',d.d) break; diff --git a/libs/childNode/utils.js b/libs/childNode/utils.js index bf5114b2..75da6b60 100644 --- a/libs/childNode/utils.js +++ b/libs/childNode/utils.js @@ -117,7 +117,11 @@ module.exports = function(s,config,lang,app,io){ // response.fileWritePath = fileWritePath // response.writeData = data // response.childNodeId = connectionId - activeMonitor.childNodeStreamWriters[filename].end(); + try{ + activeMonitor.childNodeStreamWriters[filename].end(); + }catch(err){ + + } setTimeout(() => { delete(activeMonitor.childNodeStreamWriters[filename]) },100) @@ -135,47 +139,45 @@ module.exports = function(s,config,lang,app,io){ const videoDirectory = s.getVideoDirectory(monitorConfig) data.writeDirectory = videoDirectory initiateFileWriteFromChildNode(client,data,connectionId,(response) => { - setTimeout(() => { - //delete video file from child node - s.cx({ - f: 'delete', - file: filename, - ke: data.ke, - mid: data.mid - },connectionId) - // - s.txWithSubPermissions({ - f:'video_build_success', - hrefNoAuth:'/videos/'+data.ke+'/'+data.mid+'/'+filename, - filename:filename, - mid:data.mid, - ke:data.ke, - time:data.time, - size:data.filesize, - end:data.end - },'GRP_'+data.ke,'video_view') - //save database row - var insert = { - startTime : data.time, - filesize : data.filesize, - endTime : data.end, - dir : s.getVideoDirectory(data.d), - file : filename, - filename : filename, - filesizeMB : parseFloat((data.filesize/1048576).toFixed(2)) - } - s.insertDatabaseRow(data.d,insert) - s.insertCompletedVideoExtensions.forEach(function(extender){ - extender(data.d,insert) - }) - //purge over max - s.purgeDiskForGroup(data.ke) - //send new diskUsage values - s.setDiskUsedForGroup(data.ke,insert.filesizeMB) - clearTimeout(activeMonitor.recordingChecker) - clearTimeout(activeMonitor.streamChecker) - resolve(response) - },2000) + //delete video file from child node + s.cx({ + f: 'delete', + file: filename, + ke: data.ke, + mid: data.mid + },connectionId) + // + s.txWithSubPermissions({ + f:'video_build_success', + hrefNoAuth:'/videos/'+data.ke+'/'+data.mid+'/'+filename, + filename:filename, + mid:data.mid, + ke:data.ke, + time:data.time, + size:data.filesize, + end:data.end + },'GRP_'+data.ke,'video_view') + //save database row + var insert = { + startTime : data.time, + filesize : data.filesize, + endTime : data.end, + dir : videoDirectory, + file : filename, + filename : filename, + filesizeMB : parseFloat((data.filesize/1048576).toFixed(2)) + } + s.insertDatabaseRow(monitorConfig,insert) + s.insertCompletedVideoExtensions.forEach(function(extender){ + extender(monitorConfig,insert) + }) + //purge over max + s.purgeDiskForGroup(data.ke) + //send new diskUsage values + s.setDiskUsedForGroup(data.ke,insert.filesizeMB) + clearTimeout(activeMonitor.recordingChecker) + clearTimeout(activeMonitor.streamChecker) + resolve(response) }) }) } @@ -192,19 +194,17 @@ module.exports = function(s,config,lang,app,io){ const writeStream = fs.createWriteStream(fileWritePath) data.writeDirectory = timelapseFrameDirectory initiateFileWriteFromChildNode(client,data,connectionId,(response) => { - setTimeout(() => { - s.cx({ - f: 'deleteTimelapseFrame', - file: filename, - currentDate: currentDate, - ke: groupKey, - mid: monitorId - },connectionId) - s.insertTimelapseFrameDatabaseRow({ - ke: groupKey - },data.queryInfo) - resolve(response) - },2000) + s.cx({ + f: 'deleteTimelapseFrame', + file: filename, + currentDate: currentDate, + ke: groupKey, + mid: monitorId + },connectionId) + s.insertTimelapseFrameDatabaseRow({ + ke: groupKey + },data.queryInfo) + resolve(response) }) }) } diff --git a/libs/videos.js b/libs/videos.js index 63637194..ec02c8ec 100644 --- a/libs/videos.js +++ b/libs/videos.js @@ -99,11 +99,11 @@ module.exports = function(s,config,lang){ e.dir = s.getVideoDirectory(e) k.dir = e.dir.toString() if(s.group[e.ke].activeMonitors[e.id].childNode){ - s.cx({ - f: 'insertCompleted', - d: s.group[e.ke].rawMonitorConfigurations[e.id], - k: k - },s.group[e.ke].activeMonitors[e.id].childNodeId); + // s.cx({ + // f: 'insertCompleted', + // d: s.group[e.ke].rawMonitorConfigurations[e.id], + // k: k + // },s.group[e.ke].activeMonitors[e.id].childNodeId); }else{ //get file directory k.fileExists = fs.existsSync(k.dir+k.file)