introduce configuration file

This commit is contained in:
Wolfgang Hottgenroth
2017-08-25 15:02:50 +02:00
parent 6a59880109
commit 8513aff641
5 changed files with 49 additions and 17 deletions

View File

@ -1,21 +1,30 @@
import * as log from './log'
import * as mqtt from './mqttdispatcher'
import * as callchain from './callchain'
import * as plugintest1 from './plugintest1'
import * as fs from 'fs'
import * as cmdargs from 'command-line-args'
import * as EspThermToJson from './espthermtojson'
import * as MongoSave from './mongosave'
log.info("Dispatcher starting")
let dispatcher = new mqtt.MqttDispatcher("mqtts://broker.hottis.de:8883",
"wn", "locutus", "/home/wn/server-ca.crt")
const optionDefinitions = [
{ name: 'verbose', alias: 'v', type: Boolean },
{ name: 'config', alias: 'c', type: String, defaultValue: '~/mqttDispatcher.conf' }
];
const OPTIONS = cmdargs(optionDefinitions)
const CONFIG = JSON.parse(fs.readFileSync(OPTIONS.config, "utf8"))
let dispatcher = new mqtt.MqttDispatcher(CONFIG.brokerUrl,
CONFIG.brokerUser, CONFIG.brokerPass, CONFIG.brokerCa)
dispatcher.register('IoT/espThermometer2/#', 'toJson', EspThermToJson.espThermToJson)
let mongoUrl = "mongodb://localhost/hottis"
// let mongoUrl = "mongodb://receiver:esp8266.@cluster0-shard-00-00-7qduq.mongodb.net:27017,cluster0-shard-00-01-7qduq.mongodb.net:27017,cluster0-shard-00-02-7qduq.mongodb.net:27017/hottis?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin"
let mongo : MongoSave.MongoSave = new MongoSave.MongoSave(mongoUrl)
let mongo : MongoSave.MongoSave = new MongoSave.MongoSave(CONFIG.mongoDbUrl)
dispatcher.register('IoT/espThermometer2/#', 'MongoSave', mongo);