mirror of
https://dev.azure.com/globalhealthx/EMR/_git/helix-engage-server
synced 2026-04-12 02:18:18 +00:00
fix: server-side ACW auto-dispose (Layer 3) — 30s timeout safety net
When Ozonetel sends an ACW event, starts a 30-second timer. If no /api/ozonetel/dispose call arrives within that window (frontend crashed, tab closed, page refreshed), auto-disposes with "General Enquiry" + autoRelease:true. Agent exits ACW automatically. Timer is cancelled when: - Frontend submits disposition normally (cancelAcwTimer in controller) - Agent transitions to Ready or Offline - Agent logs out Wiring: OzonetelAgentModule now imports SupervisorModule (forwardRef for circular dep), controller injects SupervisorService to cancel the timer on successful dispose. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -4,9 +4,10 @@ import { OzonetelAgentService } from './ozonetel-agent.service';
|
||||
import { KookooIvrController } from './kookoo-ivr.controller';
|
||||
import { WorklistModule } from '../worklist/worklist.module';
|
||||
import { PlatformModule } from '../platform/platform.module';
|
||||
import { SupervisorModule } from '../supervisor/supervisor.module';
|
||||
|
||||
@Module({
|
||||
imports: [PlatformModule, forwardRef(() => WorklistModule)],
|
||||
imports: [PlatformModule, forwardRef(() => WorklistModule), forwardRef(() => SupervisorModule)],
|
||||
controllers: [OzonetelAgentController, KookooIvrController],
|
||||
providers: [OzonetelAgentService],
|
||||
exports: [OzonetelAgentService],
|
||||
|
||||
Reference in New Issue
Block a user