Explorar o código

publish deleted node update on disconnect

Abhishek Kondur hai 1 ano
pai
achega
6c15fd60a0
Modificáronse 1 ficheiros con 6 adicións e 1 borrados
  1. 6 1
      mq/handlers.go

+ 6 - 1
mq/handlers.go

@@ -60,7 +60,12 @@ func UpdateNode(client mqtt.Client, msg mqtt.Message) {
 		return
 	}
 	if ifaceDelta { // reduce number of unneeded updates, by only sending on iface changes
-		if err = PublishPeerUpdate(); err != nil {
+		if !newNode.Connected {
+			err = PublishDeletedNodePeerUpdate(&newNode)
+		} else {
+			err = PublishPeerUpdate()
+		}
+		if err != nil {
 			slog.Warn("error updating peers when node informed the server of an interface change", "nodeid", currentNode.ID, "error", err)
 		}
 	}