telnyx 5.123.0 → 5.124.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.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +5 -0
  5. data/lib/telnyx/models/ai/assistant_create_params.rb +780 -1
  6. data/lib/telnyx/models/ai/assistant_update_params.rb +780 -1
  7. data/lib/telnyx/models/ai/assistants/update_assistant.rb +785 -1
  8. data/lib/telnyx/models/ai/inference_embedding.rb +767 -1
  9. data/lib/telnyx/models/{ai_create_response_params.rb → ai_create_response_deprecated_params.rb} +2 -2
  10. data/lib/telnyx/models/{ai_create_response_response.rb → ai_create_response_deprecated_response.rb} +1 -1
  11. data/lib/telnyx/models/call_dial_params.rb +276 -10
  12. data/lib/telnyx/models/calls/action_answer_params.rb +278 -10
  13. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +15 -4
  14. data/lib/telnyx/models/calls/action_speak_params.rb +15 -4
  15. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +431 -13
  16. data/lib/telnyx/models/calls/transcription_start_request.rb +173 -5
  17. data/lib/telnyx/models/conferences/action_speak_params.rb +15 -4
  18. data/lib/telnyx/models/messaging_profile_update_params.rb +9 -1
  19. data/lib/telnyx/models/sip_registration_status_retrieve_params.rb +45 -0
  20. data/lib/telnyx/models/sip_registration_status_retrieve_response.rb +160 -0
  21. data/lib/telnyx/models/speech_to_text_list_providers_params.rb +16 -5
  22. data/lib/telnyx/models/speech_to_text_list_providers_response.rb +55 -23
  23. data/lib/telnyx/models/voice_sdk_call_report_list_response.rb +114 -9
  24. data/lib/telnyx/models/voice_sdk_call_report_retrieve_response.rb +116 -9
  25. data/lib/telnyx/models/whatsapp/user_data_retrieve_response.rb +44 -3
  26. data/lib/telnyx/models/whatsapp/user_data_update_response.rb +44 -3
  27. data/lib/telnyx/models.rb +3 -9
  28. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  29. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  30. data/lib/telnyx/resources/ai.rb +4 -4
  31. data/lib/telnyx/resources/calls/actions.rb +6 -6
  32. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  33. data/lib/telnyx/resources/messaging_profiles.rb +3 -1
  34. data/lib/telnyx/resources/sip_registration_status.rb +45 -0
  35. data/lib/telnyx/resources/speech_to_text.rb +6 -5
  36. data/lib/telnyx/version.rb +1 -1
  37. data/lib/telnyx.rb +5 -9
  38. data/rbi/telnyx/client.rbi +4 -0
  39. data/rbi/telnyx/models/ai/assistant_create_params.rbi +1411 -0
  40. data/rbi/telnyx/models/ai/assistant_update_params.rbi +1411 -0
  41. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +1417 -0
  42. data/rbi/telnyx/models/ai/inference_embedding.rbi +1454 -0
  43. data/rbi/telnyx/models/{ai_create_response_params.rbi → ai_create_response_deprecated_params.rbi} +5 -2
  44. data/rbi/telnyx/models/{ai_create_response_response.rbi → ai_create_response_deprecated_response.rbi} +1 -1
  45. data/rbi/telnyx/models/call_dial_params.rbi +661 -13
  46. data/rbi/telnyx/models/calls/action_answer_params.rbi +659 -13
  47. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +30 -5
  48. data/rbi/telnyx/models/calls/action_speak_params.rbi +30 -5
  49. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +1016 -17
  50. data/rbi/telnyx/models/calls/transcription_start_request.rbi +433 -10
  51. data/rbi/telnyx/models/conferences/action_speak_params.rbi +30 -5
  52. data/rbi/telnyx/models/messaging_profile_update_params.rbi +8 -0
  53. data/rbi/telnyx/models/sip_registration_status_retrieve_params.rbi +93 -0
  54. data/rbi/telnyx/models/sip_registration_status_retrieve_response.rbi +343 -0
  55. data/rbi/telnyx/models/speech_to_text_list_providers_params.rbi +27 -7
  56. data/rbi/telnyx/models/speech_to_text_list_providers_response.rbi +107 -43
  57. data/rbi/telnyx/models/voice_sdk_call_report_list_response.rbi +294 -9
  58. data/rbi/telnyx/models/voice_sdk_call_report_retrieve_response.rbi +294 -9
  59. data/rbi/telnyx/models/whatsapp/user_data_retrieve_response.rbi +96 -6
  60. data/rbi/telnyx/models/whatsapp/user_data_update_response.rbi +94 -6
  61. data/rbi/telnyx/models.rbi +5 -10
  62. data/rbi/telnyx/resources/ai/assistants/versions.rbi +8 -0
  63. data/rbi/telnyx/resources/ai/assistants.rbi +16 -0
  64. data/rbi/telnyx/resources/ai.rbi +1 -1
  65. data/rbi/telnyx/resources/calls/actions.rbi +10 -7
  66. data/rbi/telnyx/resources/conferences/actions.rbi +1 -1
  67. data/rbi/telnyx/resources/messaging_profiles.rbi +3 -0
  68. data/rbi/telnyx/resources/sip_registration_status.rbi +34 -0
  69. data/rbi/telnyx/resources/speech_to_text.rbi +11 -5
  70. data/sig/telnyx/client.rbs +2 -0
  71. data/sig/telnyx/models/ai/assistant_create_params.rbs +508 -0
  72. data/sig/telnyx/models/ai/assistant_update_params.rbs +508 -0
  73. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +511 -0
  74. data/sig/telnyx/models/ai/inference_embedding.rbs +526 -0
  75. data/sig/telnyx/models/{ai_create_response_params.rbs → ai_create_response_deprecated_params.rbs} +2 -2
  76. data/sig/telnyx/models/ai_create_response_deprecated_response.rbs +7 -0
  77. data/sig/telnyx/models/call_dial_params.rbs +236 -13
  78. data/sig/telnyx/models/calls/action_answer_params.rbs +236 -13
  79. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +11 -1
  80. data/sig/telnyx/models/calls/action_speak_params.rbs +11 -1
  81. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +370 -19
  82. data/sig/telnyx/models/calls/transcription_start_request.rbs +175 -2
  83. data/sig/telnyx/models/conferences/action_speak_params.rbs +11 -1
  84. data/sig/telnyx/models/messaging_profile_update_params.rbs +5 -0
  85. data/sig/telnyx/models/sip_registration_status_retrieve_params.rbs +41 -0
  86. data/sig/telnyx/models/sip_registration_status_retrieve_response.rbs +164 -0
  87. data/sig/telnyx/models/speech_to_text_list_providers_params.rbs +4 -4
  88. data/sig/telnyx/models/speech_to_text_list_providers_response.rbs +33 -16
  89. data/sig/telnyx/models/voice_sdk_call_report_list_response.rbs +121 -8
  90. data/sig/telnyx/models/voice_sdk_call_report_retrieve_response.rbs +121 -8
  91. data/sig/telnyx/models/whatsapp/user_data_retrieve_response.rbs +57 -6
  92. data/sig/telnyx/models/whatsapp/user_data_update_response.rbs +57 -6
  93. data/sig/telnyx/models.rbs +3 -9
  94. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  95. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  96. data/sig/telnyx/resources/ai.rbs +2 -2
  97. data/sig/telnyx/resources/calls/actions.rbs +2 -2
  98. data/sig/telnyx/resources/messaging_profiles.rbs +1 -0
  99. data/sig/telnyx/resources/sip_registration_status.rbs +13 -0
  100. metadata +17 -29
  101. data/lib/telnyx/models/calls/transcription_engine_soniox_config.rb +0 -91
  102. data/lib/telnyx/models/calls/transcription_engine_speechmatics_config.rb +0 -100
  103. data/lib/telnyx/models/conversation_relay_interruption_settings.rb +0 -105
  104. data/lib/telnyx/models/conversation_relay_language.rb +0 -141
  105. data/lib/telnyx/models/inworld_voice_settings.rb +0 -28
  106. data/lib/telnyx/models/voice_sdk_call_report_log_entry.rb +0 -57
  107. data/lib/telnyx/models/whatsapp/whatsapp_user_data.rb +0 -49
  108. data/rbi/telnyx/models/calls/transcription_engine_soniox_config.rbi +0 -184
  109. data/rbi/telnyx/models/calls/transcription_engine_speechmatics_config.rbi +0 -289
  110. data/rbi/telnyx/models/conversation_relay_interruption_settings.rbi +0 -271
  111. data/rbi/telnyx/models/conversation_relay_language.rbi +0 -309
  112. data/rbi/telnyx/models/inworld_voice_settings.rbi +0 -53
  113. data/rbi/telnyx/models/voice_sdk_call_report_log_entry.rbi +0 -108
  114. data/rbi/telnyx/models/whatsapp/whatsapp_user_data.rbi +0 -82
  115. data/sig/telnyx/models/ai_create_response_response.rbs +0 -7
  116. data/sig/telnyx/models/calls/transcription_engine_soniox_config.rbs +0 -79
  117. data/sig/telnyx/models/calls/transcription_engine_speechmatics_config.rbs +0 -114
  118. data/sig/telnyx/models/conversation_relay_interruption_settings.rbs +0 -88
  119. data/sig/telnyx/models/conversation_relay_language.rbs +0 -121
  120. data/sig/telnyx/models/inworld_voice_settings.rbs +0 -26
  121. data/sig/telnyx/models/voice_sdk_call_report_log_entry.rbs +0 -58
  122. data/sig/telnyx/models/whatsapp/whatsapp_user_data.rbs +0 -54
