diff --git a/c8y/c8y_client.go b/c8y/c8y_client.go index 42276d0..18d06e2 100644 --- a/c8y/c8y_client.go +++ b/c8y/c8y_client.go @@ -146,15 +146,17 @@ func GetClient(uuid string, tenant string, bootstrapPW string) (mqtt.Client, err } } -func Send(c mqtt.Client, valueToSend bool) error { +func Send(c mqtt.Client, name string, value bool, timestamp time.Time) error { log.Println("sending...") + const timeFormat = "2006-01-02T15:04:05.000Z" + log.Println(timestamp.Format(timeFormat)) var message string - if valueToSend { + if value { // send true (1) - message = "200,c8y_Bool,B,1" + message = "200,c8y_Switch," + name + ",1,," + timestamp.Format(timeFormat) } else { // send false (0) - message = "200,c8y_Bool,B,0" + message = "200,c8y_Switch," + name + ",0,," + timestamp.Format(timeFormat) } if token := c.Publish("s/us", 0, false, message); token.Wait() && token.Error() != nil { diff --git a/main/main.go b/main/main.go index 2c517f0..e5c54c2 100644 --- a/main/main.go +++ b/main/main.go @@ -27,9 +27,13 @@ func main() { } defer client.Disconnect(0) + switchName1 := "switch1" + switchName2 := "switch2" value := true for { - err = c8y.Send(client, value) + now := time.Now().UTC() + err = c8y.Send(client, switchName1, value, now) + err = c8y.Send(client, switchName2, !value, now) if err != nil { log.Fatalf("error: %v", err) }