@elevenlabs/elevenlabs-js 2.46.0 → 2.47.0
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/.fern/metadata.json +1 -1
- package/BaseClient.js +2 -2
- package/Client.d.ts +3 -0
- package/Client.js +31 -26
- package/README.md +92 -0
- package/api/resources/conversationalAi/resources/conversations/client/Client.d.ts +2 -2
- package/api/resources/conversationalAi/resources/conversations/client/Client.js +2 -2
- package/api/resources/conversationalAi/resources/conversations/client/requests/ConversationsGetSignedUrlRequest.d.ts +2 -2
- package/api/resources/conversationalAi/resources/conversations/client/requests/ConversationsGetWebrtcTokenRequest.d.ts +2 -2
- package/api/resources/conversationalAi/resources/conversations/client/requests/ConversationsListRequest.d.ts +1 -1
- package/api/resources/conversationalAi/resources/conversations/resources/messages/client/requests/MessagesSearchRequest.d.ts +1 -1
- package/api/resources/conversationalAi/resources/conversations/resources/messages/client/requests/MessagesTextSearchRequest.d.ts +1 -1
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/Client.d.ts +17 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/Client.js +65 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/requests/BodyUpdateFileDocumentV1ConvaiKnowledgeBaseDocumentationIdUpdateFilePatch.d.ts +11 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/requests/index.d.ts +1 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.d.ts +16 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.d.ts +1 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.js +1 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/Client.d.ts +6 -5
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/Client.js +12 -9
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/requests/BodyUpdateDocumentV1ConvaiKnowledgeBaseDocumentationIdPatch.d.ts +4 -4
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/Client.d.ts +31 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/Client.js +131 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/index.d.ts +1 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/index.js +17 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/ChunksListRequest.d.ts +17 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/ChunksListRequest.js +3 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/index.d.ts +1 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/index.js +2 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/index.d.ts +1 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/index.js +17 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/index.d.ts +2 -0
- package/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/index.js +3 -1
- package/api/resources/conversationalAi/resources/phoneNumbers/client/requests/UpdatePhoneNumberRequest.d.ts +4 -0
- package/api/resources/conversationalAi/resources/users/client/requests/UsersListRequest.d.ts +1 -1
- package/api/resources/index.d.ts +2 -0
- package/api/resources/index.js +3 -1
- package/api/resources/serviceAccounts/resources/apiKeys/client/requests/BodyCreateServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysPost.d.ts +2 -0
- package/api/resources/serviceAccounts/resources/apiKeys/client/requests/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatch.d.ts +2 -0
- package/api/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.d.ts +4 -0
- package/api/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.js +3 -0
- package/api/resources/serviceAccounts/resources/apiKeys/types/index.d.ts +1 -0
- package/api/resources/serviceAccounts/resources/apiKeys/types/index.js +1 -0
- package/api/resources/speechEngine/client/Client.d.ts +89 -0
- package/api/resources/speechEngine/client/Client.js +363 -0
- package/api/resources/speechEngine/client/index.d.ts +1 -0
- package/api/resources/speechEngine/client/index.js +17 -0
- package/api/resources/speechEngine/client/requests/CreateSpeechEngineRequest.d.ts +31 -0
- package/api/resources/speechEngine/client/requests/CreateSpeechEngineRequest.js +3 -0
- package/api/resources/speechEngine/client/requests/SpeechEngineListRequest.d.ts +23 -0
- package/api/resources/speechEngine/client/requests/SpeechEngineListRequest.js +3 -0
- package/api/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.d.ts +17 -0
- package/api/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.js +3 -0
- package/api/resources/speechEngine/client/requests/index.d.ts +3 -0
- package/api/resources/speechEngine/client/requests/index.js +2 -0
- package/api/resources/speechEngine/index.d.ts +1 -0
- package/api/resources/speechEngine/index.js +17 -0
- package/api/resources/speechToSpeech/client/requests/BodySpeechToSpeechV1SpeechToSpeechVoiceIdPost.d.ts +1 -1
- package/api/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.d.ts +17 -10
- package/api/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.js +17 -10
- package/api/resources/voices/client/Client.js +3 -0
- package/api/resources/voices/client/requests/BodyEditVoiceV1VoicesVoiceIdEditPost.d.ts +2 -0
- package/api/resources/webhooks/client/requests/BodyUpdateWorkspaceWebhookV1WorkspaceWebhooksWebhookIdPatch.d.ts +2 -0
- package/api/resources/workspace/client/Client.d.ts +3 -0
- package/api/resources/workspace/client/Client.js +19 -14
- package/api/resources/workspace/resources/analytics/client/Client.d.ts +12 -0
- package/api/resources/workspace/resources/analytics/client/Client.js +16 -0
- package/api/resources/workspace/resources/analytics/client/index.d.ts +1 -0
- package/api/resources/workspace/resources/analytics/client/index.js +2 -0
- package/api/resources/workspace/resources/analytics/index.d.ts +2 -0
- package/api/resources/workspace/resources/analytics/index.js +18 -0
- package/api/resources/workspace/resources/analytics/resources/index.d.ts +3 -0
- package/api/resources/workspace/resources/analytics/resources/index.js +42 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/Client.d.ts +26 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/Client.js +118 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/index.d.ts +1 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/index.js +17 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.d.ts +16 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.js +3 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/requests/index.d.ts +1 -0
- package/api/resources/workspace/resources/analytics/resources/requests/client/requests/index.js +2 -0
- package/api/resources/workspace/resources/analytics/resources/requests/index.d.ts +2 -0
- package/api/resources/workspace/resources/analytics/resources/requests/index.js +18 -0
- package/api/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.d.ts +5 -0
- package/api/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.js +8 -0
- package/api/resources/workspace/resources/analytics/resources/requests/types/index.d.ts +1 -0
- package/api/resources/workspace/resources/analytics/resources/requests/types/index.js +17 -0
- package/api/resources/workspace/resources/index.d.ts +1 -0
- package/api/resources/workspace/resources/index.js +2 -1
- package/api/types/AgentAlertingMonitorConfig.d.ts +4 -0
- package/api/types/AgentAlertingMonitorConfig.js +3 -0
- package/api/types/AgentAlertingSettings.d.ts +5 -0
- package/api/types/AgentAlertingSettings.js +3 -0
- package/api/types/AgentMetadataDbModel.d.ts +7 -0
- package/api/types/AgentMetadataDbModel.js +3 -0
- package/api/types/AgentPlatformSettingsRequestModel.d.ts +1 -0
- package/api/types/AgentPlatformSettingsResponseModel.d.ts +1 -0
- package/api/types/AgentTopicResponseModel.d.ts +3 -0
- package/api/types/BackgroundMusicPresetId.d.ts +4 -0
- package/api/types/BackgroundMusicPresetId.js +4 -0
- package/api/types/BaseTurnConfig.d.ts +17 -0
- package/api/types/BaseTurnConfig.js +3 -0
- package/api/types/ClientEvent.d.ts +1 -0
- package/api/types/ClientEvent.js +1 -0
- package/api/types/CodeToolAllowedDomain.d.ts +6 -0
- package/api/types/CodeToolAllowedDomain.js +3 -0
- package/api/types/{ConversationTokenDbModel.d.ts → ConversationTokenResponseModel.d.ts} +2 -2
- package/api/types/ConversationTokenResponseModel.js +3 -0
- package/api/types/CreateSpeechEngineResponse.d.ts +4 -0
- package/api/types/CreateSpeechEngineResponse.js +3 -0
- package/api/types/GetAgentLinkResponseModel.d.ts +1 -1
- package/api/types/KnowledgeBaseDocumentChunksResponseModel.d.ts +5 -0
- package/api/types/KnowledgeBaseDocumentChunksResponseModel.js +3 -0
- package/api/types/ListSpeechEnginesResponse.d.ts +8 -0
- package/api/types/ListSpeechEnginesResponse.js +3 -0
- package/api/types/Llm.d.ts +4 -0
- package/api/types/Llm.js +4 -0
- package/api/types/LlmInfoModelInput.d.ts +2 -0
- package/api/types/LlmInfoModelOutput.d.ts +2 -0
- package/api/types/Monitor.d.ts +5 -0
- package/api/types/Monitor.js +8 -0
- package/api/types/PhoneNumberAgentInfo.d.ts +4 -0
- package/api/types/ProcedureCompilerMode.d.ts +1 -5
- package/api/types/ProcedureCompilerMode.js +0 -5
- package/api/types/PromptAgentApiModelInput.d.ts +1 -1
- package/api/types/PromptAgentApiModelOutput.d.ts +1 -1
- package/api/types/PromptAgentApiModelWorkflowOverrideInput.d.ts +1 -1
- package/api/types/PromptAgentApiModelWorkflowOverrideOutput.d.ts +1 -1
- package/api/types/ReadMetadataChapterDbModel.d.ts +1 -0
- package/api/types/RegionalProcessingSurchargeInfo.d.ts +4 -0
- package/api/types/RegionalProcessingSurchargeInfo.js +3 -0
- package/api/types/ReportKnowledgeGapParams.d.ts +3 -0
- package/api/types/ReportKnowledgeGapParams.js +3 -0
- package/api/types/SpeechEngineResponse.d.ts +16 -0
- package/api/types/SpeechEngineResponse.js +3 -0
- package/api/types/SpeechEngineSummaryResponse.d.ts +8 -0
- package/api/types/SpeechEngineSummaryResponse.js +3 -0
- package/api/types/TurnConfig.d.ts +2 -2
- package/api/types/TurnConfigWorkflowOverride.d.ts +2 -2
- package/api/types/WebhookHmacSettings.d.ts +2 -0
- package/api/types/WorkspaceApiKeyResponseModel.d.ts +1 -0
- package/api/types/WorkspaceGroupPermission.d.ts +2 -0
- package/api/types/WorkspaceGroupPermission.js +2 -0
- package/api/types/index.d.ts +14 -1
- package/api/types/index.js +14 -1
- package/dist/BaseClient.js +2 -2
- package/dist/Client.d.ts +3 -0
- package/dist/Client.js +31 -26
- package/dist/api/resources/conversationalAi/resources/conversations/client/Client.d.ts +2 -2
- package/dist/api/resources/conversationalAi/resources/conversations/client/Client.js +2 -2
- package/dist/api/resources/conversationalAi/resources/conversations/client/requests/ConversationsGetSignedUrlRequest.d.ts +2 -2
- package/dist/api/resources/conversationalAi/resources/conversations/client/requests/ConversationsGetWebrtcTokenRequest.d.ts +2 -2
- package/dist/api/resources/conversationalAi/resources/conversations/client/requests/ConversationsListRequest.d.ts +1 -1
- package/dist/api/resources/conversationalAi/resources/conversations/resources/messages/client/requests/MessagesSearchRequest.d.ts +1 -1
- package/dist/api/resources/conversationalAi/resources/conversations/resources/messages/client/requests/MessagesTextSearchRequest.d.ts +1 -1
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/Client.d.ts +17 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/Client.js +65 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/requests/BodyUpdateFileDocumentV1ConvaiKnowledgeBaseDocumentationIdUpdateFilePatch.d.ts +11 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/requests/BodyUpdateFileDocumentV1ConvaiKnowledgeBaseDocumentationIdUpdateFilePatch.js +3 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/client/requests/index.d.ts +1 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.d.ts +16 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.js +3 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.d.ts +1 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.js +1 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/Client.d.ts +6 -5
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/Client.js +12 -9
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/requests/BodyUpdateDocumentV1ConvaiKnowledgeBaseDocumentationIdPatch.d.ts +4 -4
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/Client.d.ts +31 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/Client.js +131 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/index.d.ts +1 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/index.js +17 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/ChunksListRequest.d.ts +17 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/ChunksListRequest.js +3 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/index.d.ts +1 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/client/requests/index.js +2 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/index.d.ts +1 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/chunks/index.js +17 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/index.d.ts +2 -0
- package/dist/api/resources/conversationalAi/resources/knowledgeBase/resources/documents/resources/index.js +3 -1
- package/dist/api/resources/conversationalAi/resources/phoneNumbers/client/requests/UpdatePhoneNumberRequest.d.ts +4 -0
- package/dist/api/resources/conversationalAi/resources/users/client/requests/UsersListRequest.d.ts +1 -1
- package/dist/api/resources/index.d.ts +2 -0
- package/dist/api/resources/index.js +3 -1
- package/dist/api/resources/serviceAccounts/resources/apiKeys/client/requests/BodyCreateServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysPost.d.ts +2 -0
- package/dist/api/resources/serviceAccounts/resources/apiKeys/client/requests/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatch.d.ts +2 -0
- package/dist/api/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.d.ts +4 -0
- package/dist/api/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.js +3 -0
- package/dist/api/resources/serviceAccounts/resources/apiKeys/types/index.d.ts +1 -0
- package/dist/api/resources/serviceAccounts/resources/apiKeys/types/index.js +1 -0
- package/dist/api/resources/speechEngine/client/Client.d.ts +89 -0
- package/dist/api/resources/speechEngine/client/Client.js +363 -0
- package/dist/api/resources/speechEngine/client/index.d.ts +1 -0
- package/dist/api/resources/speechEngine/client/index.js +17 -0
- package/dist/api/resources/speechEngine/client/requests/CreateSpeechEngineRequest.d.ts +31 -0
- package/dist/api/resources/speechEngine/client/requests/CreateSpeechEngineRequest.js +3 -0
- package/dist/api/resources/speechEngine/client/requests/SpeechEngineListRequest.d.ts +23 -0
- package/dist/api/resources/speechEngine/client/requests/SpeechEngineListRequest.js +3 -0
- package/dist/api/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.d.ts +17 -0
- package/dist/api/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.js +3 -0
- package/dist/api/resources/speechEngine/client/requests/index.d.ts +3 -0
- package/dist/api/resources/speechEngine/client/requests/index.js +2 -0
- package/dist/api/resources/speechEngine/index.d.ts +1 -0
- package/dist/api/resources/speechEngine/index.js +17 -0
- package/dist/api/resources/speechToSpeech/client/requests/BodySpeechToSpeechV1SpeechToSpeechVoiceIdPost.d.ts +1 -1
- package/dist/api/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.d.ts +17 -10
- package/dist/api/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.js +17 -10
- package/dist/api/resources/voices/client/Client.js +3 -0
- package/dist/api/resources/voices/client/requests/BodyEditVoiceV1VoicesVoiceIdEditPost.d.ts +2 -0
- package/dist/api/resources/webhooks/client/requests/BodyUpdateWorkspaceWebhookV1WorkspaceWebhooksWebhookIdPatch.d.ts +2 -0
- package/dist/api/resources/workspace/client/Client.d.ts +3 -0
- package/dist/api/resources/workspace/client/Client.js +19 -14
- package/dist/api/resources/workspace/resources/analytics/client/Client.d.ts +12 -0
- package/dist/api/resources/workspace/resources/analytics/client/Client.js +16 -0
- package/dist/api/resources/workspace/resources/analytics/client/index.d.ts +1 -0
- package/dist/api/resources/workspace/resources/analytics/client/index.js +2 -0
- package/dist/api/resources/workspace/resources/analytics/index.d.ts +2 -0
- package/dist/api/resources/workspace/resources/analytics/index.js +18 -0
- package/dist/api/resources/workspace/resources/analytics/resources/index.d.ts +3 -0
- package/dist/api/resources/workspace/resources/analytics/resources/index.js +42 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/Client.d.ts +26 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/Client.js +118 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/index.d.ts +1 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/index.js +17 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.d.ts +16 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.js +3 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/requests/index.d.ts +1 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/client/requests/index.js +2 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/index.d.ts +2 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/index.js +18 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.d.ts +5 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.js +8 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/types/index.d.ts +1 -0
- package/dist/api/resources/workspace/resources/analytics/resources/requests/types/index.js +17 -0
- package/dist/api/resources/workspace/resources/index.d.ts +1 -0
- package/dist/api/resources/workspace/resources/index.js +2 -1
- package/dist/api/types/AgentAlertingMonitorConfig.d.ts +4 -0
- package/dist/api/types/AgentAlertingMonitorConfig.js +3 -0
- package/dist/api/types/AgentAlertingSettings.d.ts +5 -0
- package/dist/api/types/AgentAlertingSettings.js +3 -0
- package/dist/api/types/AgentMetadataDbModel.d.ts +7 -0
- package/dist/api/types/AgentMetadataDbModel.js +3 -0
- package/dist/api/types/AgentPlatformSettingsRequestModel.d.ts +1 -0
- package/dist/api/types/AgentPlatformSettingsResponseModel.d.ts +1 -0
- package/dist/api/types/AgentTopicResponseModel.d.ts +3 -0
- package/dist/api/types/BackgroundMusicPresetId.d.ts +4 -0
- package/dist/api/types/BackgroundMusicPresetId.js +4 -0
- package/dist/api/types/BaseTurnConfig.d.ts +17 -0
- package/dist/api/types/BaseTurnConfig.js +3 -0
- package/dist/api/types/ClientEvent.d.ts +1 -0
- package/dist/api/types/ClientEvent.js +1 -0
- package/dist/api/types/CodeToolAllowedDomain.d.ts +6 -0
- package/dist/api/types/CodeToolAllowedDomain.js +3 -0
- package/dist/api/types/{ConversationTokenDbModel.d.ts → ConversationTokenResponseModel.d.ts} +2 -2
- package/dist/api/types/ConversationTokenResponseModel.js +3 -0
- package/dist/api/types/CreateSpeechEngineResponse.d.ts +4 -0
- package/dist/api/types/CreateSpeechEngineResponse.js +3 -0
- package/dist/api/types/GetAgentLinkResponseModel.d.ts +1 -1
- package/dist/api/types/KnowledgeBaseDocumentChunksResponseModel.d.ts +5 -0
- package/dist/api/types/KnowledgeBaseDocumentChunksResponseModel.js +3 -0
- package/dist/api/types/ListSpeechEnginesResponse.d.ts +8 -0
- package/dist/api/types/ListSpeechEnginesResponse.js +3 -0
- package/dist/api/types/Llm.d.ts +4 -0
- package/dist/api/types/Llm.js +4 -0
- package/dist/api/types/LlmInfoModelInput.d.ts +2 -0
- package/dist/api/types/LlmInfoModelOutput.d.ts +2 -0
- package/dist/api/types/Monitor.d.ts +5 -0
- package/dist/api/types/Monitor.js +8 -0
- package/dist/api/types/PhoneNumberAgentInfo.d.ts +4 -0
- package/dist/api/types/ProcedureCompilerMode.d.ts +1 -5
- package/dist/api/types/ProcedureCompilerMode.js +0 -5
- package/dist/api/types/PromptAgentApiModelInput.d.ts +1 -1
- package/dist/api/types/PromptAgentApiModelOutput.d.ts +1 -1
- package/dist/api/types/PromptAgentApiModelWorkflowOverrideInput.d.ts +1 -1
- package/dist/api/types/PromptAgentApiModelWorkflowOverrideOutput.d.ts +1 -1
- package/dist/api/types/ReadMetadataChapterDbModel.d.ts +1 -0
- package/dist/api/types/RegionalProcessingSurchargeInfo.d.ts +4 -0
- package/dist/api/types/RegionalProcessingSurchargeInfo.js +3 -0
- package/dist/api/types/ReportKnowledgeGapParams.d.ts +3 -0
- package/dist/api/types/ReportKnowledgeGapParams.js +3 -0
- package/dist/api/types/SpeechEngineResponse.d.ts +16 -0
- package/dist/api/types/SpeechEngineResponse.js +3 -0
- package/dist/api/types/SpeechEngineSummaryResponse.d.ts +8 -0
- package/dist/api/types/SpeechEngineSummaryResponse.js +3 -0
- package/dist/api/types/TurnConfig.d.ts +2 -2
- package/dist/api/types/TurnConfigWorkflowOverride.d.ts +2 -2
- package/dist/api/types/WebhookHmacSettings.d.ts +2 -0
- package/dist/api/types/WorkspaceApiKeyResponseModel.d.ts +1 -0
- package/dist/api/types/WorkspaceGroupPermission.d.ts +2 -0
- package/dist/api/types/WorkspaceGroupPermission.js +2 -0
- package/dist/api/types/index.d.ts +14 -1
- package/dist/api/types/index.js +14 -1
- package/dist/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.d.ts +23 -0
- package/dist/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.js +53 -0
- package/dist/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.d.ts +1 -0
- package/dist/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.js +1 -0
- package/dist/serialization/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/requests/BodyUpdateDocumentV1ConvaiKnowledgeBaseDocumentationIdPatch.d.ts +2 -1
- package/dist/serialization/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/requests/BodyUpdateDocumentV1ConvaiKnowledgeBaseDocumentationIdPatch.js +2 -1
- package/dist/serialization/resources/conversationalAi/resources/phoneNumbers/client/requests/UpdatePhoneNumberRequest.d.ts +2 -0
- package/dist/serialization/resources/conversationalAi/resources/phoneNumbers/client/requests/UpdatePhoneNumberRequest.js +2 -0
- package/dist/serialization/resources/index.d.ts +2 -0
- package/dist/serialization/resources/index.js +3 -1
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyCreateServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysPost.d.ts +1 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyCreateServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysPost.js +1 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatch.d.ts +2 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatch.js +2 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.d.ts +7 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.js +43 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/types/index.d.ts +1 -0
- package/dist/serialization/resources/serviceAccounts/resources/apiKeys/types/index.js +1 -0
- package/dist/serialization/resources/speechEngine/client/index.d.ts +1 -0
- package/dist/serialization/resources/speechEngine/client/index.js +17 -0
- package/dist/serialization/resources/speechEngine/client/requests/CreateSpeechEngineRequest.d.ts +25 -0
- package/dist/serialization/resources/speechEngine/client/requests/CreateSpeechEngineRequest.js +57 -0
- package/dist/serialization/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.d.ts +25 -0
- package/dist/serialization/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.js +57 -0
- package/dist/serialization/resources/speechEngine/client/requests/index.d.ts +2 -0
- package/dist/serialization/resources/speechEngine/client/requests/index.js +7 -0
- package/dist/serialization/resources/speechEngine/index.d.ts +1 -0
- package/dist/serialization/resources/speechEngine/index.js +17 -0
- package/dist/serialization/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.d.ts +1 -1
- package/dist/serialization/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.js +16 -9
- package/dist/serialization/resources/webhooks/client/requests/BodyUpdateWorkspaceWebhookV1WorkspaceWebhooksWebhookIdPatch.d.ts +1 -0
- package/dist/serialization/resources/webhooks/client/requests/BodyUpdateWorkspaceWebhookV1WorkspaceWebhooksWebhookIdPatch.js +1 -0
- package/dist/serialization/resources/workspace/resources/analytics/index.d.ts +1 -0
- package/dist/serialization/resources/workspace/resources/analytics/index.js +17 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/index.d.ts +3 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/index.js +42 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/client/index.d.ts +1 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/client/index.js +17 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.d.ts +16 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.js +48 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/index.d.ts +1 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/index.js +5 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/index.d.ts +2 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/index.js +18 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.d.ts +7 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.js +39 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/types/index.d.ts +1 -0
- package/dist/serialization/resources/workspace/resources/analytics/resources/requests/types/index.js +17 -0
- package/dist/serialization/resources/workspace/resources/index.d.ts +1 -0
- package/dist/serialization/resources/workspace/resources/index.js +2 -1
- package/dist/serialization/types/AgentAlertingMonitorConfig.d.ts +9 -0
- package/dist/serialization/types/AgentAlertingMonitorConfig.js +41 -0
- package/dist/serialization/types/AgentAlertingSettings.d.ts +10 -0
- package/dist/serialization/types/AgentAlertingSettings.js +42 -0
- package/dist/serialization/types/AgentMetadataDbModel.d.ts +13 -0
- package/dist/serialization/types/AgentMetadataDbModel.js +45 -0
- package/dist/serialization/types/AgentPlatformSettingsRequestModel.d.ts +2 -0
- package/dist/serialization/types/AgentPlatformSettingsRequestModel.js +2 -0
- package/dist/serialization/types/AgentPlatformSettingsResponseModel.d.ts +2 -0
- package/dist/serialization/types/AgentPlatformSettingsResponseModel.js +2 -0
- package/dist/serialization/types/AgentTopicResponseModel.d.ts +3 -0
- package/dist/serialization/types/AgentTopicResponseModel.js +3 -0
- package/dist/serialization/types/BackgroundMusicPresetId.d.ts +1 -1
- package/dist/serialization/types/BackgroundMusicPresetId.js +11 -1
- package/dist/serialization/types/BaseTurnConfig.d.ts +17 -0
- package/dist/serialization/types/BaseTurnConfig.js +49 -0
- package/dist/serialization/types/ClientEvent.d.ts +1 -1
- package/dist/serialization/types/ClientEvent.js +1 -0
- package/dist/serialization/types/CodeToolAllowedDomain.d.ts +10 -0
- package/dist/serialization/types/CodeToolAllowedDomain.js +42 -0
- package/dist/serialization/types/{ConversationTokenDbModel.d.ts → ConversationTokenResponseModel.d.ts} +3 -3
- package/dist/serialization/types/{ConversationTokenDbModel.js → ConversationTokenResponseModel.js} +3 -3
- package/dist/serialization/types/CreateSpeechEngineResponse.d.ts +9 -0
- package/dist/serialization/types/CreateSpeechEngineResponse.js +41 -0
- package/dist/serialization/types/GetAgentLinkResponseModel.d.ts +2 -2
- package/dist/serialization/types/GetAgentLinkResponseModel.js +2 -2
- package/dist/serialization/types/KnowledgeBaseDocumentChunksResponseModel.d.ts +11 -0
- package/dist/serialization/types/KnowledgeBaseDocumentChunksResponseModel.js +43 -0
- package/dist/serialization/types/ListSpeechEnginesResponse.d.ts +12 -0
- package/dist/serialization/types/ListSpeechEnginesResponse.js +44 -0
- package/dist/serialization/types/Llm.d.ts +1 -1
- package/dist/serialization/types/Llm.js +4 -0
- package/dist/serialization/types/LlmInfoModelInput.d.ts +2 -0
- package/dist/serialization/types/LlmInfoModelInput.js +2 -0
- package/dist/serialization/types/LlmInfoModelOutput.d.ts +2 -0
- package/dist/serialization/types/LlmInfoModelOutput.js +2 -0
- package/dist/serialization/types/Monitor.d.ts +7 -0
- package/dist/serialization/types/Monitor.js +39 -0
- package/dist/serialization/types/PhoneNumberAgentInfo.d.ts +2 -0
- package/dist/serialization/types/PhoneNumberAgentInfo.js +2 -0
- package/dist/serialization/types/ProcedureCompilerMode.d.ts +1 -1
- package/dist/serialization/types/ProcedureCompilerMode.js +1 -1
- package/dist/serialization/types/ReadMetadataChapterDbModel.d.ts +1 -0
- package/dist/serialization/types/ReadMetadataChapterDbModel.js +1 -0
- package/dist/serialization/types/RegionalProcessingSurchargeInfo.d.ts +9 -0
- package/dist/serialization/types/RegionalProcessingSurchargeInfo.js +41 -0
- package/dist/serialization/types/ReportKnowledgeGapParams.d.ts +9 -0
- package/dist/serialization/types/ReportKnowledgeGapParams.js +41 -0
- package/dist/serialization/types/SpeechEngineResponse.d.ts +28 -0
- package/dist/serialization/types/SpeechEngineResponse.js +60 -0
- package/dist/serialization/types/SpeechEngineSummaryResponse.d.ts +12 -0
- package/dist/serialization/types/SpeechEngineSummaryResponse.js +44 -0
- package/dist/serialization/types/TurnConfig.d.ts +1 -1
- package/dist/serialization/types/TurnConfig.js +1 -1
- package/dist/serialization/types/TurnConfigWorkflowOverride.d.ts +1 -1
- package/dist/serialization/types/TurnConfigWorkflowOverride.js +1 -1
- package/dist/serialization/types/WebhookHmacSettings.d.ts +1 -0
- package/dist/serialization/types/WebhookHmacSettings.js +1 -0
- package/dist/serialization/types/WorkspaceApiKeyResponseModel.d.ts +1 -0
- package/dist/serialization/types/WorkspaceApiKeyResponseModel.js +1 -0
- package/dist/serialization/types/WorkspaceGroupPermission.d.ts +1 -1
- package/dist/serialization/types/WorkspaceGroupPermission.js +2 -0
- package/dist/serialization/types/index.d.ts +14 -1
- package/dist/serialization/types/index.js +14 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/wrapper/ElevenLabsClient.d.ts +5 -2
- package/dist/wrapper/ElevenLabsClient.js +9 -1
- package/dist/wrapper/index.d.ts +1 -0
- package/dist/wrapper/index.js +8 -1
- package/dist/wrapper/speech-engine/SpeechEngineAttachment.d.ts +21 -0
- package/dist/wrapper/speech-engine/SpeechEngineAttachment.js +34 -0
- package/dist/wrapper/speech-engine/SpeechEngineClientWrapper.d.ts +103 -0
- package/dist/wrapper/speech-engine/SpeechEngineClientWrapper.js +140 -0
- package/dist/wrapper/speech-engine/SpeechEngineResource.d.ts +78 -0
- package/dist/wrapper/speech-engine/SpeechEngineResource.js +261 -0
- package/dist/wrapper/speech-engine/SpeechEngineServer.d.ts +54 -0
- package/dist/wrapper/speech-engine/SpeechEngineServer.js +135 -0
- package/dist/wrapper/speech-engine/SpeechEngineSession.d.ts +79 -0
- package/dist/wrapper/speech-engine/SpeechEngineSession.js +300 -0
- package/dist/wrapper/speech-engine/index.d.ts +7 -0
- package/dist/wrapper/speech-engine/index.js +47 -0
- package/dist/wrapper/speech-engine/namespace.d.ts +27 -0
- package/dist/wrapper/speech-engine/namespace.js +37 -0
- package/dist/wrapper/speech-engine/types.d.ts +67 -0
- package/dist/wrapper/speech-engine/types.js +15 -0
- package/package.json +1 -1
- package/reference.md +551 -6
- package/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.d.ts +23 -0
- package/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.js +53 -0
- package/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.d.ts +1 -0
- package/serialization/resources/conversationalAi/resources/knowledgeBase/resources/document/types/index.js +1 -0
- package/serialization/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/requests/BodyUpdateDocumentV1ConvaiKnowledgeBaseDocumentationIdPatch.d.ts +2 -1
- package/serialization/resources/conversationalAi/resources/knowledgeBase/resources/documents/client/requests/BodyUpdateDocumentV1ConvaiKnowledgeBaseDocumentationIdPatch.js +2 -1
- package/serialization/resources/conversationalAi/resources/phoneNumbers/client/requests/UpdatePhoneNumberRequest.d.ts +2 -0
- package/serialization/resources/conversationalAi/resources/phoneNumbers/client/requests/UpdatePhoneNumberRequest.js +2 -0
- package/serialization/resources/index.d.ts +2 -0
- package/serialization/resources/index.js +3 -1
- package/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyCreateServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysPost.d.ts +1 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyCreateServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysPost.js +1 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatch.d.ts +2 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/client/requests/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatch.js +2 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.d.ts +7 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/types/BodyEditServiceAccountApiKeyV1ServiceAccountsServiceAccountUserIdApiKeysApiKeyIdPatchAllowedIps.js +43 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/types/index.d.ts +1 -0
- package/serialization/resources/serviceAccounts/resources/apiKeys/types/index.js +1 -0
- package/serialization/resources/speechEngine/client/index.d.ts +1 -0
- package/serialization/resources/speechEngine/client/index.js +17 -0
- package/serialization/resources/speechEngine/client/requests/CreateSpeechEngineRequest.d.ts +25 -0
- package/serialization/resources/speechEngine/client/requests/CreateSpeechEngineRequest.js +57 -0
- package/serialization/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.d.ts +25 -0
- package/serialization/resources/speechEngine/client/requests/UpdateSpeechEngineRequest.js +57 -0
- package/serialization/resources/speechEngine/client/requests/index.d.ts +2 -0
- package/serialization/resources/speechEngine/client/requests/index.js +7 -0
- package/serialization/resources/speechEngine/index.d.ts +1 -0
- package/serialization/resources/speechEngine/index.js +17 -0
- package/serialization/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.d.ts +1 -1
- package/serialization/resources/speechToSpeech/types/SpeechToSpeechConvertRequestOutputFormat.js +16 -9
- package/serialization/resources/webhooks/client/requests/BodyUpdateWorkspaceWebhookV1WorkspaceWebhooksWebhookIdPatch.d.ts +1 -0
- package/serialization/resources/webhooks/client/requests/BodyUpdateWorkspaceWebhookV1WorkspaceWebhooksWebhookIdPatch.js +1 -0
- package/serialization/resources/workspace/resources/analytics/index.d.ts +1 -0
- package/serialization/resources/workspace/resources/analytics/index.js +17 -0
- package/serialization/resources/workspace/resources/analytics/resources/index.d.ts +3 -0
- package/serialization/resources/workspace/resources/analytics/resources/index.js +42 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/client/index.d.ts +1 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/client/index.js +17 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.d.ts +16 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPost.js +48 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/index.d.ts +1 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/client/requests/index.js +5 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/index.d.ts +2 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/index.js +18 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.d.ts +7 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/types/BodyListApiRequestsV1WorkspaceAnalyticsRequestsPostSort.js +39 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/types/index.d.ts +1 -0
- package/serialization/resources/workspace/resources/analytics/resources/requests/types/index.js +17 -0
- package/serialization/resources/workspace/resources/index.d.ts +1 -0
- package/serialization/resources/workspace/resources/index.js +2 -1
- package/serialization/types/AgentAlertingMonitorConfig.d.ts +9 -0
- package/serialization/types/AgentAlertingMonitorConfig.js +41 -0
- package/serialization/types/AgentAlertingSettings.d.ts +10 -0
- package/serialization/types/AgentAlertingSettings.js +42 -0
- package/serialization/types/AgentMetadataDbModel.d.ts +13 -0
- package/serialization/types/AgentMetadataDbModel.js +45 -0
- package/serialization/types/AgentPlatformSettingsRequestModel.d.ts +2 -0
- package/serialization/types/AgentPlatformSettingsRequestModel.js +2 -0
- package/serialization/types/AgentPlatformSettingsResponseModel.d.ts +2 -0
- package/serialization/types/AgentPlatformSettingsResponseModel.js +2 -0
- package/serialization/types/AgentTopicResponseModel.d.ts +3 -0
- package/serialization/types/AgentTopicResponseModel.js +3 -0
- package/serialization/types/BackgroundMusicPresetId.d.ts +1 -1
- package/serialization/types/BackgroundMusicPresetId.js +11 -1
- package/serialization/types/BaseTurnConfig.d.ts +17 -0
- package/serialization/types/BaseTurnConfig.js +49 -0
- package/serialization/types/ClientEvent.d.ts +1 -1
- package/serialization/types/ClientEvent.js +1 -0
- package/serialization/types/CodeToolAllowedDomain.d.ts +10 -0
- package/serialization/types/CodeToolAllowedDomain.js +42 -0
- package/serialization/types/{ConversationTokenDbModel.d.ts → ConversationTokenResponseModel.d.ts} +3 -3
- package/serialization/types/{ConversationTokenDbModel.js → ConversationTokenResponseModel.js} +3 -3
- package/serialization/types/CreateSpeechEngineResponse.d.ts +9 -0
- package/serialization/types/CreateSpeechEngineResponse.js +41 -0
- package/serialization/types/GetAgentLinkResponseModel.d.ts +2 -2
- package/serialization/types/GetAgentLinkResponseModel.js +2 -2
- package/serialization/types/KnowledgeBaseDocumentChunksResponseModel.d.ts +11 -0
- package/serialization/types/KnowledgeBaseDocumentChunksResponseModel.js +43 -0
- package/serialization/types/ListSpeechEnginesResponse.d.ts +12 -0
- package/serialization/types/ListSpeechEnginesResponse.js +44 -0
- package/serialization/types/Llm.d.ts +1 -1
- package/serialization/types/Llm.js +4 -0
- package/serialization/types/LlmInfoModelInput.d.ts +2 -0
- package/serialization/types/LlmInfoModelInput.js +2 -0
- package/serialization/types/LlmInfoModelOutput.d.ts +2 -0
- package/serialization/types/LlmInfoModelOutput.js +2 -0
- package/serialization/types/Monitor.d.ts +7 -0
- package/serialization/types/Monitor.js +39 -0
- package/serialization/types/PhoneNumberAgentInfo.d.ts +2 -0
- package/serialization/types/PhoneNumberAgentInfo.js +2 -0
- package/serialization/types/ProcedureCompilerMode.d.ts +1 -1
- package/serialization/types/ProcedureCompilerMode.js +1 -1
- package/serialization/types/ReadMetadataChapterDbModel.d.ts +1 -0
- package/serialization/types/ReadMetadataChapterDbModel.js +1 -0
- package/serialization/types/RegionalProcessingSurchargeInfo.d.ts +9 -0
- package/serialization/types/RegionalProcessingSurchargeInfo.js +41 -0
- package/serialization/types/ReportKnowledgeGapParams.d.ts +9 -0
- package/serialization/types/ReportKnowledgeGapParams.js +41 -0
- package/serialization/types/SpeechEngineResponse.d.ts +28 -0
- package/serialization/types/SpeechEngineResponse.js +60 -0
- package/serialization/types/SpeechEngineSummaryResponse.d.ts +12 -0
- package/serialization/types/SpeechEngineSummaryResponse.js +44 -0
- package/serialization/types/TurnConfig.d.ts +1 -1
- package/serialization/types/TurnConfig.js +1 -1
- package/serialization/types/TurnConfigWorkflowOverride.d.ts +1 -1
- package/serialization/types/TurnConfigWorkflowOverride.js +1 -1
- package/serialization/types/WebhookHmacSettings.d.ts +1 -0
- package/serialization/types/WebhookHmacSettings.js +1 -0
- package/serialization/types/WorkspaceApiKeyResponseModel.d.ts +1 -0
- package/serialization/types/WorkspaceApiKeyResponseModel.js +1 -0
- package/serialization/types/WorkspaceGroupPermission.d.ts +1 -1
- package/serialization/types/WorkspaceGroupPermission.js +2 -0
- package/serialization/types/index.d.ts +14 -1
- package/serialization/types/index.js +14 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/wrapper/ElevenLabsClient.d.ts +5 -2
- package/wrapper/ElevenLabsClient.js +9 -1
- package/wrapper/index.d.ts +1 -0
- package/wrapper/index.js +8 -1
- package/wrapper/speech-engine/SpeechEngineAttachment.d.ts +21 -0
- package/wrapper/speech-engine/SpeechEngineAttachment.js +34 -0
- package/wrapper/speech-engine/SpeechEngineClientWrapper.d.ts +103 -0
- package/wrapper/speech-engine/SpeechEngineClientWrapper.js +140 -0
- package/wrapper/speech-engine/SpeechEngineResource.d.ts +78 -0
- package/wrapper/speech-engine/SpeechEngineResource.js +261 -0
- package/wrapper/speech-engine/SpeechEngineServer.d.ts +54 -0
- package/wrapper/speech-engine/SpeechEngineServer.js +135 -0
- package/wrapper/speech-engine/SpeechEngineSession.d.ts +79 -0
- package/wrapper/speech-engine/SpeechEngineSession.js +300 -0
- package/wrapper/speech-engine/index.d.ts +7 -0
- package/wrapper/speech-engine/index.js +47 -0
- package/wrapper/speech-engine/namespace.d.ts +27 -0
- package/wrapper/speech-engine/namespace.js +37 -0
- package/wrapper/speech-engine/types.d.ts +67 -0
- package/wrapper/speech-engine/types.js +15 -0
- /package/api/{types/ConversationTokenDbModel.js → resources/conversationalAi/resources/knowledgeBase/resources/document/client/requests/BodyUpdateFileDocumentV1ConvaiKnowledgeBaseDocumentationIdUpdateFilePatch.js} +0 -0
- /package/{dist/api/types/ConversationTokenDbModel.js → api/resources/conversationalAi/resources/knowledgeBase/resources/document/types/DocumentUpdateFileResponse.js} +0 -0
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SpeechEngineClientWrapper = void 0;
|
|
13
|
+
const Client_1 = require("../../api/resources/speechEngine/client/Client");
|
|
14
|
+
const SpeechEngineResource_1 = require("./SpeechEngineResource");
|
|
15
|
+
/**
|
|
16
|
+
* Client for the Speech Engine resource. Accessible via `elevenlabs.speechEngine`.
|
|
17
|
+
*
|
|
18
|
+
* Extends the Fern-generated `SpeechEngineClient` with WebSocket integration
|
|
19
|
+
* methods. `list` and `delete` are inherited from the generated client.
|
|
20
|
+
* `create`, `get`, and `update` are overridden to return a `SpeechEngineResource`
|
|
21
|
+
* with WebSocket server setup methods.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* // Create a speech engine and immediately attach it
|
|
26
|
+
* const engine = await elevenlabs.speechEngine.create({
|
|
27
|
+
* name: "My engine",
|
|
28
|
+
* speechEngine: { wsUrl: "wss://your-server.com/ws" },
|
|
29
|
+
* });
|
|
30
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
31
|
+
* async onTranscript(transcript, signal, session) {
|
|
32
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
33
|
+
* },
|
|
34
|
+
* });
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
class SpeechEngineClientWrapper extends Client_1.SpeechEngineClient {
|
|
38
|
+
/**
|
|
39
|
+
* Create a Speech Engine and return a `SpeechEngineResource`.
|
|
40
|
+
*
|
|
41
|
+
* Makes an API call to create the engine, then returns a
|
|
42
|
+
* `SpeechEngineResource` with `.attach()`, `.createSession()`, and
|
|
43
|
+
* `.verifyRequest()` methods for setting up a WebSocket server.
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```typescript
|
|
47
|
+
* const engine = await elevenlabs.speechEngine.create({
|
|
48
|
+
* name: "My engine",
|
|
49
|
+
* speechEngine: { wsUrl: "wss://your-server.com/ws" },
|
|
50
|
+
* });
|
|
51
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
52
|
+
* async onTranscript(transcript, signal, session) {
|
|
53
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
54
|
+
* },
|
|
55
|
+
* });
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
// @ts-expect-error — intentionally returns SpeechEngineResource instead of HttpResponsePromise<CreateSpeechEngineResponse>
|
|
59
|
+
create(request, requestOptions) {
|
|
60
|
+
const _super = Object.create(null, {
|
|
61
|
+
create: { get: () => super.create }
|
|
62
|
+
});
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
const response = yield _super.create.call(this, request, requestOptions);
|
|
65
|
+
return new SpeechEngineResource_1.SpeechEngineResource(response.speechEngineId, this._options);
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Fetch a Speech Engine by ID and return a `SpeechEngineResource`.
|
|
70
|
+
*
|
|
71
|
+
* Makes an API call to validate the engine exists, then returns a
|
|
72
|
+
* `SpeechEngineResource` with `.attach()`, `.createSession()`, and
|
|
73
|
+
* `.verifyRequest()` methods for setting up a WebSocket server.
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* const engine = await elevenlabs.speechEngine.get("seng_123");
|
|
78
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
79
|
+
* async onTranscript(transcript, signal, session) {
|
|
80
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
81
|
+
* },
|
|
82
|
+
* });
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
// @ts-expect-error — intentionally returns SpeechEngineResource instead of HttpResponsePromise<SpeechEngineResponse>
|
|
86
|
+
get(speechEngineId, requestOptions) {
|
|
87
|
+
const _super = Object.create(null, {
|
|
88
|
+
get: { get: () => super.get }
|
|
89
|
+
});
|
|
90
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
yield _super.get.call(this, speechEngineId, requestOptions);
|
|
92
|
+
return new SpeechEngineResource_1.SpeechEngineResource(speechEngineId, this._options);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Update a Speech Engine and return a `SpeechEngineResource`.
|
|
97
|
+
*
|
|
98
|
+
* Makes an API call to update the engine, then returns a
|
|
99
|
+
* `SpeechEngineResource` with `.attach()`, `.createSession()`, and
|
|
100
|
+
* `.verifyRequest()` methods for setting up a WebSocket server.
|
|
101
|
+
*
|
|
102
|
+
* @example
|
|
103
|
+
* ```typescript
|
|
104
|
+
* const engine = await elevenlabs.speechEngine.update("seng_123", { name: "Renamed" });
|
|
105
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
106
|
+
* async onTranscript(transcript, signal, session) {
|
|
107
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
108
|
+
* },
|
|
109
|
+
* });
|
|
110
|
+
* ```
|
|
111
|
+
*/
|
|
112
|
+
// @ts-expect-error — intentionally returns SpeechEngineResource instead of HttpResponsePromise<SpeechEngineResponse>
|
|
113
|
+
update(speechEngineId_1) {
|
|
114
|
+
const _super = Object.create(null, {
|
|
115
|
+
update: { get: () => super.update }
|
|
116
|
+
});
|
|
117
|
+
return __awaiter(this, arguments, void 0, function* (speechEngineId, request = {}, requestOptions) {
|
|
118
|
+
yield _super.update.call(this, speechEngineId, request, requestOptions);
|
|
119
|
+
return new SpeechEngineResource_1.SpeechEngineResource(speechEngineId, this._options);
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Shortcut: attach a Speech Engine to an HTTP server without making an
|
|
124
|
+
* API call. Equivalent to constructing a `SpeechEngineResource` and calling
|
|
125
|
+
* `attach()` on it directly.
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* ```typescript
|
|
129
|
+
* elevenlabs.speechEngine.attach("seng_123", httpServer, "/api/se/ws", {
|
|
130
|
+
* async onTranscript(transcript, signal, session) {
|
|
131
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
132
|
+
* },
|
|
133
|
+
* });
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
attach(engineId, httpServer, path, handler) {
|
|
137
|
+
return new SpeechEngineResource_1.SpeechEngineResource(engineId, this._options).attach(httpServer, path, handler);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
exports.SpeechEngineClientWrapper = SpeechEngineClientWrapper;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { Server as HttpServer } from "node:http";
|
|
2
|
+
import WebSocket from "ws";
|
|
3
|
+
import type { BaseClientOptions, NormalizedClientOptions } from "../../BaseClient";
|
|
4
|
+
import { type SpeechEngineCallbacks } from "./types";
|
|
5
|
+
import { SpeechEngineSession } from "./SpeechEngineSession";
|
|
6
|
+
import { SpeechEngineAttachment } from "./SpeechEngineAttachment";
|
|
7
|
+
/**
|
|
8
|
+
* Represents a speech engine instance. Returned by `elevenlabs.speechEngine.get()`.
|
|
9
|
+
*
|
|
10
|
+
* Use `engine.attach(httpServer, path, callbacks)` to integrate with an existing
|
|
11
|
+
* HTTP server, or drop down to `engine.verifyRequest()` and `engine.createSession()`
|
|
12
|
+
* for full control.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const engine = await elevenlabs.speechEngine.get("seng_123");
|
|
17
|
+
*
|
|
18
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
19
|
+
* async onTranscript(transcript, signal, session) {
|
|
20
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
21
|
+
* },
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare class SpeechEngineResource {
|
|
26
|
+
readonly engineId: string;
|
|
27
|
+
/** @internal */
|
|
28
|
+
readonly _options: NormalizedClientOptions<BaseClientOptions>;
|
|
29
|
+
/** @internal */
|
|
30
|
+
constructor(engineId: string, options: NormalizedClientOptions<BaseClientOptions>);
|
|
31
|
+
/**
|
|
32
|
+
* Attach to an existing HTTP server and begin accepting Speech Engine
|
|
33
|
+
* connections at the given path.
|
|
34
|
+
*
|
|
35
|
+
* Handles WebSocket upgrades, path routing, and request verification
|
|
36
|
+
* automatically. Returns a `SpeechEngineAttachment` whose `.close()` stops
|
|
37
|
+
* accepting connections without affecting the HTTP server.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
42
|
+
* async onTranscript(transcript, signal, session) {
|
|
43
|
+
* const stream = await openai.responses.create({ model: "gpt-4o", input: transcript, stream: true }, { signal });
|
|
44
|
+
* session.sendResponse(stream);
|
|
45
|
+
* },
|
|
46
|
+
* });
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
attach(httpServer: HttpServer, path: string, handler: SpeechEngineCallbacks): SpeechEngineAttachment;
|
|
50
|
+
/**
|
|
51
|
+
* Verify that an incoming HTTP upgrade request is a legitimate connection
|
|
52
|
+
* from the ElevenLabs Speech Engine API.
|
|
53
|
+
*
|
|
54
|
+
* Checks the `X-Elevenlabs-Speech-Engine-Authorization` header for a valid
|
|
55
|
+
* JWT signed with the SHA-256 hash of the API key.
|
|
56
|
+
*
|
|
57
|
+
* Only needed when managing the WebSocket upgrade yourself. When using
|
|
58
|
+
* `engine.attach()`, verification is handled automatically.
|
|
59
|
+
*/
|
|
60
|
+
verifyRequest(req: {
|
|
61
|
+
headers: Record<string, string | string[] | undefined>;
|
|
62
|
+
}): Promise<boolean>;
|
|
63
|
+
/** @internal Returns `null` when the request is valid, or a human-readable reason when rejected. */
|
|
64
|
+
private getVerificationFailure;
|
|
65
|
+
/**
|
|
66
|
+
* Wrap an accepted WebSocket in a `SpeechEngineSession`.
|
|
67
|
+
*
|
|
68
|
+
* Only needed when managing the WebSocket upgrade yourself. When using
|
|
69
|
+
* `engine.attach()`, sessions are created automatically.
|
|
70
|
+
*/
|
|
71
|
+
createSession(ws: WebSocket, options?: {
|
|
72
|
+
debug?: boolean;
|
|
73
|
+
}): SpeechEngineSession;
|
|
74
|
+
/** @internal */
|
|
75
|
+
private wireHandler;
|
|
76
|
+
}
|
|
77
|
+
/** @internal — exported for testing only */
|
|
78
|
+
export declare function verifySpeechEngineJwt(value: string, apiKey: string): Record<string, unknown>;
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
36
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
37
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
38
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
39
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
40
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
41
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
45
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
|
+
};
|
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.SpeechEngineResource = void 0;
|
|
49
|
+
exports.verifySpeechEngineJwt = verifySpeechEngineJwt;
|
|
50
|
+
const node_crypto_1 = require("node:crypto");
|
|
51
|
+
const ws_1 = __importDefault(require("ws"));
|
|
52
|
+
const core = __importStar(require("../../core"));
|
|
53
|
+
const types_1 = require("./types");
|
|
54
|
+
const SpeechEngineSession_1 = require("./SpeechEngineSession");
|
|
55
|
+
const SpeechEngineAttachment_1 = require("./SpeechEngineAttachment");
|
|
56
|
+
/**
|
|
57
|
+
* Represents a speech engine instance. Returned by `elevenlabs.speechEngine.get()`.
|
|
58
|
+
*
|
|
59
|
+
* Use `engine.attach(httpServer, path, callbacks)` to integrate with an existing
|
|
60
|
+
* HTTP server, or drop down to `engine.verifyRequest()` and `engine.createSession()`
|
|
61
|
+
* for full control.
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```typescript
|
|
65
|
+
* const engine = await elevenlabs.speechEngine.get("seng_123");
|
|
66
|
+
*
|
|
67
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
68
|
+
* async onTranscript(transcript, signal, session) {
|
|
69
|
+
* session.sendResponse(await llm.generate(transcript, { signal }));
|
|
70
|
+
* },
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
class SpeechEngineResource {
|
|
75
|
+
/** @internal */
|
|
76
|
+
constructor(engineId, options) {
|
|
77
|
+
this.engineId = engineId;
|
|
78
|
+
this._options = options;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Attach to an existing HTTP server and begin accepting Speech Engine
|
|
82
|
+
* connections at the given path.
|
|
83
|
+
*
|
|
84
|
+
* Handles WebSocket upgrades, path routing, and request verification
|
|
85
|
+
* automatically. Returns a `SpeechEngineAttachment` whose `.close()` stops
|
|
86
|
+
* accepting connections without affecting the HTTP server.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* engine.attach(httpServer, "/api/speech-engine/ws", {
|
|
91
|
+
* async onTranscript(transcript, signal, session) {
|
|
92
|
+
* const stream = await openai.responses.create({ model: "gpt-4o", input: transcript, stream: true }, { signal });
|
|
93
|
+
* session.sendResponse(stream);
|
|
94
|
+
* },
|
|
95
|
+
* });
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
attach(httpServer, path, handler) {
|
|
99
|
+
var _a;
|
|
100
|
+
const debug = (_a = handler.debug) !== null && _a !== void 0 ? _a : false;
|
|
101
|
+
const log = debug ? (...args) => console.log("[SpeechEngine]", ...args) : () => { };
|
|
102
|
+
const wss = new ws_1.default.Server({ noServer: true });
|
|
103
|
+
const upgradeListener = (req, socket, head) => __awaiter(this, void 0, void 0, function* () {
|
|
104
|
+
var _a;
|
|
105
|
+
const url = new URL((_a = req.url) !== null && _a !== void 0 ? _a : "/", `http://${req.headers.host}`);
|
|
106
|
+
log(`upgrade request: ${req.method} ${url.pathname}`);
|
|
107
|
+
if (url.pathname !== path) {
|
|
108
|
+
log(`path mismatch: expected ${path}, got ${url.pathname} — skipping`);
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (!(yield this.verifyRequest(req))) {
|
|
112
|
+
// verifyRequest returned false — get the detailed reason for debug logging
|
|
113
|
+
const reason = yield this.getVerificationFailure(req);
|
|
114
|
+
log(`rejected connection — ${reason}`);
|
|
115
|
+
socket.destroy();
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
log("upgrading connection to WebSocket");
|
|
119
|
+
wss.handleUpgrade(req, socket, head, (ws) => {
|
|
120
|
+
log("WebSocket connection established");
|
|
121
|
+
wss.emit("connection", ws);
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
httpServer.on("upgrade", upgradeListener);
|
|
125
|
+
wss.on("connection", (ws) => {
|
|
126
|
+
log("creating new session");
|
|
127
|
+
const session = this.createSession(ws, { debug });
|
|
128
|
+
this.wireHandler(session, handler);
|
|
129
|
+
});
|
|
130
|
+
log(`listening for WebSocket upgrades on ${path}`);
|
|
131
|
+
return new SpeechEngineAttachment_1.SpeechEngineAttachment(wss, httpServer, upgradeListener);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Verify that an incoming HTTP upgrade request is a legitimate connection
|
|
135
|
+
* from the ElevenLabs Speech Engine API.
|
|
136
|
+
*
|
|
137
|
+
* Checks the `X-Elevenlabs-Speech-Engine-Authorization` header for a valid
|
|
138
|
+
* JWT signed with the SHA-256 hash of the API key.
|
|
139
|
+
*
|
|
140
|
+
* Only needed when managing the WebSocket upgrade yourself. When using
|
|
141
|
+
* `engine.attach()`, verification is handled automatically.
|
|
142
|
+
*/
|
|
143
|
+
verifyRequest(req) {
|
|
144
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
145
|
+
return (yield this.getVerificationFailure(req)) === null;
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
/** @internal Returns `null` when the request is valid, or a human-readable reason when rejected. */
|
|
149
|
+
getVerificationFailure(req) {
|
|
150
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
151
|
+
const apiKey = yield core.Supplier.get(this._options.apiKey);
|
|
152
|
+
if (!apiKey) {
|
|
153
|
+
return "no API key configured on the client";
|
|
154
|
+
}
|
|
155
|
+
const raw = req.headers["x-elevenlabs-speech-engine-authorization"];
|
|
156
|
+
const headerValue = Array.isArray(raw) ? raw[0] : raw;
|
|
157
|
+
if (!headerValue) {
|
|
158
|
+
return "missing X-Elevenlabs-Speech-Engine-Authorization header";
|
|
159
|
+
}
|
|
160
|
+
try {
|
|
161
|
+
verifySpeechEngineJwt(headerValue, apiKey);
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
catch (err) {
|
|
165
|
+
return err instanceof Error ? err.message : String(err);
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Wrap an accepted WebSocket in a `SpeechEngineSession`.
|
|
171
|
+
*
|
|
172
|
+
* Only needed when managing the WebSocket upgrade yourself. When using
|
|
173
|
+
* `engine.attach()`, sessions are created automatically.
|
|
174
|
+
*/
|
|
175
|
+
createSession(ws, options) {
|
|
176
|
+
return new SpeechEngineSession_1.SpeechEngineSession(ws, options);
|
|
177
|
+
}
|
|
178
|
+
/** @internal */
|
|
179
|
+
wireHandler(session, handler) {
|
|
180
|
+
const { onInit, onTranscript, onClose, onDisconnect, onError } = handler;
|
|
181
|
+
if (onInit)
|
|
182
|
+
session.on("init", (id) => onInit.call(session, id, session));
|
|
183
|
+
if (onTranscript) {
|
|
184
|
+
session.on("user_transcript", (t, s) => {
|
|
185
|
+
Promise.resolve(onTranscript.call(session, t, s, session)).catch((err) => {
|
|
186
|
+
if ((0, types_1.isAbortError)(err))
|
|
187
|
+
return;
|
|
188
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
189
|
+
if (onError)
|
|
190
|
+
onError.call(session, error, session);
|
|
191
|
+
});
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
if (onClose)
|
|
195
|
+
session.on("close", () => onClose.call(session, session));
|
|
196
|
+
if (onDisconnect)
|
|
197
|
+
session.on("disconnected", () => onDisconnect.call(session, session));
|
|
198
|
+
if (onError)
|
|
199
|
+
session.on("error", (err) => onError.call(session, err, session));
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
exports.SpeechEngineResource = SpeechEngineResource;
|
|
203
|
+
// ---------------------------------------------------------------------------
|
|
204
|
+
// JWT verification (HS256, no external dependency)
|
|
205
|
+
// ---------------------------------------------------------------------------
|
|
206
|
+
const ISSUER = "https://api.elevenlabs.io/convai/speech-engine";
|
|
207
|
+
const SUBJECT = "convai_speech_engine_upstream";
|
|
208
|
+
const LEEWAY_SECONDS = 60;
|
|
209
|
+
function base64UrlDecode(input) {
|
|
210
|
+
const padded = input.replace(/-/g, "+").replace(/_/g, "/");
|
|
211
|
+
return Buffer.from(padded, "base64");
|
|
212
|
+
}
|
|
213
|
+
/** @internal — exported for testing only */
|
|
214
|
+
function verifySpeechEngineJwt(value, apiKey) {
|
|
215
|
+
let token = value.trim();
|
|
216
|
+
if (token.toLowerCase().startsWith("bearer ")) {
|
|
217
|
+
token = token.slice(7).trim();
|
|
218
|
+
}
|
|
219
|
+
const parts = token.split(".");
|
|
220
|
+
if (parts.length !== 3) {
|
|
221
|
+
throw new Error("Invalid JWT: expected 3 parts");
|
|
222
|
+
}
|
|
223
|
+
const [headerB64, payloadB64, signatureB64] = parts;
|
|
224
|
+
let payload;
|
|
225
|
+
try {
|
|
226
|
+
payload = JSON.parse(base64UrlDecode(payloadB64).toString("utf-8"));
|
|
227
|
+
}
|
|
228
|
+
catch (_a) {
|
|
229
|
+
throw new Error("Invalid JWT: failed to decode payload");
|
|
230
|
+
}
|
|
231
|
+
// SHA-256 hash of the API key, used as the HMAC secret
|
|
232
|
+
const trimmedKey = apiKey.trim();
|
|
233
|
+
const secret = (0, node_crypto_1.createHash)("sha256").update(trimmedKey, "utf-8").digest();
|
|
234
|
+
const expectedSignature = (0, node_crypto_1.createHmac)("sha256", secret)
|
|
235
|
+
.update(`${headerB64}.${payloadB64}`)
|
|
236
|
+
.digest();
|
|
237
|
+
const actualSignature = base64UrlDecode(signatureB64);
|
|
238
|
+
if (!expectedSignature.equals(actualSignature)) {
|
|
239
|
+
throw new Error("Invalid JWT: signature mismatch — make sure the API key used by your Speech Engine server matches the one used to create the engine.");
|
|
240
|
+
}
|
|
241
|
+
if (payload.iss !== ISSUER) {
|
|
242
|
+
throw new Error(`Invalid JWT: expected issuer "${ISSUER}", got "${payload.iss}"`);
|
|
243
|
+
}
|
|
244
|
+
if (payload.sub !== SUBJECT) {
|
|
245
|
+
throw new Error(`Invalid JWT: expected subject "${SUBJECT}", got "${payload.sub}"`);
|
|
246
|
+
}
|
|
247
|
+
const now = Math.floor(Date.now() / 1000);
|
|
248
|
+
if (typeof payload.exp !== "number") {
|
|
249
|
+
throw new Error("Invalid JWT: missing exp claim");
|
|
250
|
+
}
|
|
251
|
+
if (typeof payload.iat !== "number") {
|
|
252
|
+
throw new Error("Invalid JWT: missing iat claim");
|
|
253
|
+
}
|
|
254
|
+
if (payload.exp + LEEWAY_SECONDS < now) {
|
|
255
|
+
throw new Error("Invalid JWT: token has expired");
|
|
256
|
+
}
|
|
257
|
+
if (payload.iat - LEEWAY_SECONDS > now) {
|
|
258
|
+
throw new Error("Invalid JWT: iat is in the future");
|
|
259
|
+
}
|
|
260
|
+
return payload;
|
|
261
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import WebSocket from "ws";
|
|
2
|
+
import { type SpeechEngineCallbacks } from "./types";
|
|
3
|
+
import { SpeechEngineSession } from "./SpeechEngineSession";
|
|
4
|
+
export interface SpeechEngineServerOptions extends SpeechEngineCallbacks {
|
|
5
|
+
/**
|
|
6
|
+
* Port to listen on. Defaults to 3001.
|
|
7
|
+
*/
|
|
8
|
+
port?: number;
|
|
9
|
+
/**
|
|
10
|
+
* Your ElevenLabs API key. Used to verify that incoming WebSocket
|
|
11
|
+
* connections originate from the ElevenLabs API.
|
|
12
|
+
*
|
|
13
|
+
* When omitted, the server will reject all connections and throw
|
|
14
|
+
* an error on start. Pass `{ apiKey: "..." }` or set the
|
|
15
|
+
* `ELEVENLABS_API_KEY` environment variable.
|
|
16
|
+
*/
|
|
17
|
+
apiKey?: string;
|
|
18
|
+
/**
|
|
19
|
+
* The ID of the speech engine this server handles connections for.
|
|
20
|
+
* Populated automatically when created via `engine.listen()`.
|
|
21
|
+
*/
|
|
22
|
+
engineId?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Standalone WebSocket server that produces `SpeechEngineSession` instances for
|
|
26
|
+
* each incoming connection from the ElevenLabs Speech Engine API.
|
|
27
|
+
*
|
|
28
|
+
* Every incoming connection is verified against the ElevenLabs API using the
|
|
29
|
+
* configured API key before being accepted.
|
|
30
|
+
*
|
|
31
|
+
* For integration with an existing HTTP server (e.g. Express, Next.js), use
|
|
32
|
+
* `engine.attach()` instead.
|
|
33
|
+
*/
|
|
34
|
+
export declare class SpeechEngineServer {
|
|
35
|
+
private wss;
|
|
36
|
+
private httpServer;
|
|
37
|
+
private options;
|
|
38
|
+
constructor(options: SpeechEngineServerOptions);
|
|
39
|
+
/**
|
|
40
|
+
* Create a `SpeechEngineSession` from an existing WebSocket. Use this
|
|
41
|
+
* when you manage your own WebSocket server and want to wrap individual
|
|
42
|
+
* connections.
|
|
43
|
+
*/
|
|
44
|
+
handleConnection(ws: WebSocket): SpeechEngineSession;
|
|
45
|
+
/**
|
|
46
|
+
* Start the standalone WebSocket server on the configured port.
|
|
47
|
+
*/
|
|
48
|
+
start(): void;
|
|
49
|
+
private wireHandler;
|
|
50
|
+
/**
|
|
51
|
+
* Stop the WebSocket server and close all active connections.
|
|
52
|
+
*/
|
|
53
|
+
stop(): Promise<void>;
|
|
54
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SpeechEngineServer = void 0;
|
|
7
|
+
const node_http_1 = require("node:http");
|
|
8
|
+
const ws_1 = __importDefault(require("ws"));
|
|
9
|
+
const types_1 = require("./types");
|
|
10
|
+
const SpeechEngineSession_1 = require("./SpeechEngineSession");
|
|
11
|
+
const SpeechEngineResource_1 = require("./SpeechEngineResource");
|
|
12
|
+
/**
|
|
13
|
+
* Standalone WebSocket server that produces `SpeechEngineSession` instances for
|
|
14
|
+
* each incoming connection from the ElevenLabs Speech Engine API.
|
|
15
|
+
*
|
|
16
|
+
* Every incoming connection is verified against the ElevenLabs API using the
|
|
17
|
+
* configured API key before being accepted.
|
|
18
|
+
*
|
|
19
|
+
* For integration with an existing HTTP server (e.g. Express, Next.js), use
|
|
20
|
+
* `engine.attach()` instead.
|
|
21
|
+
*/
|
|
22
|
+
class SpeechEngineServer {
|
|
23
|
+
constructor(options) {
|
|
24
|
+
this.wss = null;
|
|
25
|
+
this.httpServer = null;
|
|
26
|
+
this.options = options;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Create a `SpeechEngineSession` from an existing WebSocket. Use this
|
|
30
|
+
* when you manage your own WebSocket server and want to wrap individual
|
|
31
|
+
* connections.
|
|
32
|
+
*/
|
|
33
|
+
handleConnection(ws) {
|
|
34
|
+
const session = new SpeechEngineSession_1.SpeechEngineSession(ws, { debug: this.options.debug });
|
|
35
|
+
this.wireHandler(session);
|
|
36
|
+
return session;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Start the standalone WebSocket server on the configured port.
|
|
40
|
+
*/
|
|
41
|
+
start() {
|
|
42
|
+
var _a, _b, _c;
|
|
43
|
+
if (this.wss) {
|
|
44
|
+
throw new Error("Server is already started");
|
|
45
|
+
}
|
|
46
|
+
const apiKey = (_a = this.options.apiKey) !== null && _a !== void 0 ? _a : process.env.ELEVENLABS_API_KEY;
|
|
47
|
+
if (!apiKey) {
|
|
48
|
+
throw new Error("SpeechEngine.Server requires an API key to verify incoming connections. " +
|
|
49
|
+
"Pass { apiKey: \"...\" } or set the ELEVENLABS_API_KEY environment variable.");
|
|
50
|
+
}
|
|
51
|
+
const debug = (_b = this.options.debug) !== null && _b !== void 0 ? _b : false;
|
|
52
|
+
const log = debug ? (...args) => console.log("[SpeechEngine]", ...args) : () => { };
|
|
53
|
+
const httpServer = (0, node_http_1.createServer)();
|
|
54
|
+
const wss = new ws_1.default.Server({ noServer: true });
|
|
55
|
+
httpServer.on("upgrade", (req, socket, head) => {
|
|
56
|
+
const headerValue = req.headers["x-elevenlabs-speech-engine-authorization"];
|
|
57
|
+
const token = Array.isArray(headerValue) ? headerValue[0] : headerValue;
|
|
58
|
+
if (!token) {
|
|
59
|
+
log("rejected connection — missing X-Elevenlabs-Speech-Engine-Authorization header");
|
|
60
|
+
socket.destroy();
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
(0, SpeechEngineResource_1.verifySpeechEngineJwt)(token, apiKey);
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
log(`rejected connection — ${err instanceof Error ? err.message : String(err)}`);
|
|
68
|
+
socket.destroy();
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
log("verified connection, upgrading to WebSocket");
|
|
72
|
+
wss.handleUpgrade(req, socket, head, (ws) => {
|
|
73
|
+
wss.emit("connection", ws);
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
wss.on("connection", (ws) => {
|
|
77
|
+
this.handleConnection(ws);
|
|
78
|
+
});
|
|
79
|
+
httpServer.listen((_c = this.options.port) !== null && _c !== void 0 ? _c : 3001);
|
|
80
|
+
this.wss = wss;
|
|
81
|
+
this.httpServer = httpServer;
|
|
82
|
+
}
|
|
83
|
+
wireHandler(session) {
|
|
84
|
+
const { onInit, onTranscript, onClose, onDisconnect, onError } = this.options;
|
|
85
|
+
if (onInit)
|
|
86
|
+
session.on("init", (id) => onInit.call(session, id, session));
|
|
87
|
+
if (onTranscript) {
|
|
88
|
+
session.on("user_transcript", (t, s) => {
|
|
89
|
+
Promise.resolve(onTranscript.call(session, t, s, session)).catch((err) => {
|
|
90
|
+
if ((0, types_1.isAbortError)(err))
|
|
91
|
+
return;
|
|
92
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
93
|
+
if (onError)
|
|
94
|
+
onError.call(session, error, session);
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
if (onClose)
|
|
99
|
+
session.on("close", () => onClose.call(session, session));
|
|
100
|
+
if (onDisconnect)
|
|
101
|
+
session.on("disconnected", () => onDisconnect.call(session, session));
|
|
102
|
+
if (onError)
|
|
103
|
+
session.on("error", (err) => onError.call(session, err, session));
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Stop the WebSocket server and close all active connections.
|
|
107
|
+
*/
|
|
108
|
+
stop() {
|
|
109
|
+
return new Promise((resolve, reject) => {
|
|
110
|
+
if (!this.wss) {
|
|
111
|
+
resolve();
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
this.wss.close((wssErr) => {
|
|
115
|
+
this.wss = null;
|
|
116
|
+
if (this.httpServer) {
|
|
117
|
+
this.httpServer.close((httpErr) => {
|
|
118
|
+
this.httpServer = null;
|
|
119
|
+
if (wssErr || httpErr)
|
|
120
|
+
reject(wssErr || httpErr);
|
|
121
|
+
else
|
|
122
|
+
resolve();
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
if (wssErr)
|
|
127
|
+
reject(wssErr);
|
|
128
|
+
else
|
|
129
|
+
resolve();
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
exports.SpeechEngineServer = SpeechEngineServer;
|