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