Files
dispatcher_ng/src/Forwarder.ts
Wolfgang Hottgenroth f430ab5ff0 some forwarders
2018-01-10 21:46:15 +01:00

28 lines
842 B
TypeScript

import { AItem } from './AItem'
import * as logger from './log'
import { mqttHandler } from './MqttDispatcher'
export class Forwarder extends AItem {
private targetTopics: string[]
private inTopic: string
constructor(floor: string, room: string, item: string, topicLastPart: string, label: string, targetTopics: string[]) {
super(floor, room, item, label)
this.inTopic = `${this.topicFirstPart}/${topicLastPart}`
this.subscribeTopics = [ this.inTopic ]
this.targetTopics = targetTopics
}
processMessage(topic: string, payload: string) : void {
switch (topic) {
case this.inTopic:
this.targetTopics.forEach((targetTopic) => {
mqttHandler.send(targetTopic, payload, true)
})
break
}
}
}