@absolutejs/voice 0.0.22-beta.54 → 0.0.22-beta.540
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4518 -951
- package/dist/angular/index.d.ts +36 -5
- package/dist/angular/index.js +4189 -390
- package/dist/angular/voice-agent-squad-status.service.d.ts +12 -0
- package/dist/angular/voice-call-debugger.service.d.ts +12 -0
- package/dist/angular/voice-call-player.service.d.ts +19 -0
- package/dist/angular/voice-campaign-dialer-proof.service.d.ts +14 -0
- package/dist/angular/voice-controller.service.d.ts +3 -1
- package/dist/angular/voice-cost-dashboard.service.d.ts +15 -0
- package/dist/angular/voice-delivery-runtime.service.d.ts +16 -0
- package/dist/angular/voice-live-agent-console.service.d.ts +16 -0
- package/dist/angular/voice-live-call-viewer.service.d.ts +16 -0
- package/dist/angular/voice-live-ops.service.d.ts +11 -0
- package/dist/angular/voice-ops-action-center.service.d.ts +13 -0
- package/dist/angular/voice-ops-status.service.d.ts +12 -0
- package/dist/angular/voice-platform-coverage.service.d.ts +12 -0
- package/dist/angular/voice-profile-comparison.service.d.ts +12 -0
- package/dist/angular/voice-proof-trends.service.d.ts +12 -0
- package/dist/angular/voice-provider-capabilities.service.d.ts +12 -0
- package/dist/angular/voice-provider-contracts.service.d.ts +12 -0
- package/dist/angular/voice-provider-status.service.d.ts +2 -2
- package/dist/angular/voice-readiness-failures.service.d.ts +13 -0
- package/dist/angular/voice-reconnect-profile-evidence.service.d.ts +12 -0
- package/dist/angular/voice-replay-timeline.service.d.ts +13 -0
- package/dist/angular/voice-routing-status.service.d.ts +11 -0
- package/dist/angular/voice-session-observability.service.d.ts +12 -0
- package/dist/angular/voice-session-snapshot.service.d.ts +13 -0
- package/dist/angular/voice-stream.service.d.ts +4 -1
- package/dist/angular/voice-trace-timeline.service.d.ts +12 -0
- package/dist/angular/voice-turn-latency.service.d.ts +13 -0
- package/dist/angular/voice-turn-quality.service.d.ts +12 -0
- package/dist/angular/voice-widget.service.d.ts +18 -0
- package/dist/angular/voice-workflow-status.service.d.ts +2 -2
- package/dist/client/actions.d.ts +95 -1
- package/dist/client/agentSquadStatus.d.ts +37 -0
- package/dist/client/agentSquadStatusWidget.d.ts +24 -0
- package/dist/client/audioPlayer.d.ts +2 -2
- package/dist/client/bargeInMonitor.d.ts +7 -0
- package/dist/client/browserMedia.d.ts +8 -0
- package/dist/client/browserNoiseSuppression.d.ts +42 -0
- package/dist/client/browserVoiceSupport.d.ts +22 -0
- package/dist/client/callDebugger.d.ts +21 -0
- package/dist/client/callDebuggerWidget.d.ts +30 -0
- package/dist/client/callPlayer.d.ts +41 -0
- package/dist/client/campaignDialerProof.d.ts +25 -0
- package/dist/client/connection.d.ts +4 -3
- package/dist/client/controller.d.ts +1 -1
- package/dist/client/conversationAnalytics.d.ts +30 -0
- package/dist/client/costDashboard.d.ts +27 -0
- package/dist/client/createVoiceStream.d.ts +1 -1
- package/dist/client/deliveryRuntime.d.ts +36 -0
- package/dist/client/deliveryRuntimeWidget.d.ts +37 -0
- package/dist/client/duplex.d.ts +2 -2
- package/dist/client/htmx.d.ts +1 -1
- package/dist/client/htmxAttributes.d.ts +24 -0
- package/dist/client/htmxBootstrap.js +1029 -73
- package/dist/client/htmxDashboardRenderers.d.ts +71 -0
- package/dist/client/index.d.ts +106 -15
- package/dist/client/index.js +10494 -279
- package/dist/client/liveAgentConsole.d.ts +28 -0
- package/dist/client/liveCallViewer.d.ts +42 -0
- package/dist/client/liveOps.d.ts +22 -0
- package/dist/client/liveOpsWidget.d.ts +23 -0
- package/dist/client/liveTurnLatency.d.ts +41 -0
- package/dist/client/microphone.d.ts +4 -4
- package/dist/client/opsActionCenter.d.ts +56 -0
- package/dist/client/opsActionCenterWidget.d.ts +29 -0
- package/dist/client/opsActionHistory.d.ts +21 -0
- package/dist/client/opsActionHistoryWidget.d.ts +11 -0
- package/dist/client/opsStatus.d.ts +21 -0
- package/dist/client/opsStatusWidget.d.ts +10 -10
- package/dist/client/platformCoverage.d.ts +21 -0
- package/dist/client/platformCoverageWidget.d.ts +38 -0
- package/dist/client/profileComparison.d.ts +21 -0
- package/dist/client/profileComparisonWidget.d.ts +41 -0
- package/dist/client/profileSwitchRecommendation.d.ts +21 -0
- package/dist/client/profileSwitchRecommendationWidget.d.ts +12 -0
- package/dist/client/proofTrends.d.ts +21 -0
- package/dist/client/proofTrendsWidget.d.ts +38 -0
- package/dist/client/providerCapabilities.d.ts +21 -0
- package/dist/client/providerCapabilitiesWidget.d.ts +32 -0
- package/dist/client/providerContracts.d.ts +21 -0
- package/dist/client/providerContractsWidget.d.ts +37 -0
- package/dist/client/providerSimulationControls.d.ts +33 -0
- package/dist/client/providerSimulationControlsWidget.d.ts +20 -0
- package/dist/client/providerStatus.d.ts +5 -3
- package/dist/client/providerStatusWidget.d.ts +32 -0
- package/dist/client/reactiveSource.d.ts +8 -0
- package/dist/client/readinessFailures.d.ts +21 -0
- package/dist/client/readinessFailuresWidget.d.ts +42 -0
- package/dist/client/reconnectProfileEvidence.d.ts +21 -0
- package/dist/client/reconnectProfileEvidenceWidget.d.ts +39 -0
- package/dist/client/replayTimeline.d.ts +26 -0
- package/dist/client/routingStatus.d.ts +21 -0
- package/dist/client/routingStatusWidget.d.ts +32 -0
- package/dist/client/sessionObservability.d.ts +21 -0
- package/dist/client/sessionObservabilityWidget.d.ts +31 -0
- package/dist/client/sessionSnapshot.d.ts +23 -0
- package/dist/client/sessionSnapshotWidget.d.ts +33 -0
- package/dist/client/store.d.ts +1 -1
- package/dist/client/traceTimeline.d.ts +21 -0
- package/dist/client/traceTimelineWidget.d.ts +36 -0
- package/dist/client/turnLatency.d.ts +24 -0
- package/dist/client/turnLatencyWidget.d.ts +33 -0
- package/dist/client/turnQuality.d.ts +21 -0
- package/dist/client/turnQualityWidget.d.ts +32 -0
- package/dist/client/voiceWidgetView.d.ts +48 -0
- package/dist/client/workflowStatus.d.ts +5 -3
- package/dist/{agent.d.ts → core/agent.d.ts} +81 -6
- package/dist/core/agentPerformanceReport.d.ts +40 -0
- package/dist/core/agentSquadContract.d.ts +98 -0
- package/dist/core/agentState.d.ts +12 -0
- package/dist/core/agentTools.d.ts +132 -0
- package/dist/core/aiScorecard.d.ts +32 -0
- package/dist/core/aiVoiceModel.d.ts +15 -0
- package/dist/core/amdDetector.d.ts +25 -0
- package/dist/{assistant.d.ts → core/assistant.d.ts} +14 -14
- package/dist/core/assistantExperiment.d.ts +42 -0
- package/dist/{assistantHealth.d.ts → core/assistantHealth.d.ts} +9 -9
- package/dist/{assistantMemory.d.ts → core/assistantMemory.d.ts} +10 -10
- package/dist/core/assistantMode.d.ts +22 -0
- package/dist/{audioConditioning.d.ts → core/audioConditioning.d.ts} +2 -2
- package/dist/core/audit.d.ts +131 -0
- package/dist/core/auditDeliveryRoutes.d.ts +85 -0
- package/dist/core/auditExport.d.ts +34 -0
- package/dist/core/auditRoutes.d.ts +66 -0
- package/dist/core/auditSinks.d.ts +151 -0
- package/dist/core/backchannel.d.ts +18 -0
- package/dist/core/bargeInRoutes.d.ts +56 -0
- package/dist/core/bookingFlow.d.ts +43 -0
- package/dist/core/browserCallProfiles.d.ts +120 -0
- package/dist/core/browserMediaRoutes.d.ts +62 -0
- package/dist/core/calendarAdapter.d.ts +47 -0
- package/dist/core/calendarSlots.d.ts +35 -0
- package/dist/core/callDebugger.d.ts +66 -0
- package/dist/core/callDisposition.d.ts +38 -0
- package/dist/core/callQuota.d.ts +54 -0
- package/dist/core/callScorecard.d.ts +53 -0
- package/dist/core/callerCRMLinker.d.ts +29 -0
- package/dist/core/callerMemory.d.ts +37 -0
- package/dist/core/callingWindow.d.ts +26 -0
- package/dist/core/campaign.d.ts +795 -0
- package/dist/core/campaignControls.d.ts +37 -0
- package/dist/core/campaignDialers.d.ts +111 -0
- package/dist/core/campaignTemplate.d.ts +16 -0
- package/dist/core/competitiveCoverage.d.ts +141 -0
- package/dist/core/conversationSimulator.d.ts +73 -0
- package/dist/{correction.d.ts → core/correction.d.ts} +5 -4
- package/dist/core/costAccounting.d.ts +76 -0
- package/dist/core/costPredictor.d.ts +74 -0
- package/dist/core/crmCallLogger.d.ts +37 -0
- package/dist/core/crmContract.d.ts +70 -0
- package/dist/core/dataControl.d.ts +180 -0
- package/dist/core/defineVoiceAssistant.d.ts +68 -0
- package/dist/core/deliveryRuntime.d.ts +159 -0
- package/dist/core/deliverySinkRoutes.d.ts +117 -0
- package/dist/core/demoReadyRoutes.d.ts +98 -0
- package/dist/{diagnosticsRoutes.d.ts → core/diagnosticsRoutes.d.ts} +2 -2
- package/dist/core/dncRegistry.d.ts +38 -0
- package/dist/core/dtmfCollector.d.ts +37 -0
- package/dist/{evalRoutes.d.ts → core/evalRoutes.d.ts} +26 -20
- package/dist/{fileStore.d.ts → core/fileStore.d.ts} +34 -20
- package/dist/core/guardrails.d.ts +128 -0
- package/dist/{handoff.d.ts → core/handoff.d.ts} +10 -10
- package/dist/{handoffHealth.d.ts → core/handoffHealth.d.ts} +9 -9
- package/dist/core/holdAudio.d.ts +23 -0
- package/dist/{htmx.d.ts → core/htmx.d.ts} +2 -2
- package/dist/core/htmxDashboardRoutes.d.ts +250 -0
- package/dist/core/iceServers.d.ts +34 -0
- package/dist/core/incidentBundle.d.ts +119 -0
- package/dist/core/incidentTimeline.d.ts +260 -0
- package/dist/core/ivrPlan.d.ts +40 -0
- package/dist/core/latencySlo.d.ts +56 -0
- package/dist/core/liveCoach.d.ts +43 -0
- package/dist/core/liveLatency.d.ts +78 -0
- package/dist/core/liveOps.d.ts +190 -0
- package/dist/core/llmJudge.d.ts +45 -0
- package/dist/{logger.d.ts → core/logger.d.ts} +1 -2
- package/dist/core/mcpToolset.d.ts +58 -0
- package/dist/core/mediaPipelineRoutes.d.ts +171 -0
- package/dist/core/mediaPipelineSurfaces.d.ts +48 -0
- package/dist/{memoryStore.d.ts → core/memoryStore.d.ts} +1 -1
- package/dist/core/midCallSummary.d.ts +27 -0
- package/dist/{modelAdapters.d.ts → core/modelAdapters.d.ts} +59 -7
- package/dist/core/monitor.d.ts +148 -0
- package/dist/core/multilingualProof.d.ts +77 -0
- package/dist/core/noShowPredictor.d.ts +46 -0
- package/dist/core/oauth2TokenSource.d.ts +21 -0
- package/dist/core/observabilityExport.d.ts +501 -0
- package/dist/core/openaiTTS.d.ts +18 -0
- package/dist/core/operationalStatus.d.ts +87 -0
- package/dist/core/operationsRecord.d.ts +371 -0
- package/dist/{ops.d.ts → core/ops.d.ts} +70 -70
- package/dist/core/opsActionAuditRoutes.d.ts +99 -0
- package/dist/{opsConsoleRoutes.d.ts → core/opsConsoleRoutes.d.ts} +11 -8
- package/dist/{opsPresets.d.ts → core/opsPresets.d.ts} +2 -2
- package/dist/core/opsRecovery.d.ts +137 -0
- package/dist/{opsRuntime.d.ts → core/opsRuntime.d.ts} +6 -6
- package/dist/{opsSinks.d.ts → core/opsSinks.d.ts} +19 -19
- package/dist/core/opsStatus.d.ts +76 -0
- package/dist/core/opsStatusRoutes.d.ts +33 -0
- package/dist/{opsWebhook.d.ts → core/opsWebhook.d.ts} +15 -15
- package/dist/core/otelExporter.d.ts +83 -0
- package/dist/core/outcomeContract.d.ts +146 -0
- package/dist/{outcomeRecipes.d.ts → core/outcomeRecipes.d.ts} +4 -4
- package/dist/core/pathway.d.ts +94 -0
- package/dist/core/pathwayCompiler.d.ts +31 -0
- package/dist/core/pathwayGenerator.d.ts +27 -0
- package/dist/core/pathwayRuntime.d.ts +57 -0
- package/dist/core/pathwaySlotCollector.d.ts +29 -0
- package/dist/core/pathwayVisualizer.d.ts +8 -0
- package/dist/core/phoneAgent.d.ts +139 -0
- package/dist/core/phoneAgentProductionSmoke.d.ts +115 -0
- package/dist/core/phoneProvisioning.d.ts +29 -0
- package/dist/core/platformCoverage.d.ts +91 -0
- package/dist/{plugin.d.ts → core/plugin.d.ts} +2 -2
- package/dist/core/postCallAnalysis.d.ts +98 -0
- package/dist/core/postCallSurvey.d.ts +41 -0
- package/dist/{postgresStore.d.ts → core/postgresStore.d.ts} +20 -9
- package/dist/{presets.d.ts → core/presets.d.ts} +3 -3
- package/dist/core/productionReadiness.d.ts +757 -0
- package/dist/core/profileSwitchRecommendation.d.ts +350 -0
- package/dist/core/promptInjectionGuard.d.ts +30 -0
- package/dist/core/proofAssertions.d.ts +32 -0
- package/dist/core/proofPack.d.ts +211 -0
- package/dist/core/proofRunner.d.ts +79 -0
- package/dist/core/proofTrends.d.ts +966 -0
- package/dist/{providerAdapters.d.ts → core/providerAdapters.d.ts} +16 -5
- package/dist/core/providerCapabilities.d.ts +92 -0
- package/dist/core/providerDecisionTraces.d.ts +130 -0
- package/dist/{providerHealth.d.ts → core/providerHealth.d.ts} +15 -5
- package/dist/core/providerOrchestration.d.ts +109 -0
- package/dist/core/providerRouterTraces.d.ts +35 -0
- package/dist/core/providerRoutingContract.d.ts +71 -0
- package/dist/core/providerSlo.d.ts +142 -0
- package/dist/core/providerStackRecommendations.d.ts +188 -0
- package/dist/core/qualityDriftDetector.d.ts +44 -0
- package/dist/{qualityRoutes.d.ts → core/qualityRoutes.d.ts} +7 -7
- package/dist/{queue.d.ts → core/queue.d.ts} +48 -39
- package/dist/core/ragTool.d.ts +52 -0
- package/dist/core/readinessProfiles.d.ts +45 -0
- package/dist/core/realtimeChannel.d.ts +136 -0
- package/dist/core/realtimeProviderContracts.d.ts +133 -0
- package/dist/core/reconnectContract.d.ts +177 -0
- package/dist/core/recordingRedaction.d.ts +47 -0
- package/dist/core/recordingStore.d.ts +60 -0
- package/dist/core/redaction.d.ts +13 -0
- package/dist/core/reminderScheduler.d.ts +43 -0
- package/dist/{resilienceRoutes.d.ts → core/resilienceRoutes.d.ts} +45 -5
- package/dist/core/retention.d.ts +37 -0
- package/dist/core/retryPolicy.d.ts +38 -0
- package/dist/core/routeAuth.d.ts +58 -0
- package/dist/{routing.d.ts → core/routing.d.ts} +2 -2
- package/dist/{runtimeOps.d.ts → core/runtimeOps.d.ts} +3 -3
- package/dist/{s3Store.d.ts → core/s3Store.d.ts} +12 -3
- package/dist/core/scorecardCalibration.d.ts +31 -0
- package/dist/core/semanticTurn.d.ts +27 -0
- package/dist/{session.d.ts → core/session.d.ts} +1 -1
- package/dist/core/sessionObservability.d.ts +145 -0
- package/dist/{sessionReplay.d.ts → core/sessionReplay.d.ts} +31 -19
- package/dist/core/sessionSnapshot.d.ts +109 -0
- package/dist/core/simulationSuite.d.ts +144 -0
- package/dist/core/sloCalibration.d.ts +185 -0
- package/dist/{sqliteStore.d.ts → core/sqliteStore.d.ts} +20 -9
- package/dist/{store.d.ts → core/store.d.ts} +1 -1
- package/dist/core/supervisorPermissions.d.ts +33 -0
- package/dist/core/supervisorPresence.d.ts +49 -0
- package/dist/core/telephonyMediaRoutes.d.ts +72 -0
- package/dist/core/telephonyOutcome.d.ts +269 -0
- package/dist/core/toolContract.d.ts +161 -0
- package/dist/core/toolRuntime.d.ts +50 -0
- package/dist/{trace.d.ts → core/trace.d.ts} +61 -22
- package/dist/core/traceDeliveryRoutes.d.ts +86 -0
- package/dist/core/traceTimeline.d.ts +97 -0
- package/dist/core/transcriptAnnotator.d.ts +41 -0
- package/dist/{turnDetection.d.ts → core/turnDetection.d.ts} +1 -1
- package/dist/core/turnLatency.d.ts +95 -0
- package/dist/core/turnProfiles.d.ts +3 -0
- package/dist/core/turnQuality.d.ts +94 -0
- package/dist/{types.d.ts → core/types.d.ts} +416 -81
- package/dist/core/vapiAdapter.d.ts +160 -0
- package/dist/core/variableAnalytics.d.ts +47 -0
- package/dist/core/voiceConfiguration.d.ts +8 -0
- package/dist/core/voiceMonitoring.d.ts +444 -0
- package/dist/core/webhookFanout.d.ts +48 -0
- package/dist/core/webhookVerification.d.ts +27 -0
- package/dist/core/whisperChannel.d.ts +50 -0
- package/dist/{workflowContract.d.ts → core/workflowContract.d.ts} +21 -21
- package/dist/core/zeroDataRetention.d.ts +31 -0
- package/dist/drizzle/assistantMemory.d.ts +112 -0
- package/dist/drizzle/eval.d.ts +61 -0
- package/dist/drizzle/handoff.d.ts +62 -0
- package/dist/drizzle/incidentBundle.d.ts +61 -0
- package/dist/drizzle/index.d.ts +1105 -0
- package/dist/drizzle/index.js +3059 -0
- package/dist/drizzle/observabilityExport.d.ts +61 -0
- package/dist/drizzle/proofTrends.d.ts +126 -0
- package/dist/drizzle/runtimeStorage.d.ts +1315 -0
- package/dist/drizzle/shared.d.ts +76 -0
- package/dist/embed/index.d.ts +38 -0
- package/dist/embed/index.js +1710 -0
- package/dist/embed/voice-widget.js +10 -0
- package/dist/index.d.ts +369 -74
- package/dist/index.js +45779 -7413
- package/dist/internal/evidence.d.ts +10 -0
- package/dist/internal/html.d.ts +6 -0
- package/dist/internal/status.d.ts +7 -0
- package/dist/react/VoiceAgentSquadStatus.d.ts +5 -0
- package/dist/react/VoiceCallDebuggerLaunch.d.ts +6 -0
- package/dist/react/VoiceCallPlayer.d.ts +11 -0
- package/dist/react/VoiceCostDashboard.d.ts +10 -0
- package/dist/react/VoiceDeliveryRuntime.d.ts +7 -0
- package/dist/react/VoiceLiveAgentConsole.d.ts +11 -0
- package/dist/react/VoiceLiveCallViewer.d.ts +9 -0
- package/dist/react/VoiceOpsActionCenter.d.ts +5 -0
- package/dist/react/VoiceOpsStatus.d.ts +1 -1
- package/dist/react/VoicePlatformCoverage.d.ts +6 -0
- package/dist/react/VoiceProfileComparison.d.ts +6 -0
- package/dist/react/VoiceProfileSwitchRecommendation.d.ts +6 -0
- package/dist/react/VoiceProofTrends.d.ts +6 -0
- package/dist/react/VoiceProviderCapabilities.d.ts +6 -0
- package/dist/react/VoiceProviderContracts.d.ts +6 -0
- package/dist/react/VoiceProviderSimulationControls.d.ts +5 -0
- package/dist/react/VoiceProviderStatus.d.ts +6 -0
- package/dist/react/VoiceReadinessFailures.d.ts +6 -0
- package/dist/react/VoiceReconnectProfileEvidence.d.ts +6 -0
- package/dist/react/VoiceReplayTimeline.d.ts +6 -0
- package/dist/react/VoiceRoutingStatus.d.ts +6 -0
- package/dist/react/VoiceSessionObservability.d.ts +6 -0
- package/dist/react/VoiceSessionSnapshot.d.ts +6 -0
- package/dist/react/VoiceTraceTimeline.d.ts +6 -0
- package/dist/react/VoiceTurnLatency.d.ts +6 -0
- package/dist/react/VoiceTurnQuality.d.ts +6 -0
- package/dist/react/VoiceWidget.d.ts +13 -0
- package/dist/react/index.d.ts +80 -6
- package/dist/react/index.js +12900 -320
- package/dist/react/useVoiceAgentSquadStatus.d.ts +8 -0
- package/dist/react/useVoiceCallDebugger.d.ts +8 -0
- package/dist/react/useVoiceCampaignDialerProof.d.ts +10 -0
- package/dist/react/useVoiceController.d.ts +4 -1
- package/dist/react/useVoiceDeliveryRuntime.d.ts +13 -0
- package/dist/react/useVoiceLiveOps.d.ts +9 -0
- package/dist/react/useVoiceOpsActionCenter.d.ts +11 -0
- package/dist/react/useVoiceOpsStatus.d.ts +8 -0
- package/dist/react/useVoicePlatformCoverage.d.ts +8 -0
- package/dist/react/useVoiceProfileComparison.d.ts +8 -0
- package/dist/react/useVoiceProfileSwitchRecommendation.d.ts +8 -0
- package/dist/react/useVoiceProofTrends.d.ts +8 -0
- package/dist/react/useVoiceProviderCapabilities.d.ts +8 -0
- package/dist/react/useVoiceProviderContracts.d.ts +8 -0
- package/dist/react/useVoiceProviderSimulationControls.d.ts +10 -0
- package/dist/react/useVoiceProviderStatus.d.ts +1 -1
- package/dist/react/useVoiceReadinessFailures.d.ts +8 -0
- package/dist/react/useVoiceReconnectProfileEvidence.d.ts +8 -0
- package/dist/react/useVoiceRoutingStatus.d.ts +8 -0
- package/dist/react/useVoiceSessionObservability.d.ts +8 -0
- package/dist/react/useVoiceSessionSnapshot.d.ts +9 -0
- package/dist/react/useVoiceStream.d.ts +4 -1
- package/dist/react/useVoiceTraceTimeline.d.ts +8 -0
- package/dist/react/useVoiceTurnLatency.d.ts +9 -0
- package/dist/react/useVoiceTurnQuality.d.ts +8 -0
- package/dist/react/useVoiceWorkflowStatus.d.ts +1 -1
- package/dist/svelte/createVoiceAgentSquadStatus.d.ts +9 -0
- package/dist/svelte/createVoiceCallDebugger.d.ts +10 -0
- package/dist/svelte/createVoiceCallPlayer.d.ts +33 -0
- package/dist/svelte/createVoiceCampaignDialerProof.d.ts +9 -0
- package/dist/svelte/createVoiceCostDashboard.d.ts +13 -0
- package/dist/svelte/createVoiceDeliveryRuntime.d.ts +11 -0
- package/dist/svelte/createVoiceLiveAgentConsole.d.ts +23 -0
- package/dist/svelte/createVoiceLiveCallViewer.d.ts +26 -0
- package/dist/svelte/createVoiceLiveOps.d.ts +13 -0
- package/dist/svelte/createVoiceOpsActionCenter.d.ts +10 -0
- package/dist/svelte/createVoiceOpsStatus.d.ts +4 -4
- package/dist/svelte/createVoicePlatformCoverage.d.ts +7 -0
- package/dist/svelte/createVoiceProfileComparison.d.ts +7 -0
- package/dist/svelte/createVoiceProofTrends.d.ts +7 -0
- package/dist/svelte/createVoiceProviderCapabilities.d.ts +10 -0
- package/dist/svelte/createVoiceProviderContracts.d.ts +10 -0
- package/dist/svelte/createVoiceProviderSimulationControls.d.ts +11 -0
- package/dist/svelte/createVoiceProviderStatus.d.ts +5 -3
- package/dist/svelte/createVoiceReadinessFailures.d.ts +7 -0
- package/dist/svelte/createVoiceReconnectProfileEvidence.d.ts +7 -0
- package/dist/svelte/createVoiceReplayTimeline.d.ts +13 -0
- package/dist/svelte/createVoiceRoutingStatus.d.ts +10 -0
- package/dist/svelte/createVoiceSessionObservability.d.ts +10 -0
- package/dist/svelte/createVoiceSessionSnapshot.d.ts +11 -0
- package/dist/svelte/createVoiceStream.d.ts +1 -1
- package/dist/svelte/createVoiceTraceTimeline.d.ts +10 -0
- package/dist/svelte/createVoiceTurnLatency.d.ts +11 -0
- package/dist/svelte/createVoiceTurnQuality.d.ts +10 -0
- package/dist/svelte/createVoiceWidget.d.ts +19 -0
- package/dist/svelte/createVoiceWorkflowStatus.d.ts +2 -2
- package/dist/svelte/index.d.ts +37 -6
- package/dist/svelte/index.js +7047 -768
- package/dist/telephony/contract.d.ts +61 -0
- package/dist/telephony/matrix.d.ts +97 -0
- package/dist/telephony/plivo.d.ts +303 -0
- package/dist/telephony/response.d.ts +1 -1
- package/dist/telephony/security.d.ts +182 -0
- package/dist/telephony/telnyx.d.ts +291 -0
- package/dist/telephony/twilio.d.ts +149 -15
- package/dist/testing/accuracy.d.ts +1 -1
- package/dist/testing/benchmark.d.ts +15 -15
- package/dist/testing/corrected.d.ts +9 -9
- package/dist/testing/duplex.d.ts +5 -5
- package/dist/testing/fixtures.d.ts +4 -4
- package/dist/testing/index.d.ts +13 -13
- package/dist/testing/index.js +5756 -636
- package/dist/testing/ioProviderSimulator.d.ts +5 -5
- package/dist/testing/providerSimulator.d.ts +5 -5
- package/dist/testing/review.d.ts +8 -8
- package/dist/testing/sessionBenchmark.d.ts +13 -13
- package/dist/testing/stt.d.ts +3 -3
- package/dist/testing/telephony.d.ts +27 -2
- package/dist/testing/tts.d.ts +2 -2
- package/dist/vue/VoiceCallDebuggerLaunch.d.ts +72 -0
- package/dist/vue/VoiceCallPlayer.d.ts +40 -0
- package/dist/vue/VoiceCostDashboard.d.ts +57 -0
- package/dist/vue/VoiceDeliveryRuntime.d.ts +34 -0
- package/dist/vue/VoiceLiveAgentConsole.d.ts +50 -0
- package/dist/vue/VoiceLiveCallViewer.d.ts +35 -0
- package/dist/vue/VoiceOpsActionCenter.d.ts +13 -0
- package/dist/vue/VoiceOpsStatus.d.ts +4 -0
- package/dist/vue/VoicePlatformCoverage.d.ts +27 -0
- package/dist/vue/VoiceProofTrends.d.ts +25 -0
- package/dist/vue/VoiceProviderCapabilities.d.ts +55 -0
- package/dist/vue/VoiceProviderContracts.d.ts +25 -0
- package/dist/vue/VoiceProviderSimulationControls.d.ts +88 -0
- package/dist/vue/VoiceProviderStatus.d.ts +55 -0
- package/dist/vue/VoiceReadinessFailures.d.ts +25 -0
- package/dist/vue/VoiceReconnectProfileEvidence.d.ts +25 -0
- package/dist/vue/VoiceReplayTimeline.d.ts +17 -0
- package/dist/vue/VoiceRoutingStatus.d.ts +55 -0
- package/dist/vue/VoiceSessionObservability.d.ts +27 -0
- package/dist/vue/VoiceSessionSnapshot.d.ts +72 -0
- package/dist/vue/VoiceTurnLatency.d.ts +73 -0
- package/dist/vue/VoiceTurnQuality.d.ts +55 -0
- package/dist/vue/VoiceWidget.d.ts +77 -0
- package/dist/vue/index.d.ts +49 -6
- package/dist/vue/index.js +12193 -402
- package/dist/vue/useVoiceAgentSquadStatus.d.ts +9 -0
- package/dist/vue/useVoiceCallDebugger.d.ts +10 -0
- package/dist/vue/useVoiceCampaignDialerProof.d.ts +11 -0
- package/dist/vue/useVoiceController.d.ts +9 -7
- package/dist/vue/useVoiceDeliveryRuntime.d.ts +13 -0
- package/dist/vue/useVoiceLiveOps.d.ts +9 -0
- package/dist/vue/useVoiceOpsActionCenter.d.ts +11 -0
- package/dist/vue/useVoiceOpsStatus.d.ts +9 -0
- package/dist/vue/useVoicePlatformCoverage.d.ts +9 -0
- package/dist/vue/useVoiceProfileComparison.d.ts +9 -0
- package/dist/vue/useVoiceProofTrends.d.ts +9 -0
- package/dist/vue/useVoiceProviderCapabilities.d.ts +9 -0
- package/dist/vue/useVoiceProviderContracts.d.ts +9 -0
- package/dist/vue/useVoiceProviderSimulationControls.d.ts +24 -0
- package/dist/vue/useVoiceProviderStatus.d.ts +3 -3
- package/dist/vue/useVoiceReadinessFailures.d.ts +959 -0
- package/dist/vue/useVoiceReconnectProfileEvidence.d.ts +9 -0
- package/dist/vue/useVoiceRoutingStatus.d.ts +8 -0
- package/dist/vue/useVoiceSessionObservability.d.ts +9 -0
- package/dist/vue/useVoiceSessionSnapshot.d.ts +10 -0
- package/dist/vue/useVoiceStream.d.ts +9 -6
- package/dist/vue/useVoiceTraceTimeline.d.ts +9 -0
- package/dist/vue/useVoiceTurnLatency.d.ts +10 -0
- package/dist/vue/useVoiceTurnQuality.d.ts +9 -0
- package/dist/vue/useVoiceWorkflowStatus.d.ts +3 -3
- package/package.json +154 -256
- package/dist/angular/voice-app-kit-status.service.d.ts +0 -12
- package/dist/angular/voice-ops-status.component.d.ts +0 -15
- package/dist/appKit.d.ts +0 -92
- package/dist/client/appKitStatus.d.ts +0 -19
- package/dist/react/useVoiceAppKitStatus.d.ts +0 -8
- package/dist/svelte/createVoiceAppKitStatus.d.ts +0 -8
- package/dist/turnProfiles.d.ts +0 -6
- package/dist/vue/useVoiceAppKitStatus.d.ts +0 -9
- package/fixtures/README.md +0 -57
- package/fixtures/manifest.json +0 -199
- package/fixtures/pcm/dialogue-three-clean.pcm +0 -0
- package/fixtures/pcm/dialogue-three-mixed.pcm +0 -0
- package/fixtures/pcm/dialogue-two-clean.pcm +0 -0
- package/fixtures/pcm/dialogue-two-noisy.pcm +0 -0
- package/fixtures/pcm/multiturn-three-mixed.pcm +0 -0
- package/fixtures/pcm/multiturn-two-clean.pcm +0 -0
- package/fixtures/pcm/quietly-alone-clean.pcm +0 -0
- package/fixtures/pcm/rainstorms-noisy.pcm +0 -0
- package/fixtures/pcm/stella-bulgaria-bulgarian20.pcm +0 -0
- package/fixtures/pcm/stella-ghana-english507.pcm +0 -0
- package/fixtures/pcm/stella-india-english37.pcm +0 -0
- package/fixtures/pcm/stella-jamaica-jamaican-creole-english1.pcm +0 -0
- package/fixtures/pcm/stella-liberia-liberian-pidgin-english2.pcm +0 -0
- package/fixtures/pcm/stella-pakistan-english519.pcm +0 -0
- package/fixtures/pcm/stella-sierra-leone-krio5.pcm +0 -0
- package/fixtures/pcm/stella-singapore-english655.pcm +0 -0
- package/fixtures/pcm/traveled-back-route-clean.pcm +0 -0
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { Elysia } from "elysia";
|
|
2
|
+
import type { VoiceReadinessProfileName } from "./readinessProfiles";
|
|
3
|
+
export type VoiceProviderStackKind = "llm" | "stt" | "tts";
|
|
4
|
+
export type VoiceProviderStackInput<TProvider extends string = string> = {
|
|
5
|
+
profile: VoiceReadinessProfileName;
|
|
6
|
+
providers: Partial<Record<VoiceProviderStackKind, readonly TProvider[]>>;
|
|
7
|
+
};
|
|
8
|
+
export type VoiceProviderStackChoice<TProvider extends string = string> = {
|
|
9
|
+
alternatives: TProvider[];
|
|
10
|
+
provider?: TProvider;
|
|
11
|
+
reasons: string[];
|
|
12
|
+
};
|
|
13
|
+
export type VoiceProviderStackRecommendation<TProvider extends string = string> = {
|
|
14
|
+
profile: VoiceReadinessProfileName;
|
|
15
|
+
reasons: string[];
|
|
16
|
+
recommended: Partial<Record<VoiceProviderStackKind, TProvider>>;
|
|
17
|
+
stacks: Partial<Record<VoiceProviderStackKind, VoiceProviderStackChoice<TProvider>>>;
|
|
18
|
+
};
|
|
19
|
+
export type VoiceProviderStackCapabilities<TProvider extends string = string> = Partial<Record<VoiceProviderStackKind, Partial<Record<TProvider, readonly string[]>>>>;
|
|
20
|
+
export type VoiceProviderStackCapabilityGap<TProvider extends string = string> = {
|
|
21
|
+
kind: VoiceProviderStackKind;
|
|
22
|
+
missing: string[];
|
|
23
|
+
present: string[];
|
|
24
|
+
provider?: TProvider;
|
|
25
|
+
required: string[];
|
|
26
|
+
status: "fail" | "pass" | "warn";
|
|
27
|
+
};
|
|
28
|
+
export type VoiceProviderStackCapabilityGapReport<TProvider extends string = string> = {
|
|
29
|
+
gaps: VoiceProviderStackCapabilityGap<TProvider>[];
|
|
30
|
+
missing: number;
|
|
31
|
+
profile: VoiceReadinessProfileName;
|
|
32
|
+
status: "fail" | "pass" | "warn";
|
|
33
|
+
};
|
|
34
|
+
export type VoiceProviderStackAssertionInput<TProvider extends string = string> = {
|
|
35
|
+
maxMissing?: number;
|
|
36
|
+
maxStatus?: VoiceProviderContractCheckStatus;
|
|
37
|
+
requireProviders?: boolean;
|
|
38
|
+
requiredKinds?: VoiceProviderStackKind[];
|
|
39
|
+
requiredProviders?: TProvider[];
|
|
40
|
+
requiredCapabilities?: Partial<Record<VoiceProviderStackKind, readonly string[]>>;
|
|
41
|
+
};
|
|
42
|
+
export type VoiceProviderStackAssertionReport<TProvider extends string = string> = {
|
|
43
|
+
issues: string[];
|
|
44
|
+
kinds: VoiceProviderStackKind[];
|
|
45
|
+
missing: number;
|
|
46
|
+
ok: boolean;
|
|
47
|
+
providers: TProvider[];
|
|
48
|
+
status: VoiceProviderContractCheckStatus;
|
|
49
|
+
};
|
|
50
|
+
export type VoiceProviderStackCapabilityGapInput<TProvider extends string = string> = VoiceProviderStackInput<TProvider> & {
|
|
51
|
+
capabilities?: VoiceProviderStackCapabilities<TProvider>;
|
|
52
|
+
recommendation?: VoiceProviderStackRecommendation<TProvider>;
|
|
53
|
+
required?: Partial<Record<VoiceProviderStackKind, readonly string[]>>;
|
|
54
|
+
};
|
|
55
|
+
export type VoiceProviderContractCheckStatus = "fail" | "pass" | "warn";
|
|
56
|
+
type VoiceProviderContractRemediation = {
|
|
57
|
+
code: string;
|
|
58
|
+
detail: string;
|
|
59
|
+
href?: string;
|
|
60
|
+
label: string;
|
|
61
|
+
};
|
|
62
|
+
export type VoiceProviderContractCheck = {
|
|
63
|
+
detail?: string;
|
|
64
|
+
key: string;
|
|
65
|
+
label: string;
|
|
66
|
+
remediation?: VoiceProviderContractRemediation;
|
|
67
|
+
status: VoiceProviderContractCheckStatus;
|
|
68
|
+
};
|
|
69
|
+
export type VoiceProviderContractDefinition<TProvider extends string = string> = {
|
|
70
|
+
capabilities?: readonly string[];
|
|
71
|
+
configured?: boolean;
|
|
72
|
+
env?: Record<string, string | undefined>;
|
|
73
|
+
fallbackProviders?: readonly TProvider[];
|
|
74
|
+
kind: VoiceProviderStackKind;
|
|
75
|
+
latencyBudgetMs?: number;
|
|
76
|
+
provider: TProvider;
|
|
77
|
+
requiredCapabilities?: readonly string[];
|
|
78
|
+
requiredEnv?: readonly string[];
|
|
79
|
+
remediationHref?: string;
|
|
80
|
+
selected?: boolean;
|
|
81
|
+
streaming?: boolean;
|
|
82
|
+
};
|
|
83
|
+
export type VoiceProviderContractMatrixInput<TProvider extends string = string> = {
|
|
84
|
+
contracts: readonly VoiceProviderContractDefinition<TProvider>[];
|
|
85
|
+
};
|
|
86
|
+
export type VoiceProviderContractMatrixPresetOptions<TProvider extends string = string> = {
|
|
87
|
+
capabilities?: VoiceProviderStackCapabilities<TProvider>;
|
|
88
|
+
configured?: Partial<Record<TProvider, boolean>>;
|
|
89
|
+
env?: Record<string, string | undefined>;
|
|
90
|
+
fallbackProviders?: Partial<Record<VoiceProviderStackKind, readonly TProvider[]>>;
|
|
91
|
+
latencyBudgets?: Partial<Record<TProvider, number>>;
|
|
92
|
+
providers: Partial<Record<VoiceProviderStackKind, readonly TProvider[]>>;
|
|
93
|
+
remediationHref?: string;
|
|
94
|
+
selected?: Partial<Record<VoiceProviderStackKind, TProvider>>;
|
|
95
|
+
streaming?: Partial<Record<TProvider, boolean>>;
|
|
96
|
+
};
|
|
97
|
+
export type VoiceProviderContractMatrixHandlerOptions<TProvider extends string = string> = VoiceProviderContractMatrixInput<TProvider> | (() => Promise<VoiceProviderContractMatrixInput<TProvider>> | VoiceProviderContractMatrixInput<TProvider>);
|
|
98
|
+
export type VoiceProviderContractMatrixHTMLHandlerOptions<TProvider extends string = string> = {
|
|
99
|
+
matrix: VoiceProviderContractMatrixHandlerOptions<TProvider>;
|
|
100
|
+
render?: (report: VoiceProviderContractMatrixReport<TProvider>) => string | Promise<string>;
|
|
101
|
+
title?: string;
|
|
102
|
+
};
|
|
103
|
+
export type VoiceProviderContractMatrixRoutesOptions<TProvider extends string = string> = VoiceProviderContractMatrixHTMLHandlerOptions<TProvider> & {
|
|
104
|
+
headers?: HeadersInit;
|
|
105
|
+
htmlPath?: false | string;
|
|
106
|
+
name?: string;
|
|
107
|
+
path?: string;
|
|
108
|
+
};
|
|
109
|
+
export type VoiceProviderContractMatrixRow<TProvider extends string = string> = {
|
|
110
|
+
checks: VoiceProviderContractCheck[];
|
|
111
|
+
configured: boolean;
|
|
112
|
+
kind: VoiceProviderStackKind;
|
|
113
|
+
provider: TProvider;
|
|
114
|
+
selected: boolean;
|
|
115
|
+
status: VoiceProviderContractCheckStatus;
|
|
116
|
+
};
|
|
117
|
+
export type VoiceProviderContractMatrixReport<TProvider extends string = string> = {
|
|
118
|
+
failed: number;
|
|
119
|
+
passed: number;
|
|
120
|
+
rows: VoiceProviderContractMatrixRow<TProvider>[];
|
|
121
|
+
status: VoiceProviderContractCheckStatus;
|
|
122
|
+
total: number;
|
|
123
|
+
warned: number;
|
|
124
|
+
};
|
|
125
|
+
export type VoiceProviderContractMatrixAssertionInput<TProvider extends string = string> = {
|
|
126
|
+
maxFailed?: number;
|
|
127
|
+
maxStatus?: VoiceProviderContractCheckStatus;
|
|
128
|
+
maxWarned?: number;
|
|
129
|
+
minRows?: number;
|
|
130
|
+
requireAllSelected?: boolean;
|
|
131
|
+
requiredCheckKeys?: string[];
|
|
132
|
+
requiredKinds?: VoiceProviderStackKind[];
|
|
133
|
+
requiredProviders?: TProvider[];
|
|
134
|
+
selectedKinds?: VoiceProviderStackKind[];
|
|
135
|
+
};
|
|
136
|
+
export type VoiceProviderContractMatrixAssertionReport<TProvider extends string = string> = {
|
|
137
|
+
failed: number;
|
|
138
|
+
issues: string[];
|
|
139
|
+
kinds: VoiceProviderStackKind[];
|
|
140
|
+
ok: boolean;
|
|
141
|
+
providers: TProvider[];
|
|
142
|
+
selectedKinds: VoiceProviderStackKind[];
|
|
143
|
+
status: VoiceProviderContractCheckStatus;
|
|
144
|
+
total: number;
|
|
145
|
+
warned: number;
|
|
146
|
+
};
|
|
147
|
+
export declare const recommendVoiceProviderStack: <TProvider extends string = string>(input: VoiceProviderStackInput<TProvider>) => VoiceProviderStackRecommendation<TProvider>;
|
|
148
|
+
export declare const assertVoiceProviderContractMatrixEvidence: <TProvider extends string = string>(report: VoiceProviderContractMatrixReport<TProvider>, input?: VoiceProviderContractMatrixAssertionInput<TProvider>) => VoiceProviderContractMatrixAssertionReport<TProvider>;
|
|
149
|
+
export declare const buildVoiceProviderContractMatrix: <TProvider extends string = string>(input: VoiceProviderContractMatrixInput<TProvider>) => VoiceProviderContractMatrixReport<TProvider>;
|
|
150
|
+
export declare const createVoiceProviderContractMatrixPreset: <TProvider extends string = string>(profile: VoiceReadinessProfileName, options: VoiceProviderContractMatrixPresetOptions<TProvider>) => VoiceProviderContractMatrixInput<TProvider>;
|
|
151
|
+
export declare const evaluateVoiceProviderContractMatrixEvidence: <TProvider extends string = string>(report: VoiceProviderContractMatrixReport<TProvider>, input?: VoiceProviderContractMatrixAssertionInput<TProvider>) => VoiceProviderContractMatrixAssertionReport<TProvider>;
|
|
152
|
+
export declare const createVoiceProviderContractMatrixHTMLHandler: <TProvider extends string = string>(options: VoiceProviderContractMatrixHTMLHandlerOptions<TProvider>) => () => Promise<Response>;
|
|
153
|
+
export declare const createVoiceProviderContractMatrixJSONHandler: <TProvider extends string = string>(matrix: VoiceProviderContractMatrixHandlerOptions<TProvider>) => () => Promise<VoiceProviderContractMatrixReport<TProvider>>;
|
|
154
|
+
export declare const createVoiceProviderContractMatrixRoutes: <TProvider extends string = string>(options: VoiceProviderContractMatrixRoutesOptions<TProvider>) => Elysia<"", {
|
|
155
|
+
decorator: {};
|
|
156
|
+
store: {};
|
|
157
|
+
derive: {};
|
|
158
|
+
resolve: {};
|
|
159
|
+
}, {
|
|
160
|
+
typebox: {};
|
|
161
|
+
error: {};
|
|
162
|
+
}, {
|
|
163
|
+
schema: {};
|
|
164
|
+
standaloneSchema: {};
|
|
165
|
+
macro: {};
|
|
166
|
+
macroFn: {};
|
|
167
|
+
parser: {};
|
|
168
|
+
response: {};
|
|
169
|
+
}, {}, {
|
|
170
|
+
derive: {};
|
|
171
|
+
resolve: {};
|
|
172
|
+
schema: {};
|
|
173
|
+
standaloneSchema: {};
|
|
174
|
+
response: {};
|
|
175
|
+
}, {
|
|
176
|
+
derive: {};
|
|
177
|
+
resolve: {};
|
|
178
|
+
schema: {};
|
|
179
|
+
standaloneSchema: {};
|
|
180
|
+
response: {};
|
|
181
|
+
}>;
|
|
182
|
+
export declare const renderVoiceProviderContractMatrixHTML: <TProvider extends string = string>(report: VoiceProviderContractMatrixReport<TProvider>, options?: {
|
|
183
|
+
title?: string;
|
|
184
|
+
}) => string;
|
|
185
|
+
export declare const assertVoiceProviderStackEvidence: <TProvider extends string = string>(report: VoiceProviderStackCapabilityGapReport<TProvider>, input?: VoiceProviderStackAssertionInput<TProvider>) => VoiceProviderStackAssertionReport<TProvider>;
|
|
186
|
+
export declare const evaluateVoiceProviderStackEvidence: <TProvider extends string = string>(report: VoiceProviderStackCapabilityGapReport<TProvider>, input?: VoiceProviderStackAssertionInput<TProvider>) => VoiceProviderStackAssertionReport<TProvider>;
|
|
187
|
+
export declare const evaluateVoiceProviderStackGaps: <TProvider extends string = string>(input: VoiceProviderStackCapabilityGapInput<TProvider>) => VoiceProviderStackCapabilityGapReport<TProvider>;
|
|
188
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { VoiceScorecard } from "./callScorecard";
|
|
2
|
+
export type VoiceQualityDriftSeverity = "ok" | "watch" | "regression";
|
|
3
|
+
export type VoiceQualityDriftCriterionAlert = {
|
|
4
|
+
criterionId: string;
|
|
5
|
+
baselineAverage: number;
|
|
6
|
+
currentAverage: number;
|
|
7
|
+
delta: number;
|
|
8
|
+
severity: VoiceQualityDriftSeverity;
|
|
9
|
+
};
|
|
10
|
+
export type VoiceQualityDriftReport = {
|
|
11
|
+
rubricId: string;
|
|
12
|
+
scope: {
|
|
13
|
+
from: number;
|
|
14
|
+
to: number;
|
|
15
|
+
};
|
|
16
|
+
baselineWindow: {
|
|
17
|
+
from: number;
|
|
18
|
+
to: number;
|
|
19
|
+
sampleSize: number;
|
|
20
|
+
};
|
|
21
|
+
currentWindow: {
|
|
22
|
+
from: number;
|
|
23
|
+
to: number;
|
|
24
|
+
sampleSize: number;
|
|
25
|
+
};
|
|
26
|
+
overall: {
|
|
27
|
+
baselineAverage: number;
|
|
28
|
+
currentAverage: number;
|
|
29
|
+
delta: number;
|
|
30
|
+
severity: VoiceQualityDriftSeverity;
|
|
31
|
+
};
|
|
32
|
+
criteria: VoiceQualityDriftCriterionAlert[];
|
|
33
|
+
alertCount: number;
|
|
34
|
+
};
|
|
35
|
+
export type DetectVoiceQualityDriftInput = {
|
|
36
|
+
rubricId: string;
|
|
37
|
+
scorecards: VoiceScorecard[];
|
|
38
|
+
baselineWindowMs?: number;
|
|
39
|
+
currentWindowMs?: number;
|
|
40
|
+
now?: () => number;
|
|
41
|
+
watchThreshold?: number;
|
|
42
|
+
regressionThreshold?: number;
|
|
43
|
+
};
|
|
44
|
+
export declare const detectVoiceQualityDrift: (input: DetectVoiceQualityDriftInput) => VoiceQualityDriftReport;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Elysia } from
|
|
2
|
-
import { type StoredVoiceTraceEvent, type VoiceTraceEventStore } from
|
|
3
|
-
export type VoiceQualityStatus =
|
|
1
|
+
import { Elysia } from "elysia";
|
|
2
|
+
import { type StoredVoiceTraceEvent, type VoiceTraceEventStore } from "./trace";
|
|
3
|
+
export type VoiceQualityStatus = "pass" | "fail";
|
|
4
4
|
export type VoiceQualityThresholds = {
|
|
5
5
|
maxDuplicateTurnRate?: number;
|
|
6
6
|
maxEmptyTurnRate?: number;
|
|
@@ -16,7 +16,7 @@ export type VoiceQualityMetric = {
|
|
|
16
16
|
label: string;
|
|
17
17
|
pass: boolean;
|
|
18
18
|
threshold: number;
|
|
19
|
-
unit:
|
|
19
|
+
unit: "count" | "ms" | "rate";
|
|
20
20
|
};
|
|
21
21
|
export type VoiceQualityReport = {
|
|
22
22
|
checkedAt: number;
|
|
@@ -43,9 +43,6 @@ export declare const evaluateVoiceQuality: (input: {
|
|
|
43
43
|
store?: VoiceTraceEventStore;
|
|
44
44
|
thresholds?: VoiceQualityThresholds;
|
|
45
45
|
}) => Promise<VoiceQualityReport>;
|
|
46
|
-
export declare const renderVoiceQualityHTML: (report: VoiceQualityReport, options?: {
|
|
47
|
-
links?: VoiceQualityLink[];
|
|
48
|
-
}) => string;
|
|
49
46
|
export declare const createVoiceQualityRoutes: (options: VoiceQualityRoutesOptions) => Elysia<"", {
|
|
50
47
|
decorator: {};
|
|
51
48
|
store: {};
|
|
@@ -74,3 +71,6 @@ export declare const createVoiceQualityRoutes: (options: VoiceQualityRoutesOptio
|
|
|
74
71
|
standaloneSchema: {};
|
|
75
72
|
response: {};
|
|
76
73
|
}>;
|
|
74
|
+
export declare const renderVoiceQualityHTML: (report: VoiceQualityReport, options?: {
|
|
75
|
+
links?: VoiceQualityLink[];
|
|
76
|
+
}) => string;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import type { RedisClient } from
|
|
2
|
-
import type { VoiceIntegrationSink } from
|
|
3
|
-
import type { VoiceTraceRedactionConfig, VoiceTraceSink, VoiceTraceSinkDeliveryRecord, VoiceTraceSinkDeliveryStore, VoiceTraceSinkDeliveryQueueStatus } from
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
1
|
+
import type { RedisClient } from "bun";
|
|
2
|
+
import type { VoiceIntegrationSink } from "./opsSinks";
|
|
3
|
+
import type { VoiceTraceRedactionConfig, VoiceTraceSink, VoiceTraceSinkDeliveryRecord, VoiceTraceSinkDeliveryStore, VoiceTraceSinkDeliveryQueueStatus } from "./trace";
|
|
4
|
+
import type { VoiceTelephonyWebhookIdempotencyStore } from "./telephonyOutcome";
|
|
5
|
+
import type { StoredVoiceHandoffDelivery, VoiceHandoffAdapter, VoiceHandoffDeliveryQueueStatus, VoiceHandoffDeliveryStore, VoiceSessionHandle, VoiceSessionRecord } from "./types";
|
|
6
|
+
import type { VoiceOpsTaskPriority, StoredVoiceOpsTask, StoredVoiceIntegrationEvent, VoiceIntegrationDeliveryStatus, VoiceIntegrationEventStore, VoiceIntegrationWebhookConfig, VoiceOpsTaskKind, VoiceOpsTaskStatus, VoiceOpsTaskStore } from "./ops";
|
|
6
7
|
export type VoiceOpsTaskLease = {
|
|
7
8
|
expiresAt: number;
|
|
8
9
|
taskId: string;
|
|
9
10
|
workerId: string;
|
|
10
11
|
};
|
|
11
|
-
export type VoiceRedisTaskLeaseClient = Pick<RedisClient,
|
|
12
|
+
export type VoiceRedisTaskLeaseClient = Pick<RedisClient, "get" | "send" | "set">;
|
|
12
13
|
export type VoiceRedisTaskLeaseCoordinatorOptions = {
|
|
13
14
|
client?: VoiceRedisTaskLeaseClient;
|
|
14
15
|
keyPrefix?: string;
|
|
@@ -38,13 +39,20 @@ export type VoiceIdempotencyStore = {
|
|
|
38
39
|
ttlSeconds?: number;
|
|
39
40
|
}) => Promise<void> | void;
|
|
40
41
|
};
|
|
41
|
-
export type VoiceRedisIdempotencyClient = Pick<RedisClient,
|
|
42
|
+
export type VoiceRedisIdempotencyClient = Pick<RedisClient, "del" | "exists" | "set">;
|
|
42
43
|
export type VoiceRedisIdempotencyStoreOptions = {
|
|
43
44
|
client?: VoiceRedisIdempotencyClient;
|
|
44
45
|
keyPrefix?: string;
|
|
45
46
|
ttlSeconds?: number;
|
|
46
47
|
url?: string;
|
|
47
48
|
};
|
|
49
|
+
export type VoiceRedisTelephonyWebhookIdempotencyClient = Pick<RedisClient, "get" | "set">;
|
|
50
|
+
export type VoiceRedisTelephonyWebhookIdempotencyStoreOptions = {
|
|
51
|
+
client?: VoiceRedisTelephonyWebhookIdempotencyClient;
|
|
52
|
+
keyPrefix?: string;
|
|
53
|
+
ttlSeconds?: number;
|
|
54
|
+
url?: string;
|
|
55
|
+
};
|
|
48
56
|
export type VoiceWebhookDeliveryWorkerOptions<TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent> = {
|
|
49
57
|
deadLetters?: VoiceIntegrationEventStore<TEvent>;
|
|
50
58
|
events: VoiceIntegrationEventStore<TEvent>;
|
|
@@ -67,7 +75,7 @@ export type VoiceWebhookDeliveryWorkerResult = {
|
|
|
67
75
|
skipped: number;
|
|
68
76
|
};
|
|
69
77
|
export type VoiceIntegrationEventQueueSummary = {
|
|
70
|
-
byType: Array<[StoredVoiceIntegrationEvent[
|
|
78
|
+
byType: Array<[StoredVoiceIntegrationEvent["type"], number]>;
|
|
71
79
|
deadLettered: number;
|
|
72
80
|
delivered: number;
|
|
73
81
|
failed: number;
|
|
@@ -165,7 +173,7 @@ export type VoiceHandoffDeliveryWorkerOptions<TContext = unknown, TSession exten
|
|
|
165
173
|
api: VoiceSessionHandle<TContext, TSession, TResult>;
|
|
166
174
|
deadLetters?: VoiceHandoffDeliveryStore<TDelivery>;
|
|
167
175
|
deliveries: VoiceHandoffDeliveryStore<TDelivery>;
|
|
168
|
-
failMode?:
|
|
176
|
+
failMode?: "record" | "throw";
|
|
169
177
|
idempotency?: VoiceIdempotencyStore;
|
|
170
178
|
idempotencyTtlSeconds?: number;
|
|
171
179
|
leaseMs?: number;
|
|
@@ -195,7 +203,7 @@ export type VoiceHandoffDeliveryWorkerLoop = {
|
|
|
195
203
|
tick: () => Promise<VoiceHandoffDeliveryWorkerResult>;
|
|
196
204
|
};
|
|
197
205
|
export type VoiceHandoffDeliveryQueueSummary = {
|
|
198
|
-
byAction: Array<[StoredVoiceHandoffDelivery[
|
|
206
|
+
byAction: Array<[StoredVoiceHandoffDelivery["action"], number]>;
|
|
199
207
|
deadLettered: number;
|
|
200
208
|
delivered: number;
|
|
201
209
|
failed: number;
|
|
@@ -262,11 +270,11 @@ export type VoiceOpsTaskProcessorWorkerOptions<TTask extends StoredVoiceOpsTask
|
|
|
262
270
|
maxFailures?: number;
|
|
263
271
|
onDeadLetter?: (task: TTask) => Promise<void> | void;
|
|
264
272
|
onError?: (error: unknown, task: TTask) => Promise<void> | void;
|
|
265
|
-
process: (task: TTask) => Promise<void |
|
|
266
|
-
action?:
|
|
273
|
+
process: (task: TTask) => Promise<void | "complete" | "requeue" | {
|
|
274
|
+
action?: "complete" | "requeue";
|
|
267
275
|
detail?: string;
|
|
268
|
-
}> | void |
|
|
269
|
-
action?:
|
|
276
|
+
}> | void | "complete" | "requeue" | {
|
|
277
|
+
action?: "complete" | "requeue";
|
|
270
278
|
detail?: string;
|
|
271
279
|
};
|
|
272
280
|
tasks: VoiceOpsTaskStore<TTask>;
|
|
@@ -291,38 +299,39 @@ export type VoiceOpsTaskProcessorWorkerLoop = {
|
|
|
291
299
|
stop: () => void;
|
|
292
300
|
tick: () => Promise<VoiceOpsTaskProcessorWorkerResult>;
|
|
293
301
|
};
|
|
294
|
-
export declare const
|
|
295
|
-
|
|
296
|
-
}) => Promise<VoiceIntegrationEventQueueSummary> | VoiceIntegrationEventQueueSummary;
|
|
297
|
-
export declare const summarizeVoiceTraceSinkDeliveries: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(deliveries: TDelivery[], input?: {
|
|
298
|
-
deadLetters?: VoiceTraceSinkDeliveryStore<TDelivery>;
|
|
299
|
-
}) => Promise<VoiceTraceSinkDeliveryQueueSummary> | VoiceTraceSinkDeliveryQueueSummary;
|
|
300
|
-
export declare const summarizeVoiceHandoffDeliveries: <TDelivery extends StoredVoiceHandoffDelivery = StoredVoiceHandoffDelivery>(deliveries: TDelivery[], input?: {
|
|
301
|
-
deadLetters?: VoiceHandoffDeliveryStore<TDelivery>;
|
|
302
|
-
}) => Promise<VoiceHandoffDeliveryQueueSummary> | VoiceHandoffDeliveryQueueSummary;
|
|
303
|
-
export declare const summarizeVoiceOpsTaskQueue: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(tasks: TTask[], input?: {
|
|
304
|
-
deadLetters?: VoiceOpsTaskStore<TTask>;
|
|
305
|
-
}) => Promise<VoiceOpsTaskQueueSummary> | VoiceOpsTaskQueueSummary;
|
|
306
|
-
export declare const createVoiceRedisTaskLeaseCoordinator: (options?: VoiceRedisTaskLeaseCoordinatorOptions) => VoiceRedisTaskLeaseCoordinator;
|
|
307
|
-
export declare const createVoiceRedisIdempotencyStore: (options?: VoiceRedisIdempotencyStoreOptions) => VoiceIdempotencyStore;
|
|
308
|
-
export declare const createVoiceWebhookDeliveryWorker: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceWebhookDeliveryWorkerOptions<TEvent>) => {
|
|
309
|
-
drain: () => Promise<VoiceWebhookDeliveryWorkerResult>;
|
|
302
|
+
export declare const createVoiceHandoffDeliveryWorker: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>>(options: VoiceHandoffDeliveryWorkerOptions<TContext, TSession, TResult, TDelivery>) => {
|
|
303
|
+
drain: () => Promise<VoiceHandoffDeliveryWorkerResult>;
|
|
310
304
|
};
|
|
311
|
-
export declare const
|
|
305
|
+
export declare const createVoiceHandoffDeliveryWorkerLoop: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>>(options: VoiceHandoffDeliveryWorkerLoopOptions<TContext, TSession, TResult, TDelivery>) => VoiceHandoffDeliveryWorkerLoop;
|
|
312
306
|
export declare const createVoiceIntegrationSinkWorker: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceIntegrationSinkWorkerOptions<TEvent>) => {
|
|
313
307
|
drain: () => Promise<VoiceIntegrationSinkWorkerResult>;
|
|
314
308
|
};
|
|
315
309
|
export declare const createVoiceIntegrationSinkWorkerLoop: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceIntegrationSinkWorkerLoopOptions<TEvent>) => VoiceIntegrationSinkWorkerLoop;
|
|
310
|
+
export declare const createVoiceOpsTaskProcessorWorker: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskProcessorWorkerOptions<TTask>) => {
|
|
311
|
+
drain: () => Promise<VoiceOpsTaskProcessorWorkerResult>;
|
|
312
|
+
};
|
|
313
|
+
export declare const createVoiceOpsTaskProcessorWorkerLoop: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskProcessorWorkerLoopOptions<TTask>) => VoiceOpsTaskProcessorWorkerLoop;
|
|
314
|
+
export declare const createVoiceOpsTaskWorker: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskWorkerOptions<TTask>) => VoiceOpsTaskWorker<TTask>;
|
|
315
|
+
export declare const createVoiceRedisIdempotencyStore: (options?: VoiceRedisIdempotencyStoreOptions) => VoiceIdempotencyStore;
|
|
316
|
+
export declare const createVoiceRedisTaskLeaseCoordinator: (options?: VoiceRedisTaskLeaseCoordinatorOptions) => VoiceRedisTaskLeaseCoordinator;
|
|
317
|
+
export declare const createVoiceRedisTelephonyWebhookIdempotencyStore: <TResult = unknown>(options?: VoiceRedisTelephonyWebhookIdempotencyStoreOptions) => VoiceTelephonyWebhookIdempotencyStore<TResult>;
|
|
316
318
|
export declare const createVoiceTraceSinkDeliveryWorker: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(options: VoiceTraceSinkDeliveryWorkerOptions<TDelivery>) => {
|
|
317
319
|
drain: () => Promise<VoiceTraceSinkDeliveryWorkerResult>;
|
|
318
320
|
};
|
|
319
321
|
export declare const createVoiceTraceSinkDeliveryWorkerLoop: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(options: VoiceTraceSinkDeliveryWorkerLoopOptions<TDelivery>) => VoiceTraceSinkDeliveryWorkerLoop;
|
|
320
|
-
export declare const
|
|
321
|
-
drain: () => Promise<
|
|
322
|
-
};
|
|
323
|
-
export declare const createVoiceHandoffDeliveryWorkerLoop: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>>(options: VoiceHandoffDeliveryWorkerLoopOptions<TContext, TSession, TResult, TDelivery>) => VoiceHandoffDeliveryWorkerLoop;
|
|
324
|
-
export declare const createVoiceOpsTaskWorker: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskWorkerOptions<TTask>) => VoiceOpsTaskWorker<TTask>;
|
|
325
|
-
export declare const createVoiceOpsTaskProcessorWorker: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskProcessorWorkerOptions<TTask>) => {
|
|
326
|
-
drain: () => Promise<VoiceOpsTaskProcessorWorkerResult>;
|
|
322
|
+
export declare const createVoiceWebhookDeliveryWorker: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceWebhookDeliveryWorkerOptions<TEvent>) => {
|
|
323
|
+
drain: () => Promise<VoiceWebhookDeliveryWorkerResult>;
|
|
327
324
|
};
|
|
328
|
-
export declare const
|
|
325
|
+
export declare const createVoiceWebhookDeliveryWorkerLoop: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceWebhookDeliveryWorkerLoopOptions<TEvent>) => VoiceWebhookDeliveryWorkerLoop;
|
|
326
|
+
export declare const summarizeVoiceHandoffDeliveries: <TDelivery extends StoredVoiceHandoffDelivery = StoredVoiceHandoffDelivery>(deliveries: TDelivery[], input?: {
|
|
327
|
+
deadLetters?: VoiceHandoffDeliveryStore<TDelivery>;
|
|
328
|
+
}) => Promise<VoiceHandoffDeliveryQueueSummary> | VoiceHandoffDeliveryQueueSummary;
|
|
329
|
+
export declare const summarizeVoiceIntegrationEvents: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(events: TEvent[], input?: {
|
|
330
|
+
deadLetters?: VoiceIntegrationEventStore<TEvent>;
|
|
331
|
+
}) => Promise<VoiceIntegrationEventQueueSummary> | VoiceIntegrationEventQueueSummary;
|
|
332
|
+
export declare const summarizeVoiceOpsTaskQueue: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(tasks: TTask[], input?: {
|
|
333
|
+
deadLetters?: VoiceOpsTaskStore<TTask>;
|
|
334
|
+
}) => Promise<VoiceOpsTaskQueueSummary> | VoiceOpsTaskQueueSummary;
|
|
335
|
+
export declare const summarizeVoiceTraceSinkDeliveries: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(deliveries: TDelivery[], input?: {
|
|
336
|
+
deadLetters?: VoiceTraceSinkDeliveryStore<TDelivery>;
|
|
337
|
+
}) => Promise<VoiceTraceSinkDeliveryQueueSummary> | VoiceTraceSinkDeliveryQueueSummary;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type VoiceAgentTool } from "./agent";
|
|
2
|
+
import type { VoiceSessionRecord, VoiceTurnCitation } from "./types";
|
|
3
|
+
export type VoiceRAGQueryResult = {
|
|
4
|
+
chunkId: string;
|
|
5
|
+
chunkText: string;
|
|
6
|
+
score: number;
|
|
7
|
+
source?: string;
|
|
8
|
+
title?: string;
|
|
9
|
+
metadata?: Record<string, unknown>;
|
|
10
|
+
};
|
|
11
|
+
export type VoiceRAGSearchInput = {
|
|
12
|
+
filter?: Record<string, unknown>;
|
|
13
|
+
query: string;
|
|
14
|
+
scoreThreshold?: number;
|
|
15
|
+
signal?: AbortSignal;
|
|
16
|
+
topK?: number;
|
|
17
|
+
};
|
|
18
|
+
export type VoiceRAGCollectionLike = {
|
|
19
|
+
search: (input: VoiceRAGSearchInput) => Promise<readonly VoiceRAGQueryResult[]> | readonly VoiceRAGQueryResult[];
|
|
20
|
+
};
|
|
21
|
+
export type VoiceRAGToolArgs = {
|
|
22
|
+
filter?: Record<string, unknown>;
|
|
23
|
+
query: string;
|
|
24
|
+
topK?: number;
|
|
25
|
+
};
|
|
26
|
+
export type VoiceRAGToolResult = {
|
|
27
|
+
citations: VoiceRAGQueryResult[];
|
|
28
|
+
message: string;
|
|
29
|
+
query: string;
|
|
30
|
+
topK: number;
|
|
31
|
+
};
|
|
32
|
+
export type VoiceRAGCitationSummary = VoiceTurnCitation;
|
|
33
|
+
export declare const extractVoiceRAGCitations: (toolResults: ReadonlyArray<{
|
|
34
|
+
result?: unknown;
|
|
35
|
+
toolName: string;
|
|
36
|
+
}>, toolName?: string) => VoiceRAGCitationSummary[];
|
|
37
|
+
export type VoiceRAGToolOptions<TContext = unknown> = {
|
|
38
|
+
allowedFilterKeys?: readonly string[];
|
|
39
|
+
description?: string;
|
|
40
|
+
fixedFilter?: Record<string, unknown> | ((input: {
|
|
41
|
+
context: TContext;
|
|
42
|
+
}) => Record<string, unknown> | undefined);
|
|
43
|
+
formatResult?: (citations: readonly VoiceRAGQueryResult[], args: VoiceRAGToolArgs) => string;
|
|
44
|
+
maxChunkChars?: number;
|
|
45
|
+
maxTopK?: number;
|
|
46
|
+
name?: string;
|
|
47
|
+
parameters?: Record<string, unknown>;
|
|
48
|
+
resultToMessage?: (result: VoiceRAGToolResult) => string;
|
|
49
|
+
scoreThreshold?: number;
|
|
50
|
+
topK?: number;
|
|
51
|
+
};
|
|
52
|
+
export declare const createVoiceRAGTool: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord>(collection: VoiceRAGCollectionLike, options?: VoiceRAGToolOptions<TContext>) => VoiceAgentTool<TContext, TSession, VoiceRAGToolArgs, VoiceRAGToolResult>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { VoiceProductionReadinessAuditOptions, VoiceProductionReadinessAuditDeliveryOptions, VoiceProductionReadinessOpsActionHistoryOptions, VoiceProductionReadinessRoutesOptions, VoiceProductionReadinessTraceDeliveryOptions } from "./productionReadiness";
|
|
2
|
+
export type VoiceReadinessProfileName = "meeting-recorder" | "ops-heavy" | "phone-agent";
|
|
3
|
+
export type VoiceReadinessProfileOptions = {
|
|
4
|
+
audit?: VoiceProductionReadinessAuditOptions;
|
|
5
|
+
auditDeliveries?: VoiceProductionReadinessAuditDeliveryOptions;
|
|
6
|
+
bargeInReports?: VoiceProductionReadinessRoutesOptions["bargeInReports"];
|
|
7
|
+
campaignReadiness?: VoiceProductionReadinessRoutesOptions["campaignReadiness"];
|
|
8
|
+
carriers?: VoiceProductionReadinessRoutesOptions["carriers"];
|
|
9
|
+
deliveryRuntime?: VoiceProductionReadinessRoutesOptions["deliveryRuntime"];
|
|
10
|
+
explain?: boolean;
|
|
11
|
+
gate?: VoiceProductionReadinessRoutesOptions["gate"];
|
|
12
|
+
links?: VoiceProductionReadinessRoutesOptions["links"];
|
|
13
|
+
observabilityExportDeliveryHistory?: VoiceProductionReadinessRoutesOptions["observabilityExportDeliveryHistory"];
|
|
14
|
+
opsActionHistory?: VoiceProductionReadinessOpsActionHistoryOptions;
|
|
15
|
+
phoneAgentSmokes?: VoiceProductionReadinessRoutesOptions["phoneAgentSmokes"];
|
|
16
|
+
proofSources?: VoiceProductionReadinessRoutesOptions["proofSources"];
|
|
17
|
+
providerRoutingContracts?: VoiceProductionReadinessRoutesOptions["providerRoutingContracts"];
|
|
18
|
+
reconnectContracts?: VoiceProductionReadinessRoutesOptions["reconnectContracts"];
|
|
19
|
+
reconnectContractsMinCount?: VoiceProductionReadinessRoutesOptions["reconnectContractsMinCount"];
|
|
20
|
+
reconnectContractsMinSnapshotsPerContract?: VoiceProductionReadinessRoutesOptions["reconnectContractsMinSnapshotsPerContract"];
|
|
21
|
+
telephonyMediaMinCarriers?: VoiceProductionReadinessRoutesOptions["telephonyMediaMinCarriers"];
|
|
22
|
+
telephonyMediaMinMediaEvents?: VoiceProductionReadinessRoutesOptions["telephonyMediaMinMediaEvents"];
|
|
23
|
+
browserMediaMinActiveCandidatePairs?: VoiceProductionReadinessRoutesOptions["browserMediaMinActiveCandidatePairs"];
|
|
24
|
+
browserMediaMinLiveAudioTracks?: VoiceProductionReadinessRoutesOptions["browserMediaMinLiveAudioTracks"];
|
|
25
|
+
browserMediaMinTotalStats?: VoiceProductionReadinessRoutesOptions["browserMediaMinTotalStats"];
|
|
26
|
+
telephonyWebhookSecurity?: VoiceProductionReadinessRoutesOptions["telephonyWebhookSecurity"];
|
|
27
|
+
traceDeliveries?: VoiceProductionReadinessTraceDeliveryOptions;
|
|
28
|
+
};
|
|
29
|
+
export type VoiceReadinessProfileRoutesOptions = Partial<Omit<VoiceProductionReadinessRoutesOptions, "store">>;
|
|
30
|
+
export type VoiceReadinessProfileRecommendationScore = {
|
|
31
|
+
configured: string[];
|
|
32
|
+
confidence: number;
|
|
33
|
+
missing: string[];
|
|
34
|
+
profile: VoiceReadinessProfileName;
|
|
35
|
+
reasons: string[];
|
|
36
|
+
};
|
|
37
|
+
export type VoiceReadinessProfileRecommendation = {
|
|
38
|
+
confidence: number;
|
|
39
|
+
missing: string[];
|
|
40
|
+
profile: VoiceReadinessProfileName;
|
|
41
|
+
reasons: string[];
|
|
42
|
+
scores: VoiceReadinessProfileRecommendationScore[];
|
|
43
|
+
};
|
|
44
|
+
export declare const createVoiceReadinessProfile: (profile: VoiceReadinessProfileName, options?: VoiceReadinessProfileOptions) => VoiceReadinessProfileRoutesOptions;
|
|
45
|
+
export declare const recommendVoiceReadinessProfile: (options: VoiceReadinessProfileOptions) => VoiceReadinessProfileRecommendation;
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { Elysia } from "elysia";
|
|
2
|
+
import type { AudioFormat } from "./types";
|
|
3
|
+
import type { StoredVoiceTraceEvent } from "./trace";
|
|
4
|
+
export type VoiceRealtimeChannelStatus = "fail" | "pass" | "warn";
|
|
5
|
+
export type VoiceRealtimeChannelRuntimeSample = {
|
|
6
|
+
format?: AudioFormat;
|
|
7
|
+
observedAt?: number;
|
|
8
|
+
kind: "assistant-audio" | "browser-capture" | "input-audio" | "reconnect" | "turn-commit";
|
|
9
|
+
latencyMs?: number;
|
|
10
|
+
ok?: boolean;
|
|
11
|
+
sessionId?: string;
|
|
12
|
+
source?: string;
|
|
13
|
+
turnId?: string;
|
|
14
|
+
};
|
|
15
|
+
export type VoiceRealtimeChannelBrowserCapture = {
|
|
16
|
+
audioContextSampleRateHz?: number;
|
|
17
|
+
channelCount?: 1 | 2;
|
|
18
|
+
processorBufferSize?: number;
|
|
19
|
+
sampleRateHz?: number;
|
|
20
|
+
};
|
|
21
|
+
export type VoiceRealtimeChannelReportOptions = {
|
|
22
|
+
browserCapture?: VoiceRealtimeChannelBrowserCapture;
|
|
23
|
+
expectedInputFormat?: AudioFormat;
|
|
24
|
+
expectedOutputFormat?: AudioFormat;
|
|
25
|
+
inputFormat?: AudioFormat;
|
|
26
|
+
maxFirstAudioLatencyMs?: number;
|
|
27
|
+
minAssistantAudioSamples?: number;
|
|
28
|
+
minInputAudioSamples?: number;
|
|
29
|
+
operationsRecordHref?: string;
|
|
30
|
+
outputFormat?: AudioFormat;
|
|
31
|
+
provider: string;
|
|
32
|
+
readinessHref?: string;
|
|
33
|
+
runtimeSamples?: VoiceRealtimeChannelRuntimeSample[];
|
|
34
|
+
surface?: string;
|
|
35
|
+
};
|
|
36
|
+
export type VoiceRealtimeChannelIssue = {
|
|
37
|
+
code: string;
|
|
38
|
+
message: string;
|
|
39
|
+
severity: "error" | "warning";
|
|
40
|
+
};
|
|
41
|
+
export type VoiceRealtimeChannelReport = {
|
|
42
|
+
browserCapture?: VoiceRealtimeChannelBrowserCapture & {
|
|
43
|
+
resamplingRequired: boolean;
|
|
44
|
+
resamplingTargetHz?: number;
|
|
45
|
+
};
|
|
46
|
+
checkedAt: number;
|
|
47
|
+
inputFormat: AudioFormat;
|
|
48
|
+
issues: VoiceRealtimeChannelIssue[];
|
|
49
|
+
operationsRecordHref?: string;
|
|
50
|
+
outputFormat: AudioFormat;
|
|
51
|
+
provider: string;
|
|
52
|
+
readinessHref?: string;
|
|
53
|
+
runtime: {
|
|
54
|
+
assistantAudioSamples: number;
|
|
55
|
+
firstAudioLatencyMs?: number;
|
|
56
|
+
inputAudioSamples: number;
|
|
57
|
+
samples: VoiceRealtimeChannelRuntimeSample[];
|
|
58
|
+
};
|
|
59
|
+
status: VoiceRealtimeChannelStatus;
|
|
60
|
+
surface: string;
|
|
61
|
+
};
|
|
62
|
+
export type VoiceRealtimeChannelAssertionInput = {
|
|
63
|
+
maxFirstAudioLatencyMs?: number;
|
|
64
|
+
minAssistantAudioSamples?: number;
|
|
65
|
+
minInputAudioSamples?: number;
|
|
66
|
+
requireBrowserCapture?: boolean;
|
|
67
|
+
requireOperationsRecordHref?: boolean;
|
|
68
|
+
requirePass?: boolean;
|
|
69
|
+
requireReadinessHref?: boolean;
|
|
70
|
+
};
|
|
71
|
+
export type VoiceRealtimeChannelAssertionReport = {
|
|
72
|
+
issues: string[];
|
|
73
|
+
ok: boolean;
|
|
74
|
+
provider: string;
|
|
75
|
+
status: VoiceRealtimeChannelStatus;
|
|
76
|
+
surface: string;
|
|
77
|
+
};
|
|
78
|
+
export type VoiceRealtimeChannelRoutesOptions = VoiceRealtimeChannelReportOptions & {
|
|
79
|
+
headers?: HeadersInit;
|
|
80
|
+
htmlPath?: false | string;
|
|
81
|
+
markdownPath?: false | string;
|
|
82
|
+
name?: string;
|
|
83
|
+
path?: string;
|
|
84
|
+
render?: (report: VoiceRealtimeChannelReport) => Promise<string> | string;
|
|
85
|
+
source?: (() => Promise<VoiceRealtimeChannelReportOptions> | VoiceRealtimeChannelReportOptions) | VoiceRealtimeChannelReportOptions;
|
|
86
|
+
title?: string;
|
|
87
|
+
};
|
|
88
|
+
export declare const assertVoiceRealtimeChannelEvidence: (report: VoiceRealtimeChannelReport, input?: VoiceRealtimeChannelAssertionInput) => VoiceRealtimeChannelAssertionReport;
|
|
89
|
+
export declare const buildVoiceRealtimeChannelReport: (options: VoiceRealtimeChannelReportOptions) => VoiceRealtimeChannelReport;
|
|
90
|
+
export declare const buildVoiceRealtimeChannelRuntimeSamplesFromTrace: (events: readonly StoredVoiceTraceEvent[], options?: {
|
|
91
|
+
format?: AudioFormat;
|
|
92
|
+
source?: string;
|
|
93
|
+
}) => VoiceRealtimeChannelRuntimeSample[];
|
|
94
|
+
export declare const createVoiceRealtimeChannelRoutes: (options: VoiceRealtimeChannelRoutesOptions) => Elysia<"", {
|
|
95
|
+
decorator: {};
|
|
96
|
+
store: {};
|
|
97
|
+
derive: {};
|
|
98
|
+
resolve: {};
|
|
99
|
+
}, {
|
|
100
|
+
typebox: {};
|
|
101
|
+
error: {};
|
|
102
|
+
}, {
|
|
103
|
+
schema: {};
|
|
104
|
+
standaloneSchema: {};
|
|
105
|
+
macro: {};
|
|
106
|
+
macroFn: {};
|
|
107
|
+
parser: {};
|
|
108
|
+
response: {};
|
|
109
|
+
}, {
|
|
110
|
+
[x: string]: {
|
|
111
|
+
get: {
|
|
112
|
+
body: unknown;
|
|
113
|
+
params: {};
|
|
114
|
+
query: unknown;
|
|
115
|
+
headers: unknown;
|
|
116
|
+
response: {
|
|
117
|
+
200: Response;
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
}, {
|
|
122
|
+
derive: {};
|
|
123
|
+
resolve: {};
|
|
124
|
+
schema: {};
|
|
125
|
+
standaloneSchema: {};
|
|
126
|
+
response: {};
|
|
127
|
+
}, {
|
|
128
|
+
derive: {};
|
|
129
|
+
resolve: {};
|
|
130
|
+
schema: {};
|
|
131
|
+
standaloneSchema: {};
|
|
132
|
+
response: {};
|
|
133
|
+
}>;
|
|
134
|
+
export declare const evaluateVoiceRealtimeChannelEvidence: (report: VoiceRealtimeChannelReport, input?: VoiceRealtimeChannelAssertionInput) => VoiceRealtimeChannelAssertionReport;
|
|
135
|
+
export declare const renderVoiceRealtimeChannelHTML: (report: VoiceRealtimeChannelReport, title?: string) => string;
|
|
136
|
+
export declare const renderVoiceRealtimeChannelMarkdown: (report: VoiceRealtimeChannelReport) => string;
|