Files
ai-agent/internal/services/cronx/cron.go
T
t 2bbf42b741 refactor(auth): delegate access control to be-system
Remove Agent Desk users, roles, login sessions, tokens, and local permission persistence. Expose the backend as an embeddable ai-agent module with host-provided subject lookup and operation authorization callbacks, and complete the frontend/backend repository split.
2026-08-21 00:41:07 +08:00

39 lines
808 B
Go

package cronx
import (
"code.tczkiot.com/wlw/ai-agent/internal/services"
"fmt"
"log/slog"
"github.com/robfig/cron/v3"
)
func Init() {
c := cron.New()
addFunc(c, "0 4 ? * *", func() {
fmt.Println("cron test")
})
addFunc(c, "@every 30s", func() {
if _, err := services.ConversationDispatchService.DispatchPendingConversations(0); err != nil {
slog.Warn("dispatch pending conversations loop failed", "error", err)
}
})
addFunc(c, "@every 5s", func() {
count := services.WxWorkKFOutboundService.DispatchPendingOutbox()
if count > 0 {
slog.Info("wxwork kf outbox dispatched", "count", count)
}
})
c.Start()
}
func addFunc(c *cron.Cron, sepc string, cmd func()) {
if _, err := c.AddFunc(sepc, cmd); err != nil {
slog.Error("add cron func error", slog.Any("err", err))
}
}