mirror of
https://github.com/openstf/stf
synced 2025-10-04 10:19:30 +02:00
28 lines
746 B
JavaScript
28 lines
746 B
JavaScript
var syrup = require('syrup')
|
|
|
|
var zmq = require('zmq')
|
|
|
|
var logger = require('../../../util/logger')
|
|
var wireutil = require('../../../wire/util')
|
|
|
|
module.exports = syrup()
|
|
.dependency(require('./channels'))
|
|
.define(function(options, channels) {
|
|
var log = logger.createLogger('device:plugins:sub')
|
|
|
|
// Input
|
|
var sub = zmq.socket('sub')
|
|
options.endpoints.sub.forEach(function(endpoint) {
|
|
log.info('Receiving input from %s', endpoint)
|
|
sub.connect(endpoint)
|
|
})
|
|
|
|
// Establish always-on channels
|
|
;[wireutil.global].forEach(function(channel) {
|
|
log.info('Subscribing to permanent channel "%s"', channel)
|
|
sub.subscribe(channel)
|
|
channels.register(channel, Infinity)
|
|
})
|
|
|
|
return sub
|
|
})
|