1use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct ServerMessageEndOfCallReport {
19 #[serde(rename = "phoneNumber", skip_serializing_if = "Option::is_none")]
20 pub phone_number: Option<models::ServerMessageAssistantRequestPhoneNumber>,
21 #[serde(rename = "type")]
23 pub r#type: Type,
24 #[serde(rename = "endedReason")]
26 pub ended_reason: EndedReason,
27 #[serde(rename = "cost", skip_serializing_if = "Option::is_none")]
29 pub cost: Option<f64>,
30 #[serde(rename = "costs", skip_serializing_if = "Option::is_none")]
32 pub costs: Option<Vec<models::CallCostsInner>>,
33 #[serde(rename = "timestamp", skip_serializing_if = "Option::is_none")]
35 pub timestamp: Option<f64>,
36 #[serde(rename = "artifact")]
38 pub artifact: models::Artifact,
39 #[serde(rename = "assistant", skip_serializing_if = "Option::is_none")]
41 pub assistant: Option<models::CreateAssistantDto>,
42 #[serde(rename = "customer", skip_serializing_if = "Option::is_none")]
44 pub customer: Option<models::CreateCustomerDto>,
45 #[serde(rename = "call", skip_serializing_if = "Option::is_none")]
47 pub call: Option<models::Call>,
48 #[serde(rename = "analysis")]
50 pub analysis: models::Analysis,
51 #[serde(rename = "startedAt", skip_serializing_if = "Option::is_none")]
53 pub started_at: Option<String>,
54 #[serde(rename = "endedAt", skip_serializing_if = "Option::is_none")]
56 pub ended_at: Option<String>,
57}
58
59impl ServerMessageEndOfCallReport {
60 pub fn new(
61 r#type: Type,
62 ended_reason: EndedReason,
63 artifact: models::Artifact,
64 analysis: models::Analysis,
65 ) -> ServerMessageEndOfCallReport {
66 ServerMessageEndOfCallReport {
67 phone_number: None,
68 r#type,
69 ended_reason,
70 cost: None,
71 costs: None,
72 timestamp: None,
73 artifact,
74 assistant: None,
75 customer: None,
76 call: None,
77 analysis,
78 started_at: None,
79 ended_at: None,
80 }
81 }
82}
83#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
85pub enum Type {
86 #[serde(rename = "end-of-call-report")]
87 EndOfCallReport,
88}
89
90impl Default for Type {
91 fn default() -> Type {
92 Self::EndOfCallReport
93 }
94}
95#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
97pub enum EndedReason {
98 #[serde(rename = "assistant-not-valid")]
99 AssistantNotValid,
100 #[serde(rename = "assistant-not-provided")]
101 AssistantNotProvided,
102 #[serde(rename = "call-start-error-neither-assistant-nor-server-set")]
103 CallStartErrorNeitherAssistantNorServerSet,
104 #[serde(rename = "assistant-request-failed")]
105 AssistantRequestFailed,
106 #[serde(rename = "assistant-request-returned-error")]
107 AssistantRequestReturnedError,
108 #[serde(rename = "assistant-request-returned-unspeakable-error")]
109 AssistantRequestReturnedUnspeakableError,
110 #[serde(rename = "assistant-request-returned-invalid-assistant")]
111 AssistantRequestReturnedInvalidAssistant,
112 #[serde(rename = "assistant-request-returned-no-assistant")]
113 AssistantRequestReturnedNoAssistant,
114 #[serde(rename = "assistant-request-returned-forwarding-phone-number")]
115 AssistantRequestReturnedForwardingPhoneNumber,
116 #[serde(rename = "assistant-ended-call")]
117 AssistantEndedCall,
118 #[serde(rename = "assistant-said-end-call-phrase")]
119 AssistantSaidEndCallPhrase,
120 #[serde(rename = "assistant-ended-call-with-hangup-task")]
121 AssistantEndedCallWithHangupTask,
122 #[serde(rename = "assistant-forwarded-call")]
123 AssistantForwardedCall,
124 #[serde(rename = "assistant-join-timed-out")]
125 AssistantJoinTimedOut,
126 #[serde(rename = "customer-busy")]
127 CustomerBusy,
128 #[serde(rename = "customer-ended-call")]
129 CustomerEndedCall,
130 #[serde(rename = "customer-did-not-answer")]
131 CustomerDidNotAnswer,
132 #[serde(rename = "customer-did-not-give-microphone-permission")]
133 CustomerDidNotGiveMicrophonePermission,
134 #[serde(rename = "assistant-said-message-with-end-call-enabled")]
135 AssistantSaidMessageWithEndCallEnabled,
136 #[serde(rename = "exceeded-max-duration")]
137 ExceededMaxDuration,
138 #[serde(rename = "manually-canceled")]
139 ManuallyCanceled,
140 #[serde(rename = "phone-call-provider-closed-websocket")]
141 PhoneCallProviderClosedWebsocket,
142 #[serde(rename = "db-error")]
143 DbError,
144 #[serde(rename = "assistant-not-found")]
145 AssistantNotFound,
146 #[serde(rename = "license-check-failed")]
147 LicenseCheckFailed,
148 #[serde(rename = "pipeline-error-openai-voice-failed")]
149 PipelineErrorOpenaiVoiceFailed,
150 #[serde(rename = "pipeline-error-cartesia-voice-failed")]
151 PipelineErrorCartesiaVoiceFailed,
152 #[serde(rename = "pipeline-error-deepgram-voice-failed")]
153 PipelineErrorDeepgramVoiceFailed,
154 #[serde(rename = "pipeline-error-eleven-labs-voice-failed")]
155 PipelineErrorElevenLabsVoiceFailed,
156 #[serde(rename = "pipeline-error-playht-voice-failed")]
157 PipelineErrorPlayhtVoiceFailed,
158 #[serde(rename = "pipeline-error-lmnt-voice-failed")]
159 PipelineErrorLmntVoiceFailed,
160 #[serde(rename = "pipeline-error-azure-voice-failed")]
161 PipelineErrorAzureVoiceFailed,
162 #[serde(rename = "pipeline-error-rime-ai-voice-failed")]
163 PipelineErrorRimeAiVoiceFailed,
164 #[serde(rename = "pipeline-error-neets-voice-failed")]
165 PipelineErrorNeetsVoiceFailed,
166 #[serde(rename = "pipeline-error-smallest-ai-voice-failed")]
167 PipelineErrorSmallestAiVoiceFailed,
168 #[serde(rename = "pipeline-error-neuphonic-voice-failed")]
169 PipelineErrorNeuphonicVoiceFailed,
170 #[serde(rename = "pipeline-error-hume-voice-failed")]
171 PipelineErrorHumeVoiceFailed,
172 #[serde(rename = "pipeline-error-deepgram-transcriber-failed")]
173 PipelineErrorDeepgramTranscriberFailed,
174 #[serde(rename = "pipeline-error-gladia-transcriber-failed")]
175 PipelineErrorGladiaTranscriberFailed,
176 #[serde(rename = "pipeline-error-speechmatics-transcriber-failed")]
177 PipelineErrorSpeechmaticsTranscriberFailed,
178 #[serde(rename = "pipeline-error-assembly-ai-transcriber-failed")]
179 PipelineErrorAssemblyAiTranscriberFailed,
180 #[serde(rename = "pipeline-error-talkscriber-transcriber-failed")]
181 PipelineErrorTalkscriberTranscriberFailed,
182 #[serde(rename = "pipeline-error-azure-speech-transcriber-failed")]
183 PipelineErrorAzureSpeechTranscriberFailed,
184 #[serde(rename = "pipeline-error-vapi-llm-failed")]
185 PipelineErrorVapiLlmFailed,
186 #[serde(rename = "pipeline-error-vapi-400-bad-request-validation-failed")]
187 PipelineErrorVapi400BadRequestValidationFailed,
188 #[serde(rename = "pipeline-error-vapi-401-unauthorized")]
189 PipelineErrorVapi401Unauthorized,
190 #[serde(rename = "pipeline-error-vapi-403-model-access-denied")]
191 PipelineErrorVapi403ModelAccessDenied,
192 #[serde(rename = "pipeline-error-vapi-429-exceeded-quota")]
193 PipelineErrorVapi429ExceededQuota,
194 #[serde(rename = "pipeline-error-vapi-500-server-error")]
195 PipelineErrorVapi500ServerError,
196 #[serde(rename = "pipeline-no-available-model")]
197 PipelineNoAvailableModel,
198 #[serde(rename = "worker-shutdown")]
199 WorkerShutdown,
200 #[serde(rename = "unknown-error")]
201 UnknownError,
202 #[serde(rename = "vonage-disconnected")]
203 VonageDisconnected,
204 #[serde(rename = "vonage-failed-to-connect-call")]
205 VonageFailedToConnectCall,
206 #[serde(rename = "phone-call-provider-bypass-enabled-but-no-call-received")]
207 PhoneCallProviderBypassEnabledButNoCallReceived,
208 #[serde(rename = "vapifault-phone-call-worker-setup-socket-error")]
209 VapifaultPhoneCallWorkerSetupSocketError,
210 #[serde(rename = "vapifault-phone-call-worker-worker-setup-socket-timeout")]
211 VapifaultPhoneCallWorkerWorkerSetupSocketTimeout,
212 #[serde(rename = "vapifault-phone-call-worker-could-not-find-call")]
213 VapifaultPhoneCallWorkerCouldNotFindCall,
214 #[serde(rename = "vapifault-transport-never-connected")]
215 VapifaultTransportNeverConnected,
216 #[serde(rename = "vapifault-web-call-worker-setup-failed")]
217 VapifaultWebCallWorkerSetupFailed,
218 #[serde(rename = "vapifault-transport-connected-but-call-not-active")]
219 VapifaultTransportConnectedButCallNotActive,
220 #[serde(rename = "vapifault-call-started-but-connection-to-transport-missing")]
221 VapifaultCallStartedButConnectionToTransportMissing,
222 #[serde(rename = "pipeline-error-openai-llm-failed")]
223 PipelineErrorOpenaiLlmFailed,
224 #[serde(rename = "pipeline-error-azure-openai-llm-failed")]
225 PipelineErrorAzureOpenaiLlmFailed,
226 #[serde(rename = "pipeline-error-groq-llm-failed")]
227 PipelineErrorGroqLlmFailed,
228 #[serde(rename = "pipeline-error-google-llm-failed")]
229 PipelineErrorGoogleLlmFailed,
230 #[serde(rename = "pipeline-error-xai-llm-failed")]
231 PipelineErrorXaiLlmFailed,
232 #[serde(rename = "pipeline-error-mistral-llm-failed")]
233 PipelineErrorMistralLlmFailed,
234 #[serde(rename = "pipeline-error-inflection-ai-llm-failed")]
235 PipelineErrorInflectionAiLlmFailed,
236 #[serde(rename = "pipeline-error-cerebras-llm-failed")]
237 PipelineErrorCerebrasLlmFailed,
238 #[serde(rename = "pipeline-error-deep-seek-llm-failed")]
239 PipelineErrorDeepSeekLlmFailed,
240 #[serde(rename = "pipeline-error-openai-400-bad-request-validation-failed")]
241 PipelineErrorOpenai400BadRequestValidationFailed,
242 #[serde(rename = "pipeline-error-openai-401-unauthorized")]
243 PipelineErrorOpenai401Unauthorized,
244 #[serde(rename = "pipeline-error-openai-403-model-access-denied")]
245 PipelineErrorOpenai403ModelAccessDenied,
246 #[serde(rename = "pipeline-error-openai-429-exceeded-quota")]
247 PipelineErrorOpenai429ExceededQuota,
248 #[serde(rename = "pipeline-error-openai-500-server-error")]
249 PipelineErrorOpenai500ServerError,
250 #[serde(rename = "pipeline-error-google-400-bad-request-validation-failed")]
251 PipelineErrorGoogle400BadRequestValidationFailed,
252 #[serde(rename = "pipeline-error-google-401-unauthorized")]
253 PipelineErrorGoogle401Unauthorized,
254 #[serde(rename = "pipeline-error-google-403-model-access-denied")]
255 PipelineErrorGoogle403ModelAccessDenied,
256 #[serde(rename = "pipeline-error-google-429-exceeded-quota")]
257 PipelineErrorGoogle429ExceededQuota,
258 #[serde(rename = "pipeline-error-google-500-server-error")]
259 PipelineErrorGoogle500ServerError,
260 #[serde(rename = "pipeline-error-xai-400-bad-request-validation-failed")]
261 PipelineErrorXai400BadRequestValidationFailed,
262 #[serde(rename = "pipeline-error-xai-401-unauthorized")]
263 PipelineErrorXai401Unauthorized,
264 #[serde(rename = "pipeline-error-xai-403-model-access-denied")]
265 PipelineErrorXai403ModelAccessDenied,
266 #[serde(rename = "pipeline-error-xai-429-exceeded-quota")]
267 PipelineErrorXai429ExceededQuota,
268 #[serde(rename = "pipeline-error-xai-500-server-error")]
269 PipelineErrorXai500ServerError,
270 #[serde(rename = "pipeline-error-mistral-400-bad-request-validation-failed")]
271 PipelineErrorMistral400BadRequestValidationFailed,
272 #[serde(rename = "pipeline-error-mistral-401-unauthorized")]
273 PipelineErrorMistral401Unauthorized,
274 #[serde(rename = "pipeline-error-mistral-403-model-access-denied")]
275 PipelineErrorMistral403ModelAccessDenied,
276 #[serde(rename = "pipeline-error-mistral-429-exceeded-quota")]
277 PipelineErrorMistral429ExceededQuota,
278 #[serde(rename = "pipeline-error-mistral-500-server-error")]
279 PipelineErrorMistral500ServerError,
280 #[serde(rename = "pipeline-error-inflection-ai-400-bad-request-validation-failed")]
281 PipelineErrorInflectionAi400BadRequestValidationFailed,
282 #[serde(rename = "pipeline-error-inflection-ai-401-unauthorized")]
283 PipelineErrorInflectionAi401Unauthorized,
284 #[serde(rename = "pipeline-error-inflection-ai-403-model-access-denied")]
285 PipelineErrorInflectionAi403ModelAccessDenied,
286 #[serde(rename = "pipeline-error-inflection-ai-429-exceeded-quota")]
287 PipelineErrorInflectionAi429ExceededQuota,
288 #[serde(rename = "pipeline-error-inflection-ai-500-server-error")]
289 PipelineErrorInflectionAi500ServerError,
290 #[serde(rename = "pipeline-error-deep-seek-400-bad-request-validation-failed")]
291 PipelineErrorDeepSeek400BadRequestValidationFailed,
292 #[serde(rename = "pipeline-error-deep-seek-401-unauthorized")]
293 PipelineErrorDeepSeek401Unauthorized,
294 #[serde(rename = "pipeline-error-deep-seek-403-model-access-denied")]
295 PipelineErrorDeepSeek403ModelAccessDenied,
296 #[serde(rename = "pipeline-error-deep-seek-429-exceeded-quota")]
297 PipelineErrorDeepSeek429ExceededQuota,
298 #[serde(rename = "pipeline-error-deep-seek-500-server-error")]
299 PipelineErrorDeepSeek500ServerError,
300 #[serde(rename = "pipeline-error-azure-openai-400-bad-request-validation-failed")]
301 PipelineErrorAzureOpenai400BadRequestValidationFailed,
302 #[serde(rename = "pipeline-error-azure-openai-401-unauthorized")]
303 PipelineErrorAzureOpenai401Unauthorized,
304 #[serde(rename = "pipeline-error-azure-openai-403-model-access-denied")]
305 PipelineErrorAzureOpenai403ModelAccessDenied,
306 #[serde(rename = "pipeline-error-azure-openai-429-exceeded-quota")]
307 PipelineErrorAzureOpenai429ExceededQuota,
308 #[serde(rename = "pipeline-error-azure-openai-500-server-error")]
309 PipelineErrorAzureOpenai500ServerError,
310 #[serde(rename = "pipeline-error-groq-400-bad-request-validation-failed")]
311 PipelineErrorGroq400BadRequestValidationFailed,
312 #[serde(rename = "pipeline-error-groq-401-unauthorized")]
313 PipelineErrorGroq401Unauthorized,
314 #[serde(rename = "pipeline-error-groq-403-model-access-denied")]
315 PipelineErrorGroq403ModelAccessDenied,
316 #[serde(rename = "pipeline-error-groq-429-exceeded-quota")]
317 PipelineErrorGroq429ExceededQuota,
318 #[serde(rename = "pipeline-error-groq-500-server-error")]
319 PipelineErrorGroq500ServerError,
320 #[serde(rename = "pipeline-error-cerebras-400-bad-request-validation-failed")]
321 PipelineErrorCerebras400BadRequestValidationFailed,
322 #[serde(rename = "pipeline-error-cerebras-401-unauthorized")]
323 PipelineErrorCerebras401Unauthorized,
324 #[serde(rename = "pipeline-error-cerebras-403-model-access-denied")]
325 PipelineErrorCerebras403ModelAccessDenied,
326 #[serde(rename = "pipeline-error-cerebras-429-exceeded-quota")]
327 PipelineErrorCerebras429ExceededQuota,
328 #[serde(rename = "pipeline-error-cerebras-500-server-error")]
329 PipelineErrorCerebras500ServerError,
330 #[serde(rename = "pipeline-error-anthropic-400-bad-request-validation-failed")]
331 PipelineErrorAnthropic400BadRequestValidationFailed,
332 #[serde(rename = "pipeline-error-anthropic-401-unauthorized")]
333 PipelineErrorAnthropic401Unauthorized,
334 #[serde(rename = "pipeline-error-anthropic-403-model-access-denied")]
335 PipelineErrorAnthropic403ModelAccessDenied,
336 #[serde(rename = "pipeline-error-anthropic-429-exceeded-quota")]
337 PipelineErrorAnthropic429ExceededQuota,
338 #[serde(rename = "pipeline-error-anthropic-500-server-error")]
339 PipelineErrorAnthropic500ServerError,
340 #[serde(rename = "pipeline-error-anthropic-llm-failed")]
341 PipelineErrorAnthropicLlmFailed,
342 #[serde(rename = "pipeline-error-together-ai-400-bad-request-validation-failed")]
343 PipelineErrorTogetherAi400BadRequestValidationFailed,
344 #[serde(rename = "pipeline-error-together-ai-401-unauthorized")]
345 PipelineErrorTogetherAi401Unauthorized,
346 #[serde(rename = "pipeline-error-together-ai-403-model-access-denied")]
347 PipelineErrorTogetherAi403ModelAccessDenied,
348 #[serde(rename = "pipeline-error-together-ai-429-exceeded-quota")]
349 PipelineErrorTogetherAi429ExceededQuota,
350 #[serde(rename = "pipeline-error-together-ai-500-server-error")]
351 PipelineErrorTogetherAi500ServerError,
352 #[serde(rename = "pipeline-error-together-ai-llm-failed")]
353 PipelineErrorTogetherAiLlmFailed,
354 #[serde(rename = "pipeline-error-anyscale-400-bad-request-validation-failed")]
355 PipelineErrorAnyscale400BadRequestValidationFailed,
356 #[serde(rename = "pipeline-error-anyscale-401-unauthorized")]
357 PipelineErrorAnyscale401Unauthorized,
358 #[serde(rename = "pipeline-error-anyscale-403-model-access-denied")]
359 PipelineErrorAnyscale403ModelAccessDenied,
360 #[serde(rename = "pipeline-error-anyscale-429-exceeded-quota")]
361 PipelineErrorAnyscale429ExceededQuota,
362 #[serde(rename = "pipeline-error-anyscale-500-server-error")]
363 PipelineErrorAnyscale500ServerError,
364 #[serde(rename = "pipeline-error-anyscale-llm-failed")]
365 PipelineErrorAnyscaleLlmFailed,
366 #[serde(rename = "pipeline-error-openrouter-400-bad-request-validation-failed")]
367 PipelineErrorOpenrouter400BadRequestValidationFailed,
368 #[serde(rename = "pipeline-error-openrouter-401-unauthorized")]
369 PipelineErrorOpenrouter401Unauthorized,
370 #[serde(rename = "pipeline-error-openrouter-403-model-access-denied")]
371 PipelineErrorOpenrouter403ModelAccessDenied,
372 #[serde(rename = "pipeline-error-openrouter-429-exceeded-quota")]
373 PipelineErrorOpenrouter429ExceededQuota,
374 #[serde(rename = "pipeline-error-openrouter-500-server-error")]
375 PipelineErrorOpenrouter500ServerError,
376 #[serde(rename = "pipeline-error-openrouter-llm-failed")]
377 PipelineErrorOpenrouterLlmFailed,
378 #[serde(rename = "pipeline-error-perplexity-ai-400-bad-request-validation-failed")]
379 PipelineErrorPerplexityAi400BadRequestValidationFailed,
380 #[serde(rename = "pipeline-error-perplexity-ai-401-unauthorized")]
381 PipelineErrorPerplexityAi401Unauthorized,
382 #[serde(rename = "pipeline-error-perplexity-ai-403-model-access-denied")]
383 PipelineErrorPerplexityAi403ModelAccessDenied,
384 #[serde(rename = "pipeline-error-perplexity-ai-429-exceeded-quota")]
385 PipelineErrorPerplexityAi429ExceededQuota,
386 #[serde(rename = "pipeline-error-perplexity-ai-500-server-error")]
387 PipelineErrorPerplexityAi500ServerError,
388 #[serde(rename = "pipeline-error-perplexity-ai-llm-failed")]
389 PipelineErrorPerplexityAiLlmFailed,
390 #[serde(rename = "pipeline-error-deepinfra-400-bad-request-validation-failed")]
391 PipelineErrorDeepinfra400BadRequestValidationFailed,
392 #[serde(rename = "pipeline-error-deepinfra-401-unauthorized")]
393 PipelineErrorDeepinfra401Unauthorized,
394 #[serde(rename = "pipeline-error-deepinfra-403-model-access-denied")]
395 PipelineErrorDeepinfra403ModelAccessDenied,
396 #[serde(rename = "pipeline-error-deepinfra-429-exceeded-quota")]
397 PipelineErrorDeepinfra429ExceededQuota,
398 #[serde(rename = "pipeline-error-deepinfra-500-server-error")]
399 PipelineErrorDeepinfra500ServerError,
400 #[serde(rename = "pipeline-error-deepinfra-llm-failed")]
401 PipelineErrorDeepinfraLlmFailed,
402 #[serde(rename = "pipeline-error-runpod-400-bad-request-validation-failed")]
403 PipelineErrorRunpod400BadRequestValidationFailed,
404 #[serde(rename = "pipeline-error-runpod-401-unauthorized")]
405 PipelineErrorRunpod401Unauthorized,
406 #[serde(rename = "pipeline-error-runpod-403-model-access-denied")]
407 PipelineErrorRunpod403ModelAccessDenied,
408 #[serde(rename = "pipeline-error-runpod-429-exceeded-quota")]
409 PipelineErrorRunpod429ExceededQuota,
410 #[serde(rename = "pipeline-error-runpod-500-server-error")]
411 PipelineErrorRunpod500ServerError,
412 #[serde(rename = "pipeline-error-runpod-llm-failed")]
413 PipelineErrorRunpodLlmFailed,
414 #[serde(rename = "pipeline-error-custom-llm-400-bad-request-validation-failed")]
415 PipelineErrorCustomLlm400BadRequestValidationFailed,
416 #[serde(rename = "pipeline-error-custom-llm-401-unauthorized")]
417 PipelineErrorCustomLlm401Unauthorized,
418 #[serde(rename = "pipeline-error-custom-llm-403-model-access-denied")]
419 PipelineErrorCustomLlm403ModelAccessDenied,
420 #[serde(rename = "pipeline-error-custom-llm-429-exceeded-quota")]
421 PipelineErrorCustomLlm429ExceededQuota,
422 #[serde(rename = "pipeline-error-custom-llm-500-server-error")]
423 PipelineErrorCustomLlm500ServerError,
424 #[serde(rename = "pipeline-error-custom-llm-llm-failed")]
425 PipelineErrorCustomLlmLlmFailed,
426 #[serde(rename = "pipeline-error-custom-voice-failed")]
427 PipelineErrorCustomVoiceFailed,
428 #[serde(rename = "pipeline-error-cartesia-socket-hang-up")]
429 PipelineErrorCartesiaSocketHangUp,
430 #[serde(rename = "pipeline-error-cartesia-requested-payment")]
431 PipelineErrorCartesiaRequestedPayment,
432 #[serde(rename = "pipeline-error-cartesia-500-server-error")]
433 PipelineErrorCartesia500ServerError,
434 #[serde(rename = "pipeline-error-cartesia-503-server-error")]
435 PipelineErrorCartesia503ServerError,
436 #[serde(rename = "pipeline-error-cartesia-522-server-error")]
437 PipelineErrorCartesia522ServerError,
438 #[serde(rename = "pipeline-error-eleven-labs-voice-not-found")]
439 PipelineErrorElevenLabsVoiceNotFound,
440 #[serde(rename = "pipeline-error-eleven-labs-quota-exceeded")]
441 PipelineErrorElevenLabsQuotaExceeded,
442 #[serde(rename = "pipeline-error-eleven-labs-unauthorized-access")]
443 PipelineErrorElevenLabsUnauthorizedAccess,
444 #[serde(rename = "pipeline-error-eleven-labs-unauthorized-to-access-model")]
445 PipelineErrorElevenLabsUnauthorizedToAccessModel,
446 #[serde(rename = "pipeline-error-eleven-labs-professional-voices-only-for-creator-plus")]
447 PipelineErrorElevenLabsProfessionalVoicesOnlyForCreatorPlus,
448 #[serde(rename = "pipeline-error-eleven-labs-blocked-free-plan-and-requested-upgrade")]
449 PipelineErrorElevenLabsBlockedFreePlanAndRequestedUpgrade,
450 #[serde(
451 rename = "pipeline-error-eleven-labs-blocked-concurrent-requests-and-requested-upgrade"
452 )]
453 PipelineErrorElevenLabsBlockedConcurrentRequestsAndRequestedUpgrade,
454 #[serde(
455 rename = "pipeline-error-eleven-labs-blocked-using-instant-voice-clone-and-requested-upgrade"
456 )]
457 PipelineErrorElevenLabsBlockedUsingInstantVoiceCloneAndRequestedUpgrade,
458 #[serde(rename = "pipeline-error-eleven-labs-system-busy-and-requested-upgrade")]
459 PipelineErrorElevenLabsSystemBusyAndRequestedUpgrade,
460 #[serde(rename = "pipeline-error-eleven-labs-voice-not-fine-tuned")]
461 PipelineErrorElevenLabsVoiceNotFineTuned,
462 #[serde(rename = "pipeline-error-eleven-labs-invalid-api-key")]
463 PipelineErrorElevenLabsInvalidApiKey,
464 #[serde(rename = "pipeline-error-eleven-labs-invalid-voice-samples")]
465 PipelineErrorElevenLabsInvalidVoiceSamples,
466 #[serde(rename = "pipeline-error-eleven-labs-voice-disabled-by-owner")]
467 PipelineErrorElevenLabsVoiceDisabledByOwner,
468 #[serde(rename = "pipeline-error-eleven-labs-blocked-account-in-probation")]
469 PipelineErrorElevenLabsBlockedAccountInProbation,
470 #[serde(rename = "pipeline-error-eleven-labs-blocked-content-against-their-policy")]
471 PipelineErrorElevenLabsBlockedContentAgainstTheirPolicy,
472 #[serde(rename = "pipeline-error-eleven-labs-missing-samples-for-voice-clone")]
473 PipelineErrorElevenLabsMissingSamplesForVoiceClone,
474 #[serde(rename = "pipeline-error-eleven-labs-voice-not-fine-tuned-and-cannot-be-used")]
475 PipelineErrorElevenLabsVoiceNotFineTunedAndCannotBeUsed,
476 #[serde(rename = "pipeline-error-eleven-labs-voice-not-allowed-for-free-users")]
477 PipelineErrorElevenLabsVoiceNotAllowedForFreeUsers,
478 #[serde(rename = "pipeline-error-eleven-labs-500-server-error")]
479 PipelineErrorElevenLabs500ServerError,
480 #[serde(rename = "pipeline-error-eleven-labs-max-character-limit-exceeded")]
481 PipelineErrorElevenLabsMaxCharacterLimitExceeded,
482 #[serde(
483 rename = "pipeline-error-eleven-labs-blocked-voice-potentially-against-terms-of-service-and-awaiting-verification"
484 )]
485 PipelineErrorElevenLabsBlockedVoicePotentiallyAgainstTermsOfServiceAndAwaitingVerification,
486 #[serde(rename = "pipeline-error-playht-request-timed-out")]
487 PipelineErrorPlayhtRequestTimedOut,
488 #[serde(rename = "pipeline-error-playht-invalid-voice")]
489 PipelineErrorPlayhtInvalidVoice,
490 #[serde(rename = "pipeline-error-playht-unexpected-error")]
491 PipelineErrorPlayhtUnexpectedError,
492 #[serde(rename = "pipeline-error-playht-out-of-credits")]
493 PipelineErrorPlayhtOutOfCredits,
494 #[serde(rename = "pipeline-error-playht-invalid-emotion")]
495 PipelineErrorPlayhtInvalidEmotion,
496 #[serde(rename = "pipeline-error-playht-voice-must-be-a-valid-voice-manifest-uri")]
497 PipelineErrorPlayhtVoiceMustBeAValidVoiceManifestUri,
498 #[serde(rename = "pipeline-error-playht-401-unauthorized")]
499 PipelineErrorPlayht401Unauthorized,
500 #[serde(rename = "pipeline-error-playht-403-forbidden-out-of-characters")]
501 PipelineErrorPlayht403ForbiddenOutOfCharacters,
502 #[serde(rename = "pipeline-error-playht-403-forbidden-api-access-not-available")]
503 PipelineErrorPlayht403ForbiddenApiAccessNotAvailable,
504 #[serde(rename = "pipeline-error-playht-429-exceeded-quota")]
505 PipelineErrorPlayht429ExceededQuota,
506 #[serde(rename = "pipeline-error-playht-502-gateway-error")]
507 PipelineErrorPlayht502GatewayError,
508 #[serde(rename = "pipeline-error-playht-504-gateway-error")]
509 PipelineErrorPlayht504GatewayError,
510 #[serde(rename = "pipeline-error-tavus-video-failed")]
511 PipelineErrorTavusVideoFailed,
512 #[serde(rename = "pipeline-error-custom-transcriber-failed")]
513 PipelineErrorCustomTranscriberFailed,
514 #[serde(rename = "pipeline-error-11labs-transcriber-failed")]
515 PipelineError11labsTranscriberFailed,
516 #[serde(rename = "pipeline-error-deepgram-returning-403-model-access-denied")]
517 PipelineErrorDeepgramReturning403ModelAccessDenied,
518 #[serde(rename = "pipeline-error-deepgram-returning-401-invalid-credentials")]
519 PipelineErrorDeepgramReturning401InvalidCredentials,
520 #[serde(rename = "pipeline-error-deepgram-returning-404-not-found")]
521 PipelineErrorDeepgramReturning404NotFound,
522 #[serde(
523 rename = "pipeline-error-deepgram-returning-400-no-such-model-language-tier-combination"
524 )]
525 PipelineErrorDeepgramReturning400NoSuchModelLanguageTierCombination,
526 #[serde(rename = "pipeline-error-deepgram-returning-500-invalid-json")]
527 PipelineErrorDeepgramReturning500InvalidJson,
528 #[serde(rename = "pipeline-error-deepgram-returning-502-network-error")]
529 PipelineErrorDeepgramReturning502NetworkError,
530 #[serde(rename = "pipeline-error-deepgram-returning-502-bad-gateway-ehostunreach")]
531 PipelineErrorDeepgramReturning502BadGatewayEhostunreach,
532 #[serde(rename = "silence-timed-out")]
533 SilenceTimedOut,
534 #[serde(rename = "sip-gateway-failed-to-connect-call")]
535 SipGatewayFailedToConnectCall,
536 #[serde(rename = "twilio-failed-to-connect-call")]
537 TwilioFailedToConnectCall,
538 #[serde(rename = "twilio-reported-customer-misdialed")]
539 TwilioReportedCustomerMisdialed,
540 #[serde(rename = "vonage-rejected")]
541 VonageRejected,
542 #[serde(rename = "voicemail")]
543 Voicemail,
544}
545
546impl Default for EndedReason {
547 fn default() -> EndedReason {
548 Self::AssistantNotValid
549 }
550}