summaryrefslogtreecommitdiff
path: root/DomainDig/DomainDigApp.swift
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-04-25 00:25:18 -0500
committerChristian Cleberg <[email protected]>2026-04-25 00:25:18 -0500
commit1715e59287a7b48b29ed8cbf2cd45fcc92ec3126 (patch)
treecdca41731ecf7eff1aa83b20dc2a7c5fd33e649f /DomainDig/DomainDigApp.swift
parentfd34553ab0e63b4d3bc22532b61f4fef32846f34 (diff)
downloaddomain-dig-1715e59287a7b48b29ed8cbf2cd45fcc92ec3126.tar.gz
domain-dig-1715e59287a7b48b29ed8cbf2cd45fcc92ec3126.tar.bz2
domain-dig-1715e59287a7b48b29ed8cbf2cd45fcc92ec3126.zip
DomainDig v4.0.0 — Integrations
* Outbound webhook delivery * Native Slack webhook integration * SMTP-based email alerts * Per-integration event filtering * Reliable local delivery queue * Delivery logs and retry visibility * Integration management UI * Normalized event severity model * Canonical structured event payloads
Diffstat (limited to 'DomainDig/DomainDigApp.swift')
-rw-r--r--DomainDig/DomainDigApp.swift4
1 files changed, 4 insertions, 0 deletions
diff --git a/DomainDig/DomainDigApp.swift b/DomainDig/DomainDigApp.swift
index 4bb1b8f..2071213 100644
--- a/DomainDig/DomainDigApp.swift
+++ b/DomainDig/DomainDigApp.swift
@@ -28,16 +28,19 @@ struct DomainDigApp: App {
.task {
let _ = purchaseService.currentTier
let _ = cloudSyncService.status
+ let _ = IntegrationService.shared.targets.count
await purchaseService.refreshEntitlements()
viewModel.refreshMonitoringState()
await viewModel.refreshMonitoringAuthorizationStatus()
await cloudSyncService.refreshAvailability()
cloudSyncService.scheduleSyncIfNeeded(trigger: .launch)
viewModel.monitoringStatusMessage = DomainMonitoringScheduler.shared.syncSchedule()
+ IntegrationService.shared.processQueueNow()
}
.onReceive(NotificationCenter.default.publisher(for: .cloudSyncDidApplyChanges)) { _ in
viewModel.refreshPersistedData()
viewModel.monitoringStatusMessage = DomainMonitoringScheduler.shared.syncSchedule()
+ IntegrationService.shared.refresh()
}
}
.onChange(of: scenePhase) { _, newValue in
@@ -49,6 +52,7 @@ struct DomainDigApp: App {
}
cloudSyncService.scheduleSyncIfNeeded(trigger: .launch)
viewModel.monitoringStatusMessage = DomainMonitoringScheduler.shared.syncSchedule()
+ IntegrationService.shared.processQueueNow()
}
}
}