oktopus/backend/services/acs/internal/server/handler/status.go
2024-06-09 19:16:59 -03:00

27 lines
606 B
Go

package handler
import (
"log"
"time"
)
func (h *Handler) HandleCpeStatus() {
for {
for cpe := range h.Cpes {
if cpe == "" {
continue
}
if h.acsConfig.DebugMode {
log.Println("Checking CPE " + cpe + " status")
}
if time.Since(h.Cpes[cpe].LastConnection) > h.acsConfig.KeepAliveInterval {
log.Printf("LastConnection: %s, KeepAliveInterval: %s", h.Cpes[cpe].LastConnection, h.acsConfig.KeepAliveInterval)
log.Println("CPE", cpe, "is offline")
h.pub("cwmp.v1."+cpe+".status", []byte("0"))
delete(h.Cpes, cpe)
break
}
}
time.Sleep(10 * time.Second)
}
}