diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2015-10-20 23:18:16 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2015-10-20 23:18:16 +0200 |
commit | 0266bdd60cb9cccf20a5ded3eba72ea833bee72d (patch) | |
tree | d727bad80aeaef673f48bbbc171fb4e9297b72fc /diller.js | |
parent | 73d272ffe8954b3169901eda74428bad3d2740fe (diff) | |
download | diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.tar.gz diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.tar.bz2 diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.tar.xz diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.zip |
o Adding a webapp.
o Using di.js as dependency injection framework.
Diffstat (limited to 'diller.js')
-rw-r--r-- | diller.js | 67 |
1 files changed, 6 insertions, 61 deletions
@@ -1,63 +1,8 @@ -var mqtt = require('mqtt'); -var fs = require('fs'); -var bunyan = require('bunyan'); +var di = require('di'); +var injector = new di.Injector(); -var config = require('./src/config'); +var config = injector.get(require('./src/DillerConfig')); +config.configureLogging('mqtt'); -function configureLogging(config) { - var cfg = { - name: 'main' - }; - - if (config.isProd()) { - cfg.streams = [ - { - level: 'warn', - stream: process.stdout - }, - { - level: 'debug', - path: 'log/diller.log' - } - ]; - - var stat; - try { - stat = fs.lstatSync('log'); - } catch (e) { - // Assume this to to be ENOENT - fs.mkdirSync('log'); - } - if (stat && !stat.isDirectory()) { - throw 'Not a directory: log'; - } - } - - return bunyan.createLogger(cfg); -} - -var log = configureLogging(config); - -var Diller = require('./src/Diller').Diller; - -var diller = new Diller(config, log); - -log.info('Connecting to ' + config.mqttUrl); -var mqttClient = mqtt.connect(config.mqttUrl); - -mqttClient.on('offline', function () { - log.info('offline'); -}); - -mqttClient.on('error', function (error) { - log.info('error', {error: error}); -}); - -mqttClient.on('connect', function () { - log.info('Connected'); - mqttClient.subscribe('/diller/#'); -}); - -mqttClient.on('message', function (topic, message, payload) { - diller.onMessage(topic, message, payload); -}); +var dillerMqtt = injector.get(require('./src/mqtt/DillerMqtt')); +dillerMqtt.run(); |