32 lines
613 B
Go
32 lines
613 B
Go
package archiver
|
|
|
|
import (
|
|
"log"
|
|
"ma/mqtt"
|
|
"time"
|
|
)
|
|
|
|
type Message struct {
|
|
Time time.Time `json:"time"`
|
|
Topic string `json:"topic"`
|
|
Payload string `json:"payload"`
|
|
}
|
|
|
|
func InitArchiver() {
|
|
log.Printf("Archiver initializing")
|
|
InitSyslog()
|
|
}
|
|
|
|
func InputArchiver() {
|
|
for mqttMessage := range mqtt.InputChannel {
|
|
message := Message{time.Now(), mqttMessage.Topic, string(mqttMessage.Payload)}
|
|
handleMessage(message)
|
|
}
|
|
}
|
|
|
|
func handleMessage(message Message) {
|
|
log.Printf("Archiving Timestamp: %s, Topic: %s, Payload: %s", message.Time, message.Topic, message.Payload)
|
|
|
|
WriteSyslog(message)
|
|
}
|