package sense import ( "os" "time" "yovision.local/sense/app/sense/adapters/onvif" "yovision.local/sense/app/sense/adapters/rtsp" "yovision.local/sense/app/sense/admission" "yovision.local/sense/app/sense/media" "yovision.local/sense/internal/platform" ) func init() { registerModule(func(app *platform.App) error { var store admission.Store if app.Config().DatabaseMode == platform.DatabaseModeMemory { store = admission.NewMemoryStore() } else { store = admission.NewPostgresStore(app.Database()) } app.RegisterMigration(platform.Migration{Version: 2026081302, Name: "sense_admission_profiles", SQL: admission.MigrationSQL}) app.RegisterMigration(platform.Migration{Version: 2026081303, Name: "sense_admission_media_status", SQL: admission.MediaStatusMigrationSQL}) service := admission.NewService(onvif.NewHTTPClient(8*time.Second), rtsp.NetVerifier{Timeout: 5 * time.Second}, os.Getenv("SENSE_ONVIF_DISCOVERY_IP"), store) service.SetReadyHandler(media.ConfigureReadyProfiles) admission.NewModule(service).Register(app) return nil }) }