Push even offline statuses.

This commit is contained in:
Simo Kinnunen
2014-01-28 16:57:51 +09:00
parent c2becebf4b
commit 5f8e617393

View File

@@ -27,6 +27,7 @@ module.exports = function(options) {
tracker.on('add', function(device) {
if (isWantedDevice(device)) {
log.info('Found device "%s" (%s)', device.id, device.type)
pushDeviceStatus(device, device.type)
maybeConnect(device)
}
else {
@@ -37,6 +38,7 @@ module.exports = function(options) {
tracker.on('change', function(device) {
if (isWantedDevice(device)) {
log.info('Device "%s" is now "%s"', device.id, device.type)
pushDeviceStatus(device, device.type)
maybeConnect(device) || maybeDisconnect(device)
}
})
@@ -44,6 +46,7 @@ module.exports = function(options) {
tracker.on('remove', function(device) {
if (isWantedDevice(device)) {
log.info('Lost device "%s" (%s)', device.id, device.type)
pushDeviceStatus(device, 'absent')
maybeDisconnect(device)
}
})
@@ -74,7 +77,6 @@ module.exports = function(options) {
function maybeConnect(device) {
if (isConnectable(device) && !isConnected(device)) {
pushDeviceStatus(device, device.type)
log.info('Spawning worker for device "%s"', device.id)
var proc = options.fork(device)
proc.on('error', function(err) {
@@ -112,7 +114,6 @@ module.exports = function(options) {
function maybeDisconnect(device) {
if (isConnected(device)) {
pushDeviceStatus(device, 'absent')
log.info('Releasing worker of %s', device.id)
gracefullyKillWorker(device.id)
return true