zigbee2mqtt.go 672 B

123456789101112131415161718192021222324252627
  1. package zigbee2mqtt
  2. import (
  3. "fmt"
  4. "homectrl/internal/connectors/mqtt"
  5. mqtt_cli "github.com/eclipse/paho.mqtt.golang"
  6. )
  7. type Zigbee2mqtt struct {
  8. devices []device
  9. }
  10. var messagePubHandler mqtt_cli.MessageHandler = func(client mqtt_cli.Client, msg mqtt_cli.Message) {
  11. fmt.Printf("Received message: %s from topic: %s\n", msg.Payload(), msg.Topic())
  12. Build(msg.Payload())
  13. }
  14. func (z2m *Zigbee2mqtt) New(broker string, port int) {
  15. fmt.Println("zigbee2mqtt/New")
  16. var inst = &mqtt.MqttInst{}
  17. inst.New(broker, port)
  18. inst.SetDefaultPublishHandler(messagePubHandler)
  19. inst.Connect()
  20. fmt.Println("zigbee2mqtt/New2")
  21. inst.SubscribeTopic("zigbee2mqtt/bridge/devices")
  22. }