@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,83 @@
|
|
|
1
|
+
import type { StoredVoiceTraceEvent } from "./trace";
|
|
2
|
+
export type VoiceOTELAttribute = {
|
|
3
|
+
key: string;
|
|
4
|
+
value: {
|
|
5
|
+
boolValue: boolean;
|
|
6
|
+
};
|
|
7
|
+
} | {
|
|
8
|
+
key: string;
|
|
9
|
+
value: {
|
|
10
|
+
doubleValue: number;
|
|
11
|
+
};
|
|
12
|
+
} | {
|
|
13
|
+
key: string;
|
|
14
|
+
value: {
|
|
15
|
+
intValue: string;
|
|
16
|
+
};
|
|
17
|
+
} | {
|
|
18
|
+
key: string;
|
|
19
|
+
value: {
|
|
20
|
+
stringValue: string;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export type VoiceOTELSpan = {
|
|
24
|
+
attributes: VoiceOTELAttribute[];
|
|
25
|
+
endTimeUnixNano: string;
|
|
26
|
+
kind: number;
|
|
27
|
+
name: string;
|
|
28
|
+
parentSpanId?: string;
|
|
29
|
+
spanId: string;
|
|
30
|
+
startTimeUnixNano: string;
|
|
31
|
+
status: {
|
|
32
|
+
code: number;
|
|
33
|
+
};
|
|
34
|
+
traceId: string;
|
|
35
|
+
};
|
|
36
|
+
export type VoiceOTELResourceSpans = {
|
|
37
|
+
resource: {
|
|
38
|
+
attributes: VoiceOTELAttribute[];
|
|
39
|
+
};
|
|
40
|
+
scopeSpans: ReadonlyArray<{
|
|
41
|
+
scope: {
|
|
42
|
+
name: string;
|
|
43
|
+
version?: string;
|
|
44
|
+
};
|
|
45
|
+
spans: VoiceOTELSpan[];
|
|
46
|
+
}>;
|
|
47
|
+
};
|
|
48
|
+
export type VoiceOTELPayload = {
|
|
49
|
+
resourceSpans: VoiceOTELResourceSpans[];
|
|
50
|
+
};
|
|
51
|
+
export type VoiceTurnLatencySpanStage = {
|
|
52
|
+
at: number;
|
|
53
|
+
stage: string;
|
|
54
|
+
};
|
|
55
|
+
export type VoiceTurnLatencySpanSet = {
|
|
56
|
+
endedAt: number;
|
|
57
|
+
scenarioId?: string;
|
|
58
|
+
sessionId: string;
|
|
59
|
+
stages: VoiceTurnLatencySpanStage[];
|
|
60
|
+
startedAt: number;
|
|
61
|
+
turnId: string;
|
|
62
|
+
};
|
|
63
|
+
export declare const buildOTELSpanId: (sessionId: string, suffix: string) => string;
|
|
64
|
+
export declare const buildOTELTraceId: (sessionId: string) => string;
|
|
65
|
+
export declare const aggregateVoiceTurnLatencySpans: (events: StoredVoiceTraceEvent[]) => VoiceTurnLatencySpanSet[];
|
|
66
|
+
export type VoiceOTELExporterOptions = {
|
|
67
|
+
fetch?: typeof fetch;
|
|
68
|
+
headers?: Record<string, string>;
|
|
69
|
+
resourceAttributes?: Record<string, string>;
|
|
70
|
+
serviceName?: string;
|
|
71
|
+
url: string;
|
|
72
|
+
};
|
|
73
|
+
export declare const buildVoiceOTELPayload: (spanSets: VoiceTurnLatencySpanSet[], options?: {
|
|
74
|
+
resourceAttributes?: Record<string, string>;
|
|
75
|
+
serviceName?: string;
|
|
76
|
+
}) => VoiceOTELPayload;
|
|
77
|
+
export type VoiceOTELExporter = {
|
|
78
|
+
export: (events: StoredVoiceTraceEvent[]) => Promise<{
|
|
79
|
+
ok: boolean;
|
|
80
|
+
status?: number;
|
|
81
|
+
}>;
|
|
82
|
+
};
|
|
83
|
+
export declare const createVoiceOTELHTTPExporter: (options: VoiceOTELExporterOptions) => VoiceOTELExporter;
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { Elysia } from "elysia";
|
|
2
|
+
import type { StoredVoiceHandoffDelivery, VoiceCallDisposition, VoiceHandoffAction, VoiceHandoffDeliveryStore, VoiceSessionRecord, VoiceSessionStore } from "./types";
|
|
3
|
+
import type { StoredVoiceIntegrationEvent, StoredVoiceOpsTask, VoiceIntegrationEventType } from "./ops";
|
|
4
|
+
import type { StoredVoiceCallReviewArtifact } from "../testing/review";
|
|
5
|
+
export type VoiceOutcomeContractStatus = "pass" | "fail";
|
|
6
|
+
export type VoiceOutcomeContractDefinition = {
|
|
7
|
+
description?: string;
|
|
8
|
+
expectedDisposition?: VoiceCallDisposition;
|
|
9
|
+
id: string;
|
|
10
|
+
label?: string;
|
|
11
|
+
minSessions?: number;
|
|
12
|
+
minTasks?: number;
|
|
13
|
+
requireHandoffActions?: VoiceHandoffAction[];
|
|
14
|
+
requireIntegrationEvents?: VoiceIntegrationEventType[];
|
|
15
|
+
requireReview?: boolean;
|
|
16
|
+
requireTask?: boolean;
|
|
17
|
+
scenarioId?: string;
|
|
18
|
+
};
|
|
19
|
+
export type VoiceOutcomeContractIssue = {
|
|
20
|
+
code: string;
|
|
21
|
+
message: string;
|
|
22
|
+
};
|
|
23
|
+
export type VoiceOutcomeContractReport = {
|
|
24
|
+
contractId: string;
|
|
25
|
+
description?: string;
|
|
26
|
+
issues: VoiceOutcomeContractIssue[];
|
|
27
|
+
label?: string;
|
|
28
|
+
matched: {
|
|
29
|
+
handoffs: number;
|
|
30
|
+
integrationEvents: number;
|
|
31
|
+
reviews: number;
|
|
32
|
+
sessions: number;
|
|
33
|
+
tasks: number;
|
|
34
|
+
};
|
|
35
|
+
operationsRecordHrefs: string[];
|
|
36
|
+
pass: boolean;
|
|
37
|
+
sessionIds: string[];
|
|
38
|
+
};
|
|
39
|
+
export type VoiceOutcomeContractSuiteReport = {
|
|
40
|
+
checkedAt: number;
|
|
41
|
+
contracts: VoiceOutcomeContractReport[];
|
|
42
|
+
failed: number;
|
|
43
|
+
passed: number;
|
|
44
|
+
status: VoiceOutcomeContractStatus;
|
|
45
|
+
total: number;
|
|
46
|
+
};
|
|
47
|
+
export type VoiceOutcomeContractAssertionInput = {
|
|
48
|
+
maxFailed?: number;
|
|
49
|
+
maxIssues?: number;
|
|
50
|
+
minContracts?: number;
|
|
51
|
+
minHandoffs?: number;
|
|
52
|
+
minIntegrationEvents?: number;
|
|
53
|
+
minOperationsRecordHrefs?: number;
|
|
54
|
+
minReviews?: number;
|
|
55
|
+
minSessions?: number;
|
|
56
|
+
minTasks?: number;
|
|
57
|
+
requiredContractIds?: string[];
|
|
58
|
+
requireOperationRecordHrefs?: boolean;
|
|
59
|
+
};
|
|
60
|
+
export type VoiceOutcomeContractAssertionReport = {
|
|
61
|
+
contractIds: string[];
|
|
62
|
+
failed: number;
|
|
63
|
+
handoffs: number;
|
|
64
|
+
integrationEvents: number;
|
|
65
|
+
issues: string[];
|
|
66
|
+
issueCount: number;
|
|
67
|
+
ok: boolean;
|
|
68
|
+
operationsRecordHrefs: number;
|
|
69
|
+
passed: number;
|
|
70
|
+
reviews: number;
|
|
71
|
+
sessions: number;
|
|
72
|
+
status: VoiceOutcomeContractStatus;
|
|
73
|
+
tasks: number;
|
|
74
|
+
total: number;
|
|
75
|
+
};
|
|
76
|
+
type ListStore<T> = {
|
|
77
|
+
list: () => Promise<T[]> | T[];
|
|
78
|
+
};
|
|
79
|
+
export type VoiceOutcomeContractOptions<TSession extends VoiceSessionRecord = VoiceSessionRecord> = {
|
|
80
|
+
contracts: VoiceOutcomeContractDefinition[];
|
|
81
|
+
events?: StoredVoiceIntegrationEvent[] | ListStore<StoredVoiceIntegrationEvent>;
|
|
82
|
+
handoffs?: StoredVoiceHandoffDelivery[] | VoiceHandoffDeliveryStore;
|
|
83
|
+
operationsRecordHref?: false | string | ((sessionId: string) => string);
|
|
84
|
+
reviews?: StoredVoiceCallReviewArtifact[] | ListStore<StoredVoiceCallReviewArtifact>;
|
|
85
|
+
sessions?: TSession[] | VoiceSessionStore<TSession>;
|
|
86
|
+
tasks?: StoredVoiceOpsTask[] | ListStore<StoredVoiceOpsTask>;
|
|
87
|
+
};
|
|
88
|
+
export type VoiceOutcomeContractHTMLHandlerOptions<TSession extends VoiceSessionRecord = VoiceSessionRecord> = VoiceOutcomeContractOptions<TSession> & {
|
|
89
|
+
headers?: HeadersInit;
|
|
90
|
+
render?: (report: VoiceOutcomeContractSuiteReport) => string | Promise<string>;
|
|
91
|
+
title?: string;
|
|
92
|
+
};
|
|
93
|
+
export type VoiceOutcomeContractRoutesOptions<TSession extends VoiceSessionRecord = VoiceSessionRecord> = VoiceOutcomeContractHTMLHandlerOptions<TSession> & {
|
|
94
|
+
htmlPath?: false | string;
|
|
95
|
+
name?: string;
|
|
96
|
+
path?: string;
|
|
97
|
+
};
|
|
98
|
+
export declare const assertVoiceOutcomeContractEvidence: (report: VoiceOutcomeContractSuiteReport, input?: VoiceOutcomeContractAssertionInput) => VoiceOutcomeContractAssertionReport;
|
|
99
|
+
export declare const createVoiceOutcomeContractHTMLHandler: <TSession extends VoiceSessionRecord = VoiceSessionRecord>(options: VoiceOutcomeContractHTMLHandlerOptions<TSession>) => () => Promise<Response>;
|
|
100
|
+
export declare const createVoiceOutcomeContractJSONHandler: <TSession extends VoiceSessionRecord = VoiceSessionRecord>(options: VoiceOutcomeContractOptions<TSession>) => () => Promise<VoiceOutcomeContractSuiteReport>;
|
|
101
|
+
export declare const createVoiceOutcomeContractRoutes: <TSession extends VoiceSessionRecord = VoiceSessionRecord>(options: VoiceOutcomeContractRoutesOptions<TSession>) => Elysia<"", {
|
|
102
|
+
decorator: {};
|
|
103
|
+
store: {};
|
|
104
|
+
derive: {};
|
|
105
|
+
resolve: {};
|
|
106
|
+
}, {
|
|
107
|
+
typebox: {};
|
|
108
|
+
error: {};
|
|
109
|
+
}, {
|
|
110
|
+
schema: {};
|
|
111
|
+
standaloneSchema: {};
|
|
112
|
+
macro: {};
|
|
113
|
+
macroFn: {};
|
|
114
|
+
parser: {};
|
|
115
|
+
response: {};
|
|
116
|
+
}, {
|
|
117
|
+
[x: string]: {
|
|
118
|
+
get: {
|
|
119
|
+
body: unknown;
|
|
120
|
+
params: {};
|
|
121
|
+
query: unknown;
|
|
122
|
+
headers: unknown;
|
|
123
|
+
response: {
|
|
124
|
+
200: VoiceOutcomeContractSuiteReport;
|
|
125
|
+
};
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
}, {
|
|
129
|
+
derive: {};
|
|
130
|
+
resolve: {};
|
|
131
|
+
schema: {};
|
|
132
|
+
standaloneSchema: {};
|
|
133
|
+
response: {};
|
|
134
|
+
}, {
|
|
135
|
+
derive: {};
|
|
136
|
+
resolve: {};
|
|
137
|
+
schema: {};
|
|
138
|
+
standaloneSchema: {};
|
|
139
|
+
response: {};
|
|
140
|
+
}>;
|
|
141
|
+
export declare const evaluateVoiceOutcomeContractEvidence: (report: VoiceOutcomeContractSuiteReport, input?: VoiceOutcomeContractAssertionInput) => VoiceOutcomeContractAssertionReport;
|
|
142
|
+
export declare const renderVoiceOutcomeContractHTML: (report: VoiceOutcomeContractSuiteReport, options?: {
|
|
143
|
+
title?: string;
|
|
144
|
+
}) => string;
|
|
145
|
+
export declare const runVoiceOutcomeContractSuite: <TSession extends VoiceSessionRecord = VoiceSessionRecord>(options: VoiceOutcomeContractOptions<TSession>) => Promise<VoiceOutcomeContractSuiteReport>;
|
|
146
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { VoiceOpsTaskPriority } from
|
|
2
|
-
import type { VoiceRuntimeOpsConfig, VoiceSessionRecord } from
|
|
3
|
-
export type VoiceOutcomeRecipeName =
|
|
1
|
+
import type { VoiceOpsTaskPriority } from "./ops";
|
|
2
|
+
import type { VoiceRuntimeOpsConfig, VoiceSessionRecord } from "./types";
|
|
3
|
+
export type VoiceOutcomeRecipeName = "appointment-booking" | "cold-transfer" | "lead-qualification" | "support-triage" | "voicemail-callback" | "warm-transfer";
|
|
4
4
|
export type VoiceOutcomeRecipeOptions = {
|
|
5
5
|
assignee?: string;
|
|
6
6
|
completedCreatesTask?: boolean;
|
|
@@ -11,7 +11,7 @@ export type VoiceOutcomeRecipeOptions = {
|
|
|
11
11
|
queue?: string;
|
|
12
12
|
target?: string;
|
|
13
13
|
};
|
|
14
|
-
export type VoiceOutcomeRecipe<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = Pick<VoiceRuntimeOpsConfig<TContext, TSession, TResult>,
|
|
14
|
+
export type VoiceOutcomeRecipe<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = Pick<VoiceRuntimeOpsConfig<TContext, TSession, TResult>, "createTaskFromReview" | "resolveTaskPolicy" | "taskAssignmentRules" | "taskPolicies"> & {
|
|
15
15
|
description: string;
|
|
16
16
|
name: VoiceOutcomeRecipeName;
|
|
17
17
|
};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
export type VoicePathwaySlotType = "string" | "number" | "boolean" | "date" | "time" | "phone" | "email" | "currency" | "choice";
|
|
2
|
+
export type VoicePathwaySlot = {
|
|
3
|
+
id: string;
|
|
4
|
+
type: VoicePathwaySlotType;
|
|
5
|
+
prompt: string;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
choices?: string[];
|
|
8
|
+
description?: string;
|
|
9
|
+
validation?: {
|
|
10
|
+
minLength?: number;
|
|
11
|
+
maxLength?: number;
|
|
12
|
+
pattern?: string;
|
|
13
|
+
min?: number;
|
|
14
|
+
max?: number;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
export type VoicePathwayCondition = {
|
|
18
|
+
kind: "slot-equals";
|
|
19
|
+
slotId: string;
|
|
20
|
+
value: string | number | boolean;
|
|
21
|
+
} | {
|
|
22
|
+
kind: "slot-filled";
|
|
23
|
+
slotId: string;
|
|
24
|
+
} | {
|
|
25
|
+
kind: "slot-matches";
|
|
26
|
+
slotId: string;
|
|
27
|
+
pattern: string;
|
|
28
|
+
} | {
|
|
29
|
+
kind: "always";
|
|
30
|
+
} | {
|
|
31
|
+
kind: "fallback";
|
|
32
|
+
};
|
|
33
|
+
export type VoicePathwayAction = {
|
|
34
|
+
kind: "say";
|
|
35
|
+
text: string;
|
|
36
|
+
} | {
|
|
37
|
+
kind: "collect-slot";
|
|
38
|
+
slotId: string;
|
|
39
|
+
} | {
|
|
40
|
+
kind: "call-tool";
|
|
41
|
+
toolId: string;
|
|
42
|
+
argsFromSlots?: string[];
|
|
43
|
+
} | {
|
|
44
|
+
kind: "set-slot";
|
|
45
|
+
slotId: string;
|
|
46
|
+
valueExpression: string;
|
|
47
|
+
} | {
|
|
48
|
+
kind: "transfer";
|
|
49
|
+
destination: string;
|
|
50
|
+
} | {
|
|
51
|
+
kind: "end-call";
|
|
52
|
+
reason?: string;
|
|
53
|
+
};
|
|
54
|
+
export type VoicePathwayTransition = {
|
|
55
|
+
to: string;
|
|
56
|
+
condition: VoicePathwayCondition;
|
|
57
|
+
description?: string;
|
|
58
|
+
};
|
|
59
|
+
export type VoicePathwayState = {
|
|
60
|
+
id: string;
|
|
61
|
+
label: string;
|
|
62
|
+
kind?: "entry" | "collect" | "branch" | "action" | "terminal";
|
|
63
|
+
description?: string;
|
|
64
|
+
systemNote?: string;
|
|
65
|
+
actions?: VoicePathwayAction[];
|
|
66
|
+
transitions: VoicePathwayTransition[];
|
|
67
|
+
};
|
|
68
|
+
export type VoicePathway = {
|
|
69
|
+
id: string;
|
|
70
|
+
label: string;
|
|
71
|
+
entryStateId: string;
|
|
72
|
+
states: VoicePathwayState[];
|
|
73
|
+
slots: VoicePathwaySlot[];
|
|
74
|
+
tools?: {
|
|
75
|
+
id: string;
|
|
76
|
+
description: string;
|
|
77
|
+
}[];
|
|
78
|
+
metadata?: Record<string, string>;
|
|
79
|
+
};
|
|
80
|
+
export type VoicePathwayValidationIssue = {
|
|
81
|
+
severity: "error" | "warning";
|
|
82
|
+
code: "duplicate-state" | "duplicate-slot" | "unknown-entry" | "unreachable-state" | "missing-transition-target" | "missing-slot-ref" | "no-terminal-reachable" | "fallback-not-last" | "duplicate-transition";
|
|
83
|
+
message: string;
|
|
84
|
+
stateId?: string;
|
|
85
|
+
slotId?: string;
|
|
86
|
+
};
|
|
87
|
+
export type VoicePathwayValidationReport = {
|
|
88
|
+
valid: boolean;
|
|
89
|
+
issues: VoicePathwayValidationIssue[];
|
|
90
|
+
reachableStates: string[];
|
|
91
|
+
};
|
|
92
|
+
export declare const findVoicePathwaySlot: (pathway: VoicePathway, id: string) => VoicePathwaySlot | null;
|
|
93
|
+
export declare const findVoicePathwayState: (pathway: VoicePathway, id: string) => VoicePathwayState | null;
|
|
94
|
+
export declare const validateVoicePathway: (pathway: VoicePathway) => VoicePathwayValidationReport;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { type VoicePathway } from "./pathway";
|
|
2
|
+
export type VoicePathwayCompilerToolDefinition = {
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
parameters: {
|
|
6
|
+
type: "object";
|
|
7
|
+
properties: Record<string, {
|
|
8
|
+
type: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
enum?: string[];
|
|
11
|
+
}>;
|
|
12
|
+
required: string[];
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export type VoicePathwayCompiledAssistant = {
|
|
16
|
+
systemPrompt: string;
|
|
17
|
+
tools: VoicePathwayCompilerToolDefinition[];
|
|
18
|
+
initialPrompt?: string;
|
|
19
|
+
metadata: {
|
|
20
|
+
pathwayId: string;
|
|
21
|
+
pathwayLabel: string;
|
|
22
|
+
entryStateId: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
export type CompileVoicePathwayOptions = {
|
|
26
|
+
pathway: VoicePathway;
|
|
27
|
+
introduction?: string;
|
|
28
|
+
fallbackBehavior?: "stay" | "end-call" | "transfer";
|
|
29
|
+
toolNamePrefix?: string;
|
|
30
|
+
};
|
|
31
|
+
export declare const compileVoicePathwayToAssistant: (options: CompileVoicePathwayOptions) => VoicePathwayCompiledAssistant;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type VoicePathway, type VoicePathwayValidationReport } from "./pathway";
|
|
2
|
+
export type VoicePathwayGeneratorCompletion = (input: {
|
|
3
|
+
prompt: string;
|
|
4
|
+
systemPrompt: string;
|
|
5
|
+
}) => Promise<string>;
|
|
6
|
+
export type GenerateVoicePathwayInput = {
|
|
7
|
+
/** Plain-text description of the agent / flow to build. */
|
|
8
|
+
description: string;
|
|
9
|
+
completion: VoicePathwayGeneratorCompletion;
|
|
10
|
+
/** Suggested pathway id (slugified). Defaults to "generated-pathway". */
|
|
11
|
+
id?: string;
|
|
12
|
+
/** Extra guidance appended to the system prompt. */
|
|
13
|
+
guidance?: string;
|
|
14
|
+
/**
|
|
15
|
+
* If the first attempt fails validation, retry this many times feeding the
|
|
16
|
+
* issues back to the model. Defaults to 2.
|
|
17
|
+
*/
|
|
18
|
+
maxRepairAttempts?: number;
|
|
19
|
+
};
|
|
20
|
+
export type GenerateVoicePathwayResult = {
|
|
21
|
+
pathway: VoicePathway;
|
|
22
|
+
report: VoicePathwayValidationReport;
|
|
23
|
+
attempts: number;
|
|
24
|
+
/** Raw model outputs from each attempt, for debugging. */
|
|
25
|
+
rawOutputs: string[];
|
|
26
|
+
};
|
|
27
|
+
export declare const generateVoicePathwayFromPrompt: (input: GenerateVoicePathwayInput) => Promise<GenerateVoicePathwayResult>;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { type VoicePathway, type VoicePathwayAction } from "./pathway";
|
|
2
|
+
export type VoicePathwaySlotValue = string | number | boolean | null;
|
|
3
|
+
export type VoicePathwayRuntimeStatus = "ready" | "awaiting-slot" | "branching" | "ended" | "errored";
|
|
4
|
+
export type VoicePathwayRuntimeState = {
|
|
5
|
+
currentStateId: string;
|
|
6
|
+
status: VoicePathwayRuntimeStatus;
|
|
7
|
+
slots: Record<string, VoicePathwaySlotValue>;
|
|
8
|
+
awaitingSlotId: string | null;
|
|
9
|
+
history: {
|
|
10
|
+
stateId: string;
|
|
11
|
+
at: number;
|
|
12
|
+
}[];
|
|
13
|
+
pendingActions: VoicePathwayAction[];
|
|
14
|
+
lastError?: string;
|
|
15
|
+
endedReason?: string;
|
|
16
|
+
};
|
|
17
|
+
export type VoicePathwayToolCall = {
|
|
18
|
+
toolId: string;
|
|
19
|
+
args: Record<string, VoicePathwaySlotValue>;
|
|
20
|
+
};
|
|
21
|
+
export type VoicePathwayRuntimeEvent = {
|
|
22
|
+
type: "say";
|
|
23
|
+
text: string;
|
|
24
|
+
} | {
|
|
25
|
+
type: "ask-slot";
|
|
26
|
+
slotId: string;
|
|
27
|
+
prompt: string;
|
|
28
|
+
} | {
|
|
29
|
+
type: "tool-call";
|
|
30
|
+
call: VoicePathwayToolCall;
|
|
31
|
+
} | {
|
|
32
|
+
type: "transfer";
|
|
33
|
+
destination: string;
|
|
34
|
+
} | {
|
|
35
|
+
type: "end-call";
|
|
36
|
+
reason?: string;
|
|
37
|
+
} | {
|
|
38
|
+
type: "state-entered";
|
|
39
|
+
stateId: string;
|
|
40
|
+
} | {
|
|
41
|
+
type: "errored";
|
|
42
|
+
message: string;
|
|
43
|
+
};
|
|
44
|
+
export type CreateVoicePathwayRuntimeOptions = {
|
|
45
|
+
pathway: VoicePathway;
|
|
46
|
+
initialSlots?: Record<string, VoicePathwaySlotValue>;
|
|
47
|
+
now?: () => number;
|
|
48
|
+
skipValidation?: boolean;
|
|
49
|
+
};
|
|
50
|
+
export declare const createVoicePathwayRuntime: (options: CreateVoicePathwayRuntimeOptions) => {
|
|
51
|
+
fillSlot: (slotId: string, value: VoicePathwaySlotValue) => void;
|
|
52
|
+
start: () => void;
|
|
53
|
+
tryTransition: () => void;
|
|
54
|
+
getState: () => VoicePathwayRuntimeState;
|
|
55
|
+
subscribe(listener: (event: VoicePathwayRuntimeEvent) => void): () => void;
|
|
56
|
+
};
|
|
57
|
+
export type VoicePathwayRuntime = ReturnType<typeof createVoicePathwayRuntime>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { VoicePathwaySlot, VoicePathwaySlotType } from "./pathway";
|
|
2
|
+
import type { VoicePathwaySlotValue } from "./pathwayRuntime";
|
|
3
|
+
export type VoicePathwaySlotParseResult = {
|
|
4
|
+
ok: true;
|
|
5
|
+
value: VoicePathwaySlotValue;
|
|
6
|
+
normalized: string;
|
|
7
|
+
} | {
|
|
8
|
+
ok: false;
|
|
9
|
+
reason: "empty" | "type-mismatch" | "out-of-range" | "no-match";
|
|
10
|
+
hint?: string;
|
|
11
|
+
};
|
|
12
|
+
export type VoicePathwaySlotParser = (raw: string, slot: VoicePathwaySlot) => VoicePathwaySlotParseResult;
|
|
13
|
+
export declare const DEFAULT_VOICE_PATHWAY_SLOT_PARSERS: Record<VoicePathwaySlotType, VoicePathwaySlotParser>;
|
|
14
|
+
export type CreateVoicePathwaySlotCollectorOptions = {
|
|
15
|
+
parsers?: Partial<Record<VoicePathwaySlotType, VoicePathwaySlotParser>>;
|
|
16
|
+
maxAttemptsPerSlot?: number;
|
|
17
|
+
};
|
|
18
|
+
export type VoicePathwaySlotCollectorAttempt = {
|
|
19
|
+
slotId: string;
|
|
20
|
+
raw: string;
|
|
21
|
+
result: VoicePathwaySlotParseResult;
|
|
22
|
+
attempt: number;
|
|
23
|
+
};
|
|
24
|
+
export declare const createVoicePathwaySlotCollector: (options?: CreateVoicePathwaySlotCollectorOptions) => {
|
|
25
|
+
attemptsExceeded: (slotId: string) => boolean;
|
|
26
|
+
interpret: (slot: VoicePathwaySlot, raw: string) => VoicePathwaySlotCollectorAttempt;
|
|
27
|
+
reset: (slotId?: string) => void;
|
|
28
|
+
};
|
|
29
|
+
export type VoicePathwaySlotCollector = ReturnType<typeof createVoicePathwaySlotCollector>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { VoicePathway } from "./pathway";
|
|
2
|
+
export declare const renderVoicePathwayMermaid: (pathway: VoicePathway) => string;
|
|
3
|
+
export declare const renderVoicePathwayText: (pathway: VoicePathway) => string;
|
|
4
|
+
export type VoicePathwayVisualization = {
|
|
5
|
+
mermaid: string;
|
|
6
|
+
text: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const visualizeVoicePathway: (pathway: VoicePathway) => VoicePathwayVisualization;
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { Elysia } from "elysia";
|
|
2
|
+
import { type PlivoVoiceRoutesOptions } from "../telephony/plivo";
|
|
3
|
+
import { type TelnyxVoiceRoutesOptions } from "../telephony/telnyx";
|
|
4
|
+
import { type TwilioVoiceRoutesOptions } from "../telephony/twilio";
|
|
5
|
+
import { type VoiceTelephonyCarrierMatrix, type VoiceTelephonyCarrierMatrixRoutesOptions } from "../telephony/matrix";
|
|
6
|
+
import { type VoicePhoneAgentProductionSmokeRoutesOptions } from "./phoneAgentProductionSmoke";
|
|
7
|
+
import { type VoiceCampaignDialerProofAssertionReport, type VoiceCampaignDialerProofProvider, type VoiceCampaignDialerProofReport } from "./campaignDialers";
|
|
8
|
+
import type { VoiceTelephonyProvider } from "../telephony/contract";
|
|
9
|
+
import type { VoicePhoneAgentProductionSmokeReport } from "./phoneAgentProductionSmoke";
|
|
10
|
+
import type { VoiceSessionRecord } from "./types";
|
|
11
|
+
export type VoicePhoneAgentLifecycleStage = "ringing" | "answered" | "media-started" | "transcript" | "assistant-response" | "transfer" | "voicemail" | "no-answer" | "completed" | "failed";
|
|
12
|
+
type VoicePhoneAgentCarrierBase = {
|
|
13
|
+
name?: string;
|
|
14
|
+
smokePath?: false | string;
|
|
15
|
+
setupPath?: false | string;
|
|
16
|
+
};
|
|
17
|
+
export type VoicePhoneAgentTwilioCarrier<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = VoicePhoneAgentCarrierBase & {
|
|
18
|
+
options: TwilioVoiceRoutesOptions<TContext, TSession, TResult>;
|
|
19
|
+
provider: "twilio";
|
|
20
|
+
};
|
|
21
|
+
export type VoicePhoneAgentTelnyxCarrier<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = VoicePhoneAgentCarrierBase & {
|
|
22
|
+
options?: TelnyxVoiceRoutesOptions<TContext, TSession, TResult>;
|
|
23
|
+
provider: "telnyx";
|
|
24
|
+
};
|
|
25
|
+
export type VoicePhoneAgentPlivoCarrier<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = VoicePhoneAgentCarrierBase & {
|
|
26
|
+
options?: PlivoVoiceRoutesOptions<TContext, TSession, TResult>;
|
|
27
|
+
provider: "plivo";
|
|
28
|
+
};
|
|
29
|
+
export type VoicePhoneAgentCarrier<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = VoicePhoneAgentTwilioCarrier<TContext, TSession, TResult> | VoicePhoneAgentTelnyxCarrier<TContext, TSession, TResult> | VoicePhoneAgentPlivoCarrier<TContext, TSession, TResult>;
|
|
30
|
+
export type VoicePhoneAgentRoutesOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
|
|
31
|
+
carriers: readonly VoicePhoneAgentCarrier<TContext, TSession, TResult>[];
|
|
32
|
+
matrix?: false | Omit<VoiceTelephonyCarrierMatrixRoutesOptions, "load">;
|
|
33
|
+
name?: string;
|
|
34
|
+
productionSmoke?: false | VoicePhoneAgentProductionSmokeRoutesOptions;
|
|
35
|
+
setup?: false | {
|
|
36
|
+
path?: string;
|
|
37
|
+
title?: string;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
export type VoicePhoneAgentCarrierSummary = {
|
|
41
|
+
name?: string;
|
|
42
|
+
provider: "plivo" | "telnyx" | "twilio";
|
|
43
|
+
setupPath?: false | string;
|
|
44
|
+
smokePath?: false | string;
|
|
45
|
+
};
|
|
46
|
+
type VoicePhoneAgentSetupInstruction = {
|
|
47
|
+
answerLabel: string;
|
|
48
|
+
answerUrl?: string;
|
|
49
|
+
carrierName: string;
|
|
50
|
+
issues: string[];
|
|
51
|
+
provider: "plivo" | "telnyx" | "twilio";
|
|
52
|
+
setupPath?: false | string;
|
|
53
|
+
smokePath?: false | string;
|
|
54
|
+
status: "fail" | "pass" | "unknown" | "warn";
|
|
55
|
+
steps: string[];
|
|
56
|
+
streamUrl?: string;
|
|
57
|
+
webhookUrl?: string;
|
|
58
|
+
};
|
|
59
|
+
export type VoicePhoneAgentRoutes = {
|
|
60
|
+
carriers: VoicePhoneAgentCarrierSummary[];
|
|
61
|
+
matrixPath?: string;
|
|
62
|
+
productionSmokePath?: string;
|
|
63
|
+
routes: Elysia;
|
|
64
|
+
setupPath?: string;
|
|
65
|
+
};
|
|
66
|
+
export type VoicePhoneAgentSetupReport = {
|
|
67
|
+
carriers: VoicePhoneAgentCarrierSummary[];
|
|
68
|
+
generatedAt: number;
|
|
69
|
+
lifecycleStages: VoicePhoneAgentLifecycleStage[];
|
|
70
|
+
matrix?: VoiceTelephonyCarrierMatrix;
|
|
71
|
+
matrixPath?: string;
|
|
72
|
+
productionSmokePath?: string;
|
|
73
|
+
ready: boolean;
|
|
74
|
+
setupInstructions: VoicePhoneAgentSetupInstruction[];
|
|
75
|
+
setupPath?: string;
|
|
76
|
+
title: string;
|
|
77
|
+
};
|
|
78
|
+
export type VoicePhoneAssistantEvidenceInput = {
|
|
79
|
+
dialerProof?: VoiceCampaignDialerProofReport;
|
|
80
|
+
maxCarrierFailures?: number;
|
|
81
|
+
maxCarrierWarnings?: number;
|
|
82
|
+
maxFailedDialerProviders?: number;
|
|
83
|
+
minCarriers?: number;
|
|
84
|
+
minDialerCarrierRequests?: number;
|
|
85
|
+
minReadyCarriers?: number;
|
|
86
|
+
minSmokePassing?: number;
|
|
87
|
+
minSuccessfulDialerOutcomes?: number;
|
|
88
|
+
requiredDialerProviders?: VoiceCampaignDialerProofProvider[];
|
|
89
|
+
requiredLifecycleStages?: VoicePhoneAgentLifecycleStage[];
|
|
90
|
+
requiredProviders?: VoiceTelephonyProvider[];
|
|
91
|
+
requireCarrierMatrix?: boolean;
|
|
92
|
+
requireDialerProof?: boolean;
|
|
93
|
+
requireMatrixPass?: boolean;
|
|
94
|
+
requireProductionSmokePath?: boolean;
|
|
95
|
+
requireReady?: boolean;
|
|
96
|
+
requireSetupPath?: boolean;
|
|
97
|
+
};
|
|
98
|
+
export type VoicePhoneAssistantEvidenceReport = {
|
|
99
|
+
carrierFailures: number;
|
|
100
|
+
carrierWarnings: number;
|
|
101
|
+
carriers: number;
|
|
102
|
+
dialer?: VoiceCampaignDialerProofAssertionReport;
|
|
103
|
+
issues: string[];
|
|
104
|
+
lifecycleStages: VoicePhoneAgentLifecycleStage[];
|
|
105
|
+
matrixPass?: boolean;
|
|
106
|
+
ok: boolean;
|
|
107
|
+
productionSmokePath?: string;
|
|
108
|
+
providers: VoiceTelephonyProvider[];
|
|
109
|
+
ready: boolean;
|
|
110
|
+
readyCarriers: number;
|
|
111
|
+
setupPath?: string;
|
|
112
|
+
smokePassing: number;
|
|
113
|
+
};
|
|
114
|
+
export type VoicePhoneCallControlEvidenceInput = {
|
|
115
|
+
maxFailedSmokeReports?: number;
|
|
116
|
+
minPassingSmokeReports?: number;
|
|
117
|
+
productionSmokes?: VoicePhoneAgentProductionSmokeReport[];
|
|
118
|
+
requiredLifecycleStages?: VoicePhoneAgentLifecycleStage[];
|
|
119
|
+
requiredOutcomes?: string[];
|
|
120
|
+
requiredProviders?: VoiceTelephonyProvider[];
|
|
121
|
+
requireSetupLifecycleStages?: boolean;
|
|
122
|
+
setup?: VoicePhoneAgentSetupReport;
|
|
123
|
+
};
|
|
124
|
+
export type VoicePhoneCallControlEvidenceReport = {
|
|
125
|
+
failedSmokeReports: number;
|
|
126
|
+
issues: string[];
|
|
127
|
+
lifecycleStages: VoicePhoneAgentLifecycleStage[];
|
|
128
|
+
ok: boolean;
|
|
129
|
+
outcomes: string[];
|
|
130
|
+
passingSmokeReports: number;
|
|
131
|
+
providers: VoiceTelephonyProvider[];
|
|
132
|
+
smokeReports: number;
|
|
133
|
+
};
|
|
134
|
+
export declare const assertVoicePhoneAssistantEvidence: (report: VoicePhoneAgentSetupReport, input?: VoicePhoneAssistantEvidenceInput) => VoicePhoneAssistantEvidenceReport;
|
|
135
|
+
export declare const assertVoicePhoneCallControlEvidence: (input?: VoicePhoneCallControlEvidenceInput) => VoicePhoneCallControlEvidenceReport;
|
|
136
|
+
export declare const evaluateVoicePhoneAssistantEvidence: (report: VoicePhoneAgentSetupReport, input?: VoicePhoneAssistantEvidenceInput) => VoicePhoneAssistantEvidenceReport;
|
|
137
|
+
export declare const evaluateVoicePhoneCallControlEvidence: (input?: VoicePhoneCallControlEvidenceInput) => VoicePhoneCallControlEvidenceReport;
|
|
138
|
+
export declare const createVoicePhoneAgent: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(options: VoicePhoneAgentRoutesOptions<TContext, TSession, TResult>) => VoicePhoneAgentRoutes;
|
|
139
|
+
export {};
|