diff --git a/src/udi/handlers/ttn/models/rawPayloadPrinter/rawPayloadPrinter.go b/src/udi/handlers/ttn/models/rawPayloadPrinter/rawPayloadPrinter.go new file mode 100644 index 0000000..4048155 --- /dev/null +++ b/src/udi/handlers/ttn/models/rawPayloadPrinter/rawPayloadPrinter.go @@ -0,0 +1,17 @@ +package rawPayloadPrinter + +import ( + "log" + "fmt" + "udi/database" +) + + +func Parse(fPort int, _ []byte, frmPayload string, variables *map[string]database.VariableType, device *database.Device) error { + if fPort != 2 { + return fmt.Errorf("Unexpected fPort %d", fPort) + } + + log.Printf("frmPayload: %s", frmPayload) + return nil +} diff --git a/src/udi/handlers/ttn/ttn.go b/src/udi/handlers/ttn/ttn.go index 7ada7ba..61850fc 100644 --- a/src/udi/handlers/ttn/ttn.go +++ b/src/udi/handlers/ttn/ttn.go @@ -11,6 +11,7 @@ import ( "udi/handlers/ttn/models/draginoLdds75" "udi/handlers/ttn/models/draginoLmds200" "udi/handlers/ttn/models/draginoLse01" + "udi/handlers/ttn/models/rawPayloadPrinter" "udi/database" ) @@ -143,6 +144,8 @@ func (self *TTNHandler) Handle(message handler.MessageT) { parser = draginoLmds200.Parse case "dragino-lse01": parser = draginoLse01.Parse + case "raw-payload-printer": + parser = rawPayloadPrinter.Parse default: self.Lost(fmt.Sprintf("No parser found for %s", device.DeviceType.ModelIdentifier), nil, message) return