@@ -97,8 +97,9 @@ module Telnyx
97
97
  # @!attribute interruption_settings
98
98
  # Settings for handling caller interruptions during Conversation Relay speech.
99
99
  #
100
- # @return [Telnyx::Models::ConversationRelayInterruptionSettings, nil]
101
- optional :interruption_settings, -> { Telnyx::ConversationRelayInterruptionSettings }
100
+ # @return [Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings, nil]
101
+ optional :interruption_settings,
102
+ -> { Telnyx::Calls::ActionStartConversationRelayParams::InterruptionSettings }
102
103
 
103
104
  # @!attribute language
104
105
  # Default language for the relay session. This value is used for both
@@ -110,8 +111,9 @@ module Telnyx
110
111
  # @!attribute languages
111
112
  # Per-language TTS and transcription settings.
112
113
  #
113
- # @return [Array<Telnyx::Models::ConversationRelayLanguage>, nil]
114
- optional :languages, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::ConversationRelayLanguage] }
114
+ # @return [Array<Telnyx::Models::Calls::ActionStartConversationRelayParams::Language>, nil]
115
+ optional :languages,
116
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::Calls::ActionStartConversationRelayParams::Language] }
115
117
 
116
118
  # @!attribute provider
117
119
  # Structured voice provider. Must be supplied together with `structured_provider`.
@@ -203,7 +205,7 @@ module Telnyx
203
205
  # @!attribute voice_settings
204
206
  # The settings associated with the voice selected
205
207
  #
206
- # @return [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::InworldVoiceSettings, Telnyx::Models::XaiVoiceSettings, nil]
208
+ # @return [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings, nil]
207
209
  optional :voice_settings, union: -> { Telnyx::Calls::ActionStartConversationRelayParams::VoiceSettings }
208
210
 
209
211
  # @!method initialize(call_control_id:, assistant: nil, client_state: nil, command_id: nil, conversation_relay_dtmf_detection: nil, conversation_relay_settings: nil, conversation_relay_url: nil, custom_parameters: nil, dtmf_detection: nil, greeting: nil, interruptible: nil, interruptible_greeting: nil, interruption_settings: nil, language: nil, languages: nil, provider: nil, structured_provider: nil, transcription: nil, transcription_engine: nil, transcription_engine_config: nil, tts_provider: nil, url: nil, voice: nil, voice_settings: nil, request_options: {})
@@ -234,11 +236,11 @@ module Telnyx
234
236
  #
235
237
  # @param interruptible_greeting [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptibleGreeting] Controls when caller input can interrupt assistant speech. `any` allows speech o
236
238
  #
237
- # @param interruption_settings [Telnyx::Models::ConversationRelayInterruptionSettings] Settings for handling caller interruptions during Conversation Relay speech.
239
+ # @param interruption_settings [Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings] Settings for handling caller interruptions during Conversation Relay speech.
238
240
  #
239
241
  # @param language [String] Default language for the relay session. This value is used for both text-to-spee
240
242
  #
241
- # @param languages [Array<Telnyx::Models::ConversationRelayLanguage>] Per-language TTS and transcription settings.
243
+ # @param languages [Array<Telnyx::Models::Calls::ActionStartConversationRelayParams::Language>] Per-language TTS and transcription settings.
242
244
  #
243
245
  # @param provider [String] Structured voice provider. Must be supplied together with `structured_provider`.
244
246
  #
@@ -256,7 +258,7 @@ module Telnyx
256
258
  #
257
259
  # @param voice [String] The voice to be used by the voice assistant. Currently we support ElevenLabs, Te
258
260
  #
259
- # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::InworldVoiceSettings, Telnyx::Models::XaiVoiceSettings] The settings associated with the voice selected
261
+ # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings] The settings associated with the voice selected
260
262
  #
261
263
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
262
264
 
@@ -309,8 +311,9 @@ module Telnyx
309
311
  # @!attribute languages
310
312
  # Language-specific TTS and transcription settings.
311
313
  #
312
- # @return [Array<Telnyx::Models::ConversationRelayLanguage>, nil]
313
- optional :languages, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::ConversationRelayLanguage] }
314
+ # @return [Array<Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language>, nil]
315
+ optional :languages,
316
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language] }
314
317
 
315
318
  # @!method initialize(url:, dtmf_detection: nil, interruptible: nil, interruptible_greeting: nil, languages: nil)
316
319
  # Some parameter documentations has been truncated, see
@@ -329,7 +332,7 @@ module Telnyx
329
332
  #
330
333
  # @param interruptible_greeting [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::InterruptibleGreeting] Controls when caller input can interrupt assistant speech. `any` allows speech o
331
334
  #
332
- # @param languages [Array<Telnyx::Models::ConversationRelayLanguage>] Language-specific TTS and transcription settings.
335
+ # @param languages [Array<Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language>] Language-specific TTS and transcription settings.
333
336
 
334
337
  # Controls when caller input can interrupt assistant speech. `any` allows speech
335
338
  # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
@@ -364,6 +367,157 @@ module Telnyx
364
367
  # @!method self.values
365
368
  # @return [Array<Symbol>]
366
369
  end
370
+
371
+ class Language < Telnyx::Internal::Type::BaseModel
372
+ # @!attribute language
373
+ # BCP 47 language tag for this language configuration.
374
+ #
375
+ # @return [String]
376
+ required :language, String
377
+
378
+ # @!attribute speech_model
379
+ # Conversation Relay speech model. Prefer
380
+ # `transcription_engine_config.transcription_model` when configuring
381
+ # speech-to-text.
382
+ #
383
+ # @return [String, nil]
384
+ optional :speech_model, String
385
+
386
+ # @!attribute transcription_engine
387
+ # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
388
+ # `Telnyx` are supported for backward compatibility. When provided in a
389
+ # Conversation Relay language entry, Telnyx derives `transcription_provider` and
390
+ # `speech_model` for that language.
391
+ #
392
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::TranscriptionEngine, nil]
393
+ optional :transcription_engine,
394
+ enum: -> { Telnyx::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::TranscriptionEngine }
395
+
396
+ # @!attribute transcription_engine_config
397
+ # Engine-specific transcription settings for Conversation Relay. This accepts the
398
+ # same provider-specific options used by the Call Transcription Start command,
399
+ # such as `transcription_model`, without requiring the engine discriminator to be
400
+ # repeated inside this object.
401
+ #
402
+ # @return [Hash{Symbol=>Object}, nil]
403
+ optional :transcription_engine_config, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
404
+
405
+ # @!attribute transcription_provider
406
+ # Conversation Relay transcription provider name. Prefer `transcription_engine`
407
+ # when configuring speech-to-text.
408
+ #
409
+ # @return [String, nil]
410
+ optional :transcription_provider, String
411
+
412
+ # @!attribute tts_provider
413
+ # Text-to-speech provider for this language. If omitted and `voice` is provided,
414
+ # Telnyx derives the provider from the voice identifier.
415
+ #
416
+ # @return [String, nil]
417
+ optional :tts_provider, String
418
+
419
+ # @!attribute voice
420
+ # Voice identifier for this language.
421
+ #
422
+ # @return [String, nil]
423
+ optional :voice, String
424
+
425
+ # @!attribute voice_settings
426
+ # The settings associated with the voice selected
427
+ #
428
+ # @return [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings, nil]
429
+ optional :voice_settings,
430
+ union: -> { Telnyx::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::VoiceSettings }
431
+
432
+ # @!method initialize(language:, speech_model: nil, transcription_engine: nil, transcription_engine_config: nil, transcription_provider: nil, tts_provider: nil, voice: nil, voice_settings: nil)
433
+ # Some parameter documentations has been truncated, see
434
+ # {Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language}
435
+ # for more details.
436
+ #
437
+ # Language-specific TTS and transcription settings for Conversation Relay.
438
+ #
439
+ # @param language [String] BCP 47 language tag for this language configuration.
440
+ #
441
+ # @param speech_model [String] Conversation Relay speech model. Prefer `transcription_engine_config.transcripti
442
+ #
443
+ # @param transcription_engine [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::TranscriptionEngine] Engine to use for speech recognition. Legacy values `A` - `Google`, `B` - `Telny
444
+ #
445
+ # @param transcription_engine_config [Hash{Symbol=>Object}] Engine-specific transcription settings for Conversation Relay. This accepts the
446
+ #
447
+ # @param transcription_provider [String] Conversation Relay transcription provider name. Prefer `transcription_engine` wh
448
+ #
449
+ # @param tts_provider [String] Text-to-speech provider for this language. If omitted and `voice` is provided, T
450
+ #
451
+ # @param voice [String] Voice identifier for this language.
452
+ #
453
+ # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings] The settings associated with the voice selected
454
+
455
+ # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
456
+ # `Telnyx` are supported for backward compatibility. When provided in a
457
+ # Conversation Relay language entry, Telnyx derives `transcription_provider` and
458
+ # `speech_model` for that language.
459
+ #
460
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language#transcription_engine
461
+ module TranscriptionEngine
462
+ extend Telnyx::Internal::Type::Enum
463
+
464
+ GOOGLE = :Google
465
+ TELNYX = :Telnyx
466
+ DEEPGRAM = :Deepgram
467
+ AZURE = :Azure
468
+ X_AI = :xAI
469
+ ASSEMBLY_AI = :AssemblyAI
470
+ SPEECHMATICS = :Speechmatics
471
+ SONIOX = :Soniox
472
+ A = :A
473
+ B = :B
474
+
475
+ # @!method self.values
476
+ # @return [Array<Symbol>]
477
+ end
478
+
479
+ # The settings associated with the voice selected
480
+ #
481
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language#voice_settings
482
+ module VoiceSettings
483
+ extend Telnyx::Internal::Type::Union
484
+
485
+ discriminator :type
486
+
487
+ variant :elevenlabs, -> { Telnyx::Calls::ElevenLabsVoiceSettings }
488
+
489
+ variant :telnyx, -> { Telnyx::Calls::TelnyxVoiceSettings }
490
+
491
+ variant :aws, -> { Telnyx::Calls::AwsVoiceSettings }
492
+
493
+ variant :minimax, -> { Telnyx::MinimaxVoiceSettings }
494
+
495
+ variant :azure, -> { Telnyx::AzureVoiceSettings }
496
+
497
+ variant :rime, -> { Telnyx::RimeVoiceSettings }
498
+
499
+ variant :resemble, -> { Telnyx::ResembleVoiceSettings }
500
+
501
+ variant :inworld,
502
+ -> { Telnyx::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::VoiceSettings::Inworld }
503
+
504
+ variant :xai, -> { Telnyx::XaiVoiceSettings }
505
+
506
+ class Inworld < Telnyx::Internal::Type::BaseModel
507
+ # @!attribute type
508
+ # Voice settings provider type
509
+ #
510
+ # @return [Symbol, :inworld]
511
+ required :type, const: :inworld
512
+
513
+ # @!method initialize(type: :inworld)
514
+ # @param type [Symbol, :inworld] Voice settings provider type
515
+ end
516
+
517
+ # @!method self.variants
518
+ # @return [Array(Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::ConversationRelaySettings::Language::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings)]
519
+ end
520
+ end
367
521
  end
368
522
 
369
523
  # Controls when caller input can interrupt assistant speech. `any` allows speech
@@ -396,6 +550,259 @@ module Telnyx
396
550
  # @return [Array<Symbol>]
397
551
  end
398
552
 
553
+ class InterruptionSettings < Telnyx::Internal::Type::BaseModel
554
+ # @!attribute enable
555
+ # Legacy boolean form. `true` is equivalent to `interruptible=any`; `false` is
556
+ # equivalent to `interruptible=none`.
557
+ #
558
+ # @return [Boolean, nil]
559
+ optional :enable, Telnyx::Internal::Type::Boolean
560
+
561
+ # @!attribute interruptible
562
+ # Controls when caller input can interrupt assistant speech. `any` allows speech
563
+ # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
564
+ # only; `dtmf` allows DTMF only.
565
+ #
566
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings::Interruptible, nil]
567
+ optional :interruptible,
568
+ enum: -> { Telnyx::Calls::ActionStartConversationRelayParams::InterruptionSettings::Interruptible }
569
+
570
+ # @!attribute interruptible_greeting
571
+ # Controls when caller input can interrupt assistant speech. `any` allows speech
572
+ # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
573
+ # only; `dtmf` allows DTMF only.
574
+ #
575
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings::InterruptibleGreeting, nil]
576
+ optional :interruptible_greeting,
577
+ enum: -> { Telnyx::Calls::ActionStartConversationRelayParams::InterruptionSettings::InterruptibleGreeting }
578
+
579
+ # @!attribute welcome_greeting_interruptible
580
+ # Controls when caller input can interrupt assistant speech. `any` allows speech
581
+ # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
582
+ # only; `dtmf` allows DTMF only.
583
+ #
584
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings::WelcomeGreetingInterruptible, nil]
585
+ optional :welcome_greeting_interruptible,
586
+ enum: -> { Telnyx::Calls::ActionStartConversationRelayParams::InterruptionSettings::WelcomeGreetingInterruptible }
587
+
588
+ # @!method initialize(enable: nil, interruptible: nil, interruptible_greeting: nil, welcome_greeting_interruptible: nil)
589
+ # Some parameter documentations has been truncated, see
590
+ # {Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings}
591
+ # for more details.
592
+ #
593
+ # Settings for handling caller interruptions during Conversation Relay speech.
594
+ #
595
+ # @param enable [Boolean] Legacy boolean form. `true` is equivalent to `interruptible=any`; `false` is equ
596
+ #
597
+ # @param interruptible [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings::Interruptible] Controls when caller input can interrupt assistant speech. `any` allows speech o
598
+ #
599
+ # @param interruptible_greeting [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings::InterruptibleGreeting] Controls when caller input can interrupt assistant speech. `any` allows speech o
600
+ #
601
+ # @param welcome_greeting_interruptible [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings::WelcomeGreetingInterruptible] Controls when caller input can interrupt assistant speech. `any` allows speech o
602
+
603
+ # Controls when caller input can interrupt assistant speech. `any` allows speech
604
+ # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
605
+ # only; `dtmf` allows DTMF only.
606
+ #
607
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings#interruptible
608
+ module Interruptible
609
+ extend Telnyx::Internal::Type::Enum
610
+
611
+ NONE = :none
612
+ ANY = :any
613
+ SPEECH = :speech
614
+ DTMF = :dtmf
615
+
616
+ # @!method self.values
617
+ # @return [Array<Symbol>]
618
+ end
619
+
620
+ # Controls when caller input can interrupt assistant speech. `any` allows speech
621
+ # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
622
+ # only; `dtmf` allows DTMF only.
623
+ #
624
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings#interruptible_greeting
625
+ module InterruptibleGreeting
626
+ extend Telnyx::Internal::Type::Enum
627
+
628
+ NONE = :none
629
+ ANY = :any
630
+ SPEECH = :speech
631
+ DTMF = :dtmf
632
+
633
+ # @!method self.values
634
+ # @return [Array<Symbol>]
635
+ end
636
+
637
+ # Controls when caller input can interrupt assistant speech. `any` allows speech
638
+ # or DTMF interruptions; `none` disables interruptions; `speech` allows speech
639
+ # only; `dtmf` allows DTMF only.
640
+ #
641
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::InterruptionSettings#welcome_greeting_interruptible
642
+ module WelcomeGreetingInterruptible
643
+ extend Telnyx::Internal::Type::Enum
644
+
645
+ NONE = :none
646
+ ANY = :any
647
+ SPEECH = :speech
648
+ DTMF = :dtmf
649
+
650
+ # @!method self.values
651
+ # @return [Array<Symbol>]
652
+ end
653
+ end
654
+
655
+ class Language < Telnyx::Internal::Type::BaseModel
656
+ # @!attribute language
657
+ # BCP 47 language tag for this language configuration.
658
+ #
659
+ # @return [String]
660
+ required :language, String
661
+
662
+ # @!attribute speech_model
663
+ # Conversation Relay speech model. Prefer
664
+ # `transcription_engine_config.transcription_model` when configuring
665
+ # speech-to-text.
666
+ #
667
+ # @return [String, nil]
668
+ optional :speech_model, String
669
+
670
+ # @!attribute transcription_engine
671
+ # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
672
+ # `Telnyx` are supported for backward compatibility. When provided in a
673
+ # Conversation Relay language entry, Telnyx derives `transcription_provider` and
674
+ # `speech_model` for that language.
675
+ #
676
+ # @return [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::Language::TranscriptionEngine, nil]
677
+ optional :transcription_engine,
678
+ enum: -> { Telnyx::Calls::ActionStartConversationRelayParams::Language::TranscriptionEngine }
679
+
680
+ # @!attribute transcription_engine_config
681
+ # Engine-specific transcription settings for Conversation Relay. This accepts the
682
+ # same provider-specific options used by the Call Transcription Start command,
683
+ # such as `transcription_model`, without requiring the engine discriminator to be
684
+ # repeated inside this object.
685
+ #
686
+ # @return [Hash{Symbol=>Object}, nil]
687
+ optional :transcription_engine_config, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
688
+
689
+ # @!attribute transcription_provider
690
+ # Conversation Relay transcription provider name. Prefer `transcription_engine`
691
+ # when configuring speech-to-text.
692
+ #
693
+ # @return [String, nil]
694
+ optional :transcription_provider, String
695
+
696
+ # @!attribute tts_provider
697
+ # Text-to-speech provider for this language. If omitted and `voice` is provided,
698
+ # Telnyx derives the provider from the voice identifier.
699
+ #
700
+ # @return [String, nil]
701
+ optional :tts_provider, String
702
+
703
+ # @!attribute voice
704
+ # Voice identifier for this language.
705
+ #
706
+ # @return [String, nil]
707
+ optional :voice, String
708
+
709
+ # @!attribute voice_settings
710
+ # The settings associated with the voice selected
711
+ #
712
+ # @return [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::Language::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings, nil]
713
+ optional :voice_settings,
714
+ union: -> { Telnyx::Calls::ActionStartConversationRelayParams::Language::VoiceSettings }
715
+
716
+ # @!method initialize(language:, speech_model: nil, transcription_engine: nil, transcription_engine_config: nil, transcription_provider: nil, tts_provider: nil, voice: nil, voice_settings: nil)
717
+ # Some parameter documentations has been truncated, see
718
+ # {Telnyx::Models::Calls::ActionStartConversationRelayParams::Language} for more
719
+ # details.
720
+ #
721
+ # Language-specific TTS and transcription settings for Conversation Relay.
722
+ #
723
+ # @param language [String] BCP 47 language tag for this language configuration.
724
+ #
725
+ # @param speech_model [String] Conversation Relay speech model. Prefer `transcription_engine_config.transcripti
726
+ #
727
+ # @param transcription_engine [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::Language::TranscriptionEngine] Engine to use for speech recognition. Legacy values `A` - `Google`, `B` - `Telny
728
+ #
729
+ # @param transcription_engine_config [Hash{Symbol=>Object}] Engine-specific transcription settings for Conversation Relay. This accepts the
730
+ #
731
+ # @param transcription_provider [String] Conversation Relay transcription provider name. Prefer `transcription_engine` wh
732
+ #
733
+ # @param tts_provider [String] Text-to-speech provider for this language. If omitted and `voice` is provided, T
734
+ #
735
+ # @param voice [String] Voice identifier for this language.
736
+ #
737
+ # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::Language::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings] The settings associated with the voice selected
738
+
739
+ # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
740
+ # `Telnyx` are supported for backward compatibility. When provided in a
741
+ # Conversation Relay language entry, Telnyx derives `transcription_provider` and
742
+ # `speech_model` for that language.
743
+ #
744
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::Language#transcription_engine
745
+ module TranscriptionEngine
746
+ extend Telnyx::Internal::Type::Enum
747
+
748
+ GOOGLE = :Google
749
+ TELNYX = :Telnyx
750
+ DEEPGRAM = :Deepgram
751
+ AZURE = :Azure
752
+ X_AI = :xAI
753
+ ASSEMBLY_AI = :AssemblyAI
754
+ SPEECHMATICS = :Speechmatics
755
+ SONIOX = :Soniox
756
+ A = :A
757
+ B = :B
758
+
759
+ # @!method self.values
760
+ # @return [Array<Symbol>]
761
+ end
762
+
763
+ # The settings associated with the voice selected
764
+ #
765
+ # @see Telnyx::Models::Calls::ActionStartConversationRelayParams::Language#voice_settings
766
+ module VoiceSettings
767
+ extend Telnyx::Internal::Type::Union
768
+
769
+ discriminator :type
770
+
771
+ variant :elevenlabs, -> { Telnyx::Calls::ElevenLabsVoiceSettings }
772
+
773
+ variant :telnyx, -> { Telnyx::Calls::TelnyxVoiceSettings }
774
+
775
+ variant :aws, -> { Telnyx::Calls::AwsVoiceSettings }
776
+
777
+ variant :minimax, -> { Telnyx::MinimaxVoiceSettings }
778
+
779
+ variant :azure, -> { Telnyx::AzureVoiceSettings }
780
+
781
+ variant :rime, -> { Telnyx::RimeVoiceSettings }
782
+
783
+ variant :resemble, -> { Telnyx::ResembleVoiceSettings }
784
+
785
+ variant :inworld,
786
+ -> { Telnyx::Calls::ActionStartConversationRelayParams::Language::VoiceSettings::Inworld }
787
+
788
+ variant :xai, -> { Telnyx::XaiVoiceSettings }
789
+
790
+ class Inworld < Telnyx::Internal::Type::BaseModel
791
+ # @!attribute type
792
+ # Voice settings provider type
793
+ #
794
+ # @return [Symbol, :inworld]
795
+ required :type, const: :inworld
796
+
797
+ # @!method initialize(type: :inworld)
798
+ # @param type [Symbol, :inworld] Voice settings provider type
799
+ end
800
+
801
+ # @!method self.variants
802
+ # @return [Array(Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::Language::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings)]
803
+ end
804
+ end
805
+
399
806
  # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
400
807
  # `Telnyx` are supported for backward compatibility. For Conversation Relay, use
401
808
  # this field with `transcription_engine_config`; the `transcription` object is not
@@ -438,12 +845,23 @@ module Telnyx
438
845
 
439
846
  variant :resemble, -> { Telnyx::ResembleVoiceSettings }
440
847
 
441
- variant :inworld, -> { Telnyx::InworldVoiceSettings }
848
+ variant :inworld, -> { Telnyx::Calls::ActionStartConversationRelayParams::VoiceSettings::Inworld }
442
849
 
443
850
  variant :xai, -> { Telnyx::XaiVoiceSettings }
444
851
 
852
+ class Inworld < Telnyx::Internal::Type::BaseModel
853
+ # @!attribute type
854
+ # Voice settings provider type
855
+ #
856
+ # @return [Symbol, :inworld]
857
+ required :type, const: :inworld
858
+
859
+ # @!method initialize(type: :inworld)
860
+ # @param type [Symbol, :inworld] Voice settings provider type
861
+ end
862
+
445
863
  # @!method self.variants
446
- # @return [Array(Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::InworldVoiceSettings, Telnyx::Models::XaiVoiceSettings)]
864
+ # @return [Array(Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::MinimaxVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionStartConversationRelayParams::VoiceSettings::Inworld, Telnyx::Models::XaiVoiceSettings)]
447
865
  end
448
866
  end
449
867
  end