]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/lib/webtorrent.js
OAuth/User models refractoring -> use mongoose api
[github/Chocobozzz/PeerTube.git] / server / lib / webtorrent.js
index 455b086a3514a03729db3d39fe2584ad497f932b..fe2ee357f35349347a1d6ff74e925b578a919865 100644 (file)
@@ -7,6 +7,7 @@ const spawn = require('electron-spawn')
 
 const logger = require('../helpers/logger')
 
+const electronDebug = config.get('electron.debug')
 let host = config.get('webserver.host')
 let port = config.get('webserver.port')
 let nodeKey = 'webtorrentnode' + port
@@ -42,30 +43,33 @@ function create (options, callback) {
     if (!webtorrent.silent) logger.info('IPC server ready.')
 
     // Run a timeout of 30s after which we exit the process
-    const timeout_webtorrent_process = setTimeout(function () {
+    const timeoutWebtorrentProcess = setTimeout(function () {
       throw new Error('Timeout : cannot run the webtorrent process. Please ensure you have electron-prebuilt npm package installed with xvfb-run.')
     }, 30000)
 
     ipc.server.on(processKey + '.ready', function () {
       if (!webtorrent.silent) logger.info('Webtorrent process ready.')
-      clearTimeout(timeout_webtorrent_process)
+      clearTimeout(timeoutWebtorrentProcess)
       callback()
     })
 
     ipc.server.on(processKey + '.exception', function (data) {
-      throw new Error('Received exception error from webtorrent process.' + data.exception)
+      throw new Error('Received exception error from webtorrent process : ' + data.exception)
     })
 
-    const webtorrent_process = spawn(pathUtils.join(__dirname, 'webtorrentProcess.js'), host, port, { detached: true })
-    webtorrent_process.stderr.on('data', function (data) {
-      // logger.debug('Webtorrent process stderr: ', data.toString())
-    })
+    const webtorrentProcess = spawn(pathUtils.join(__dirname, 'webtorrentProcess.js'), host, port, { detached: true })
 
-    webtorrent_process.stdout.on('data', function (data) {
-      // logger.debug('Webtorrent process:', data.toString())
-    })
+    if (electronDebug === true) {
+      webtorrentProcess.stderr.on('data', function (data) {
+        logger.debug('Webtorrent process stderr: ', data.toString())
+      })
+
+      webtorrentProcess.stdout.on('data', function (data) {
+        logger.debug('Webtorrent process:', data.toString())
+      })
+    }
 
-    webtorrent.app = webtorrent_process
+    webtorrent.app = webtorrentProcess
   })
 
   ipc.server.start()
@@ -84,8 +88,8 @@ function seed (path, callback) {
   if (!webtorrent.silent) logger.debug('Node wants to seed %s.', data._id)
 
   // Finish signal
-  const event_key = nodeKey + '.seedDone.' + data._id
-  ipc.server.on(event_key, function listener (received) {
+  const eventKey = nodeKey + '.seedDone.' + data._id
+  ipc.server.on(eventKey, function listener (received) {
     if (!webtorrent.silent) logger.debug('Process seeded torrent %s.', received.magnetUri)
 
     // This is a fake object, we just use the magnetUri in this project
@@ -93,7 +97,7 @@ function seed (path, callback) {
       magnetURI: received.magnetUri
     }
 
-    ipc.server.off(event_key)
+    ipc.server.off(eventKey)
     callback(torrent)
   })
 
@@ -111,8 +115,8 @@ function add (magnetUri, callback) {
   if (!webtorrent.silent) logger.debug('Node wants to add ' + data._id)
 
   // Finish signal
-  const event_key = nodeKey + '.addDone.' + data._id
-  ipc.server.on(event_key, function (received) {
+  const eventKey = nodeKey + '.addDone.' + data._id
+  ipc.server.on(eventKey, function (received) {
     if (!webtorrent.silent) logger.debug('Process added torrent.')
 
     // This is a fake object, we just use the magnetUri in this project
@@ -120,7 +124,7 @@ function add (magnetUri, callback) {
       files: received.files
     }
 
-    ipc.server.off(event_key)
+    ipc.server.off(eventKey)
     callback(torrent)
   })
 
@@ -138,14 +142,14 @@ function remove (magnetUri, callback) {
   if (!webtorrent.silent) logger.debug('Node wants to stop seeding %s.', data._id)
 
   // Finish signal
-  const event_key = nodeKey + '.removeDone.' + data._id
-  ipc.server.on(event_key, function (received) {
+  const eventKey = nodeKey + '.removeDone.' + data._id
+  ipc.server.on(eventKey, function (received) {
     if (!webtorrent.silent) logger.debug('Process removed torrent %s.', data._id)
 
     let err = null
     if (received.err) err = received.err
 
-    ipc.server.off(event_key)
+    ipc.server.off(eventKey)
     callback(err)
   })