diff --git a/agent/internal/httpapi/alarms.go b/agent/internal/httpapi/alarms.go index c18a4d0..137d9e7 100644 --- a/agent/internal/httpapi/alarms.go +++ b/agent/internal/httpapi/alarms.go @@ -17,19 +17,6 @@ import ( "rk3588sys/agent/internal/files" ) -type alarmRecord struct { - ID string `json:"id"` - Timestamp string `json:"timestamp"` - Channel string `json:"channel"` - RuleName string `json:"rule_name"` - RuleType string `json:"rule_type"` - ObjectLabel string `json:"object_label,omitempty"` - Confidence float64 `json:"confidence,omitempty"` - SnapshotURL string `json:"snapshot_url,omitempty"` - ClipURL string `json:"clip_url,omitempty"` - DurationMs int64 `json:"duration_ms,omitempty"` -} - func (s *Server) alarmsPath() string { return filepath.Join(s.baseDir, "logs", "alarms.jsonl") } @@ -121,13 +108,13 @@ func (s *Server) handleAlarmsRecent(w http.ResponseWriter, r *http.Request) { return } if alarms == nil { - alarms = make([]alarmRecord, 0) + alarms = make([]map[string]any, 0) } writeJSON(w, http.StatusOK, map[string]any{"alarms": alarms}) } -func (s *Server) readRecentAlarms(limit int) ([]alarmRecord, error) { +func (s *Server) readRecentAlarms(limit int) ([]map[string]any, error) { path := s.alarmsPath() f, err := os.Open(path) if err != nil { @@ -163,11 +150,11 @@ func (s *Server) readRecentAlarms(limit int) ([]alarmRecord, error) { start = len(lines) - limit } - alarms := make([]alarmRecord, 0, limit) + alarms := make([]map[string]any, 0, limit) for i := start; i < len(lines); i++ { - var alarm alarmRecord + var alarm map[string]any if err := json.Unmarshal([]byte(lines[i]), &alarm); err != nil { - continue // skip malformed lines + continue } alarms = append(alarms, alarm) } diff --git a/agent/rk3588-agent_linux_arm64 b/agent/rk3588-agent_linux_arm64 index cc89f0c..68a146f 100755 Binary files a/agent/rk3588-agent_linux_arm64 and b/agent/rk3588-agent_linux_arm64 differ