telnyx 5.97.0 → 5.99.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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/assistant_create_params.rb +9 -231
  5. data/lib/telnyx/models/ai/assistant_update_params.rb +9 -231
  6. data/lib/telnyx/models/ai/assistants/update_assistant.rb +9 -236
  7. data/lib/telnyx/models/ai/external_llm.rb +89 -0
  8. data/lib/telnyx/models/ai/external_llm_req.rb +89 -0
  9. data/lib/telnyx/models/ai/fallback_config.rb +37 -0
  10. data/lib/telnyx/models/ai/fallback_config_req.rb +37 -0
  11. data/lib/telnyx/models/ai/inference_embedding.rb +9 -234
  12. data/lib/telnyx/models/ai/observability.rb +57 -1
  13. data/lib/telnyx/models/ai/observability_req.rb +57 -1
  14. data/lib/telnyx/models/ai/post_conversation_settings.rb +30 -0
  15. data/lib/telnyx/models/ai/post_conversation_settings_req.rb +30 -0
  16. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +26 -3
  17. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +26 -3
  18. data/lib/telnyx/models/calls/action_speak_params.rb +26 -3
  19. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +26 -3
  20. data/lib/telnyx/models/conferences/action_speak_params.rb +26 -3
  21. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
  22. data/lib/telnyx/resources/ai/assistants.rb +6 -6
  23. data/lib/telnyx/resources/calls/actions.rb +4 -4
  24. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  25. data/lib/telnyx/version.rb +1 -1
  26. data/lib/telnyx.rb +6 -0
  27. data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -463
  28. data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -463
  29. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -469
  30. data/rbi/telnyx/models/ai/external_llm.rbi +161 -0
  31. data/rbi/telnyx/models/ai/external_llm_req.rbi +161 -0
  32. data/rbi/telnyx/models/ai/fallback_config.rbi +64 -0
  33. data/rbi/telnyx/models/ai/fallback_config_req.rbi +64 -0
  34. data/rbi/telnyx/models/ai/inference_embedding.rbi +12 -460
  35. data/rbi/telnyx/models/ai/observability.rbi +85 -0
  36. data/rbi/telnyx/models/ai/observability_req.rbi +86 -0
  37. data/rbi/telnyx/models/ai/post_conversation_settings.rbi +45 -0
  38. data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +45 -0
  39. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +50 -5
  40. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +50 -5
  41. data/rbi/telnyx/models/calls/action_speak_params.rbi +50 -5
  42. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +50 -5
  43. data/rbi/telnyx/models/conferences/action_speak_params.rbi +50 -5
  44. data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -5
  45. data/rbi/telnyx/resources/ai/assistants.rbi +6 -10
  46. data/rbi/telnyx/resources/calls/actions.rbi +16 -4
  47. data/rbi/telnyx/resources/conferences/actions.rbi +4 -1
  48. data/sig/telnyx/models/ai/assistant_create_params.rbs +18 -205
  49. data/sig/telnyx/models/ai/assistant_update_params.rbs +18 -205
  50. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +18 -205
  51. data/sig/telnyx/models/ai/external_llm.rbs +75 -0
  52. data/sig/telnyx/models/ai/external_llm_req.rbs +75 -0
  53. data/sig/telnyx/models/ai/fallback_config.rbs +38 -0
  54. data/sig/telnyx/models/ai/fallback_config_req.rbs +40 -0
  55. data/sig/telnyx/models/ai/inference_embedding.rbs +17 -206
  56. data/sig/telnyx/models/ai/observability.rbs +41 -0
  57. data/sig/telnyx/models/ai/observability_req.rbs +41 -0
  58. data/sig/telnyx/models/ai/post_conversation_settings.rbs +17 -0
  59. data/sig/telnyx/models/ai/post_conversation_settings_req.rbs +17 -0
  60. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +15 -0
  61. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +15 -0
  62. data/sig/telnyx/models/calls/action_speak_params.rbs +15 -0
  63. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +15 -0
  64. data/sig/telnyx/models/conferences/action_speak_params.rbs +15 -0
  65. data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
  66. data/sig/telnyx/resources/ai/assistants.rbs +6 -6
  67. metadata +20 -2
@@ -77,13 +77,13 @@ module Telnyx
77
77
 
78
78
  # @!attribute external_llm
79
79
  #
80
- # @return [Telnyx::Models::AI::InferenceEmbedding::ExternalLlm, nil]
81
- optional :external_llm, -> { Telnyx::AI::InferenceEmbedding::ExternalLlm }
80
+ # @return [Telnyx::Models::AI::ExternalLlm, nil]
81
+ optional :external_llm, -> { Telnyx::AI::ExternalLlm }
82
82
 
83
83
  # @!attribute fallback_config
84
84
  #
85
- # @return [Telnyx::Models::AI::InferenceEmbedding::FallbackConfig, nil]
86
- optional :fallback_config, -> { Telnyx::AI::InferenceEmbedding::FallbackConfig }
85
+ # @return [Telnyx::Models::AI::FallbackConfig, nil]
86
+ optional :fallback_config, -> { Telnyx::AI::FallbackConfig }
87
87
 
88
88
  # @!attribute greeting
89
89
  # Text that the assistant will use to start the conversation. This may be
@@ -163,8 +163,8 @@ module Telnyx
163
163
  # Telephony-control tools (e.g. hangup, transfer) are unavailable
164
164
  # post-conversation. Beta feature.
165
165
  #
166
- # @return [Telnyx::Models::AI::InferenceEmbedding::PostConversationSettings, nil]
167
- optional :post_conversation_settings, -> { Telnyx::AI::InferenceEmbedding::PostConversationSettings }
166
+ # @return [Telnyx::Models::AI::PostConversationSettings, nil]
167
+ optional :post_conversation_settings, -> { Telnyx::AI::PostConversationSettings }
168
168
 
169
169
  # @!attribute privacy_settings
170
170
  #
@@ -256,9 +256,9 @@ module Telnyx
256
256
  #
257
257
  # @param enabled_features [Array<Symbol, Telnyx::Models::AI::EnabledFeatures>]
258
258
  #
259
- # @param external_llm [Telnyx::Models::AI::InferenceEmbedding::ExternalLlm]
259
+ # @param external_llm [Telnyx::Models::AI::ExternalLlm]
260
260
  #
261
- # @param fallback_config [Telnyx::Models::AI::InferenceEmbedding::FallbackConfig]
261
+ # @param fallback_config [Telnyx::Models::AI::FallbackConfig]
262
262
  #
263
263
  # @param greeting [String] Text that the assistant will use to start the conversation. This may be template
264
264
  #
@@ -278,7 +278,7 @@ module Telnyx
278
278
  #
279
279
  # @param observability_settings [Telnyx::Models::AI::Observability]
280
280
  #
281
- # @param post_conversation_settings [Telnyx::Models::AI::InferenceEmbedding::PostConversationSettings] Configuration for post-conversation processing. When enabled, the assistant rece
281
+ # @param post_conversation_settings [Telnyx::Models::AI::PostConversationSettings] Configuration for post-conversation processing. When enabled, the assistant rece
282
282
  #
283
283
  # @param privacy_settings [Telnyx::Models::AI::PrivacySettings]
284
284
  #
@@ -302,206 +302,6 @@ module Telnyx
302
302
  #
303
303
  # @param widget_settings [Telnyx::Models::AI::WidgetSettings] Configuration settings for the assistant's web widget.
304
304
 
305
- # @see Telnyx::Models::AI::InferenceEmbedding#external_llm
306
- class ExternalLlm < Telnyx::Internal::Type::BaseModel
307
- # @!attribute base_url
308
- # Base URL for the external LLM endpoint.
309
- #
310
- # @return [String]
311
- required :base_url, String
312
-
313
- # @!attribute model
314
- # Model identifier to use with the external LLM endpoint.
315
- #
316
- # @return [String]
317
- required :model, String
318
-
319
- # @!attribute authentication_method
320
- # Authentication method used when connecting to the external LLM endpoint.
321
- #
322
- # @return [Symbol, Telnyx::Models::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod, nil]
323
- optional :authentication_method,
324
- enum: -> { Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod }
325
-
326
- # @!attribute certificate_ref
327
- # Integration secret identifier for the client certificate used with certificate
328
- # authentication.
329
- #
330
- # @return [String, nil]
331
- optional :certificate_ref, String
332
-
333
- # @!attribute forward_metadata
334
- # When `true`, Telnyx forwards the assistant's dynamic variables to the external
335
- # LLM endpoint as a top-level `extra_metadata` object on the chat completion
336
- # request body. Defaults to `false`. Example payload sent to the external
337
- # endpoint:
338
- # `{"extra_metadata": {"customer_name": "Jane", "account_id": "acct_789", "telnyx_agent_target": "+13125550100", "telnyx_end_user_target": "+13125550123"}}`.
339
- # Distinct from OpenAI's native `metadata` field, which has its own size and type
340
- # limits.
341
- #
342
- # @return [Boolean, nil]
343
- optional :forward_metadata, Telnyx::Internal::Type::Boolean
344
-
345
- # @!attribute llm_api_key_ref
346
- # Integration secret identifier for the external LLM API key.
347
- #
348
- # @return [String, nil]
349
- optional :llm_api_key_ref, String
350
-
351
- # @!attribute token_retrieval_url
352
- # URL used to retrieve an access token when certificate authentication is enabled.
353
- #
354
- # @return [String, nil]
355
- optional :token_retrieval_url, String
356
-
357
- # @!method initialize(base_url:, model:, authentication_method: nil, certificate_ref: nil, forward_metadata: nil, llm_api_key_ref: nil, token_retrieval_url: nil)
358
- # Some parameter documentations has been truncated, see
359
- # {Telnyx::Models::AI::InferenceEmbedding::ExternalLlm} for more details.
360
- #
361
- # @param base_url [String] Base URL for the external LLM endpoint.
362
- #
363
- # @param model [String] Model identifier to use with the external LLM endpoint.
364
- #
365
- # @param authentication_method [Symbol, Telnyx::Models::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod] Authentication method used when connecting to the external LLM endpoint.
366
- #
367
- # @param certificate_ref [String] Integration secret identifier for the client certificate used with certificate a
368
- #
369
- # @param forward_metadata [Boolean] When `true`, Telnyx forwards the assistant's dynamic variables to the external L
370
- #
371
- # @param llm_api_key_ref [String] Integration secret identifier for the external LLM API key.
372
- #
373
- # @param token_retrieval_url [String] URL used to retrieve an access token when certificate authentication is enabled.
374
-
375
- # Authentication method used when connecting to the external LLM endpoint.
376
- #
377
- # @see Telnyx::Models::AI::InferenceEmbedding::ExternalLlm#authentication_method
378
- module AuthenticationMethod
379
- extend Telnyx::Internal::Type::Enum
380
-
381
- TOKEN = :token
382
- CERTIFICATE = :certificate
383
-
384
- # @!method self.values
385
- # @return [Array<Symbol>]
386
- end
387
- end
388
-
389
- # @see Telnyx::Models::AI::InferenceEmbedding#fallback_config
390
- class FallbackConfig < Telnyx::Internal::Type::BaseModel
391
- # @!attribute external_llm
392
- #
393
- # @return [Telnyx::Models::AI::InferenceEmbedding::FallbackConfig::ExternalLlm, nil]
394
- optional :external_llm, -> { Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm }
395
-
396
- # @!attribute llm_api_key_ref
397
- # Integration secret identifier for the fallback model API key.
398
- #
399
- # @return [String, nil]
400
- optional :llm_api_key_ref, String
401
-
402
- # @!attribute model
403
- # Fallback Telnyx-hosted model to use when the primary LLM provider is
404
- # unavailable.
405
- #
406
- # @return [String, nil]
407
- optional :model, String
408
-
409
- # @!method initialize(external_llm: nil, llm_api_key_ref: nil, model: nil)
410
- # Some parameter documentations has been truncated, see
411
- # {Telnyx::Models::AI::InferenceEmbedding::FallbackConfig} for more details.
412
- #
413
- # @param external_llm [Telnyx::Models::AI::InferenceEmbedding::FallbackConfig::ExternalLlm]
414
- #
415
- # @param llm_api_key_ref [String] Integration secret identifier for the fallback model API key.
416
- #
417
- # @param model [String] Fallback Telnyx-hosted model to use when the primary LLM provider is unavailable
418
-
419
- # @see Telnyx::Models::AI::InferenceEmbedding::FallbackConfig#external_llm
420
- class ExternalLlm < Telnyx::Internal::Type::BaseModel
421
- # @!attribute base_url
422
- # Base URL for the external LLM endpoint.
423
- #
424
- # @return [String]
425
- required :base_url, String
426
-
427
- # @!attribute model
428
- # Model identifier to use with the external LLM endpoint.
429
- #
430
- # @return [String]
431
- required :model, String
432
-
433
- # @!attribute authentication_method
434
- # Authentication method used when connecting to the external LLM endpoint.
435
- #
436
- # @return [Symbol, Telnyx::Models::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod, nil]
437
- optional :authentication_method,
438
- enum: -> { Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod }
439
-
440
- # @!attribute certificate_ref
441
- # Integration secret identifier for the client certificate used with certificate
442
- # authentication.
443
- #
444
- # @return [String, nil]
445
- optional :certificate_ref, String
446
-
447
- # @!attribute forward_metadata
448
- # When `true`, Telnyx forwards the assistant's dynamic variables to the external
449
- # LLM endpoint as a top-level `extra_metadata` object on the chat completion
450
- # request body. Defaults to `false`. Example payload sent to the external
451
- # endpoint:
452
- # `{"extra_metadata": {"customer_name": "Jane", "account_id": "acct_789", "telnyx_agent_target": "+13125550100", "telnyx_end_user_target": "+13125550123"}}`.
453
- # Distinct from OpenAI's native `metadata` field, which has its own size and type
454
- # limits.
455
- #
456
- # @return [Boolean, nil]
457
- optional :forward_metadata, Telnyx::Internal::Type::Boolean
458
-
459
- # @!attribute llm_api_key_ref
460
- # Integration secret identifier for the external LLM API key.
461
- #
462
- # @return [String, nil]
463
- optional :llm_api_key_ref, String
464
-
465
- # @!attribute token_retrieval_url
466
- # URL used to retrieve an access token when certificate authentication is enabled.
467
- #
468
- # @return [String, nil]
469
- optional :token_retrieval_url, String
470
-
471
- # @!method initialize(base_url:, model:, authentication_method: nil, certificate_ref: nil, forward_metadata: nil, llm_api_key_ref: nil, token_retrieval_url: nil)
472
- # Some parameter documentations has been truncated, see
473
- # {Telnyx::Models::AI::InferenceEmbedding::FallbackConfig::ExternalLlm} for more
474
- # details.
475
- #
476
- # @param base_url [String] Base URL for the external LLM endpoint.
477
- #
478
- # @param model [String] Model identifier to use with the external LLM endpoint.
479
- #
480
- # @param authentication_method [Symbol, Telnyx::Models::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod] Authentication method used when connecting to the external LLM endpoint.
481
- #
482
- # @param certificate_ref [String] Integration secret identifier for the client certificate used with certificate a
483
- #
484
- # @param forward_metadata [Boolean] When `true`, Telnyx forwards the assistant's dynamic variables to the external L
485
- #
486
- # @param llm_api_key_ref [String] Integration secret identifier for the external LLM API key.
487
- #
488
- # @param token_retrieval_url [String] URL used to retrieve an access token when certificate authentication is enabled.
489
-
490
- # Authentication method used when connecting to the external LLM endpoint.
491
- #
492
- # @see Telnyx::Models::AI::InferenceEmbedding::FallbackConfig::ExternalLlm#authentication_method
493
- module AuthenticationMethod
494
- extend Telnyx::Internal::Type::Enum
495
-
496
- TOKEN = :token
497
- CERTIFICATE = :certificate
498
-
499
- # @!method self.values
500
- # @return [Array<Symbol>]
501
- end
502
- end
503
- end
504
-
505
305
  class Integration < Telnyx::Internal::Type::BaseModel
506
306
  # @!attribute integration_id
507
307
  # Catalog integration ID to attach. This is the `id` from the integrations catalog
@@ -660,31 +460,6 @@ module Telnyx
660
460
  #
661
461
  # @param allowed_tools [Array<String>] Optional per-assistant allowlist of MCP tool names. When omitted, the assistant
662
462
  end
663
-
664
- # @see Telnyx::Models::AI::InferenceEmbedding#post_conversation_settings
665
- class PostConversationSettings < Telnyx::Internal::Type::BaseModel
666
- # @!attribute enabled
667
- # Whether post-conversation processing is enabled. When true, the assistant will
668
- # be invoked after the conversation ends to perform any final tool calls. Defaults
669
- # to false.
670
- #
671
- # @return [Boolean, nil]
672
- optional :enabled, Telnyx::Internal::Type::Boolean
673
-
674
- # @!method initialize(enabled: nil)
675
- # Some parameter documentations has been truncated, see
676
- # {Telnyx::Models::AI::InferenceEmbedding::PostConversationSettings} for more
677
- # details.
678
- #
679
- # Configuration for post-conversation processing. When enabled, the assistant
680
- # receives one additional LLM turn after the conversation ends, allowing it to
681
- # execute tool calls such as logging to a CRM or sending a summary. The assistant
682
- # can execute multiple parallel or sequential tools during this phase.
683
- # Telephony-control tools (e.g. hangup, transfer) are unavailable
684
- # post-conversation. Beta feature.
685
- #
686
- # @param enabled [Boolean] Whether post-conversation processing is enabled. When true, the assistant will b
687
- end
688
463
  end
689
464
  end
690
465
  end
@@ -9,6 +9,31 @@ module Telnyx
9
9
  # @return [String, nil]
10
10
  optional :host, String
11
11
 
12
+ # @!attribute prompt_label
13
+ #
14
+ # @return [String, nil]
15
+ optional :prompt_label, String
16
+
17
+ # @!attribute prompt_name
18
+ #
19
+ # @return [String, nil]
20
+ optional :prompt_name, String
21
+
22
+ # @!attribute prompt_sync
23
+ # Whether to auto-publish the assistant's instructions as a Langfuse prompt.
24
+ #
25
+ # When ENABLED + prompt_name set, every assistant create/update pushes
26
+ # `instructions` to Langfuse via create_prompt and stores the returned version in
27
+ # prompt_version.
28
+ #
29
+ # @return [Symbol, Telnyx::Models::AI::Observability::PromptSync, nil]
30
+ optional :prompt_sync, enum: -> { Telnyx::AI::Observability::PromptSync }
31
+
32
+ # @!attribute prompt_version
33
+ #
34
+ # @return [Integer, nil]
35
+ optional :prompt_version, Integer
36
+
12
37
  # @!attribute public_key_ref
13
38
  #
14
39
  # @return [String, nil]
@@ -24,12 +49,43 @@ module Telnyx
24
49
  # @return [Symbol, Telnyx::Models::AI::Observability::Status, nil]
25
50
  optional :status, enum: -> { Telnyx::AI::Observability::Status }
26
51
 
27
- # @!method initialize(host: nil, public_key_ref: nil, secret_key_ref: nil, status: nil)
52
+ # @!method initialize(host: nil, prompt_label: nil, prompt_name: nil, prompt_sync: nil, prompt_version: nil, public_key_ref: nil, secret_key_ref: nil, status: nil)
53
+ # Some parameter documentations has been truncated, see
54
+ # {Telnyx::Models::AI::Observability} for more details.
55
+ #
28
56
  # @param host [String]
57
+ #
58
+ # @param prompt_label [String]
59
+ #
60
+ # @param prompt_name [String]
61
+ #
62
+ # @param prompt_sync [Symbol, Telnyx::Models::AI::Observability::PromptSync] Whether to auto-publish the assistant's instructions as a Langfuse prompt.
63
+ #
64
+ # @param prompt_version [Integer]
65
+ #
29
66
  # @param public_key_ref [String]
67
+ #
30
68
  # @param secret_key_ref [String]
69
+ #
31
70
  # @param status [Symbol, Telnyx::Models::AI::Observability::Status]
32
71
 
72
+ # Whether to auto-publish the assistant's instructions as a Langfuse prompt.
73
+ #
74
+ # When ENABLED + prompt_name set, every assistant create/update pushes
75
+ # `instructions` to Langfuse via create_prompt and stores the returned version in
76
+ # prompt_version.
77
+ #
78
+ # @see Telnyx::Models::AI::Observability#prompt_sync
79
+ module PromptSync
80
+ extend Telnyx::Internal::Type::Enum
81
+
82
+ ENABLED = :enabled
83
+ DISABLED = :disabled
84
+
85
+ # @!method self.values
86
+ # @return [Array<Symbol>]
87
+ end
88
+
33
89
  # @see Telnyx::Models::AI::Observability#status
34
90
  module Status
35
91
  extend Telnyx::Internal::Type::Enum
@@ -9,6 +9,31 @@ module Telnyx
9
9
  # @return [String, nil]
10
10
  optional :host, String
11
11
 
12
+ # @!attribute prompt_label
13
+ #
14
+ # @return [String, nil]
15
+ optional :prompt_label, String
16
+
17
+ # @!attribute prompt_name
18
+ #
19
+ # @return [String, nil]
20
+ optional :prompt_name, String
21
+
22
+ # @!attribute prompt_sync
23
+ # Whether to auto-publish the assistant's instructions as a Langfuse prompt.
24
+ #
25
+ # When ENABLED + prompt_name set, every assistant create/update pushes
26
+ # `instructions` to Langfuse via create_prompt and stores the returned version in
27
+ # prompt_version.
28
+ #
29
+ # @return [Symbol, Telnyx::Models::AI::ObservabilityReq::PromptSync, nil]
30
+ optional :prompt_sync, enum: -> { Telnyx::AI::ObservabilityReq::PromptSync }
31
+
32
+ # @!attribute prompt_version
33
+ #
34
+ # @return [Integer, nil]
35
+ optional :prompt_version, Integer
36
+
12
37
  # @!attribute public_key_ref
13
38
  #
14
39
  # @return [String, nil]
@@ -24,12 +49,43 @@ module Telnyx
24
49
  # @return [Symbol, Telnyx::Models::AI::ObservabilityReq::Status, nil]
25
50
  optional :status, enum: -> { Telnyx::AI::ObservabilityReq::Status }
26
51
 
27
- # @!method initialize(host: nil, public_key_ref: nil, secret_key_ref: nil, status: nil)
52
+ # @!method initialize(host: nil, prompt_label: nil, prompt_name: nil, prompt_sync: nil, prompt_version: nil, public_key_ref: nil, secret_key_ref: nil, status: nil)
53
+ # Some parameter documentations has been truncated, see
54
+ # {Telnyx::Models::AI::ObservabilityReq} for more details.
55
+ #
28
56
  # @param host [String]
57
+ #
58
+ # @param prompt_label [String]
59
+ #
60
+ # @param prompt_name [String]
61
+ #
62
+ # @param prompt_sync [Symbol, Telnyx::Models::AI::ObservabilityReq::PromptSync] Whether to auto-publish the assistant's instructions as a Langfuse prompt.
63
+ #
64
+ # @param prompt_version [Integer]
65
+ #
29
66
  # @param public_key_ref [String]
67
+ #
30
68
  # @param secret_key_ref [String]
69
+ #
31
70
  # @param status [Symbol, Telnyx::Models::AI::ObservabilityReq::Status]
32
71
 
72
+ # Whether to auto-publish the assistant's instructions as a Langfuse prompt.
73
+ #
74
+ # When ENABLED + prompt_name set, every assistant create/update pushes
75
+ # `instructions` to Langfuse via create_prompt and stores the returned version in
76
+ # prompt_version.
77
+ #
78
+ # @see Telnyx::Models::AI::ObservabilityReq#prompt_sync
79
+ module PromptSync
80
+ extend Telnyx::Internal::Type::Enum
81
+
82
+ ENABLED = :enabled
83
+ DISABLED = :disabled
84
+
85
+ # @!method self.values
86
+ # @return [Array<Symbol>]
87
+ end
88
+
33
89
  # @see Telnyx::Models::AI::ObservabilityReq#status
34
90
  module Status
35
91
  extend Telnyx::Internal::Type::Enum
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module AI
6
+ class PostConversationSettings < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute enabled
8
+ # Whether post-conversation processing is enabled. When true, the assistant will
9
+ # be invoked after the conversation ends to perform any final tool calls. Defaults
10
+ # to false.
11
+ #
12
+ # @return [Boolean, nil]
13
+ optional :enabled, Telnyx::Internal::Type::Boolean
14
+
15
+ # @!method initialize(enabled: nil)
16
+ # Some parameter documentations has been truncated, see
17
+ # {Telnyx::Models::AI::PostConversationSettings} for more details.
18
+ #
19
+ # Configuration for post-conversation processing. When enabled, the assistant
20
+ # receives one additional LLM turn after the conversation ends, allowing it to
21
+ # execute tool calls such as logging to a CRM or sending a summary. The assistant
22
+ # can execute multiple parallel or sequential tools during this phase.
23
+ # Telephony-control tools (e.g. hangup, transfer) are unavailable
24
+ # post-conversation. Beta feature.
25
+ #
26
+ # @param enabled [Boolean] Whether post-conversation processing is enabled. When true, the assistant will b
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module AI
6
+ class PostConversationSettingsReq < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute enabled
8
+ # Whether post-conversation processing is enabled. When true, the assistant will
9
+ # be invoked after the conversation ends to perform any final tool calls. Defaults
10
+ # to false.
11
+ #
12
+ # @return [Boolean, nil]
13
+ optional :enabled, Telnyx::Internal::Type::Boolean
14
+
15
+ # @!method initialize(enabled: nil)
16
+ # Some parameter documentations has been truncated, see
17
+ # {Telnyx::Models::AI::PostConversationSettingsReq} for more details.
18
+ #
19
+ # Configuration for post-conversation processing. When enabled, the assistant
20
+ # receives one additional LLM turn after the conversation ends, allowing it to
21
+ # execute tool calls such as logging to a CRM or sending a summary. The assistant
22
+ # can execute multiple parallel or sequential tools during this phase.
23
+ # Telephony-control tools (e.g. hangup, transfer) are unavailable
24
+ # post-conversation. Beta feature.
25
+ #
26
+ # @param enabled [Boolean] Whether post-conversation processing is enabled. When true, the assistant will b
27
+ end
28
+ end
29
+ end
30
+ end
@@ -135,6 +135,8 @@ module Telnyx
135
135
  # - **Telnyx:** Use `Telnyx.<model_id>.<voice_id>`
136
136
  # - **Inworld:** Use `Inworld.<ModelId>.<VoiceId>` (e.g., `Inworld.Mini.Loretta`,
137
137
  # `Inworld.Max.Oliver`). Supported models: `Mini`, `Max`.
138
+ # - **xAI:** Use `xAI.<VoiceId>` (e.g., `xAI.eve`). Available voices: `eve`,
139
+ # `ara`, `rex`, `sal`, `leo`.
138
140
  #
139
141
  # @return [String, nil]
140
142
  optional :voice, String
@@ -142,7 +144,7 @@ module Telnyx
142
144
  # @!attribute voice_settings
143
145
  # The settings associated with the voice selected
144
146
  #
145
- # @return [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, nil]
147
+ # @return [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionGatherUsingAIParams::VoiceSettings::Xai, nil]
146
148
  optional :voice_settings, union: -> { Telnyx::Calls::ActionGatherUsingAIParams::VoiceSettings }
147
149
 
148
150
  # @!method initialize(call_control_id:, parameters:, assistant: nil, client_state: nil, command_id: nil, gather_ended_speech: nil, greeting: nil, interruption_settings: nil, language: nil, message_history: nil, send_message_history_updates: nil, send_partial_results: nil, transcription: nil, user_response_timeout_ms: nil, voice: nil, voice_settings: nil, request_options: {})
@@ -179,7 +181,7 @@ module Telnyx
179
181
  #
180
182
  # @param voice [String] The voice to be used by the voice assistant. Currently we support ElevenLabs, Te
181
183
  #
182
- # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings] The settings associated with the voice selected
184
+ # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionGatherUsingAIParams::VoiceSettings::Xai] The settings associated with the voice selected
183
185
  #
184
186
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
185
187
 
@@ -233,8 +235,29 @@ module Telnyx
233
235
 
234
236
  variant :resemble, -> { Telnyx::ResembleVoiceSettings }
235
237
 
238
+ variant :xai, -> { Telnyx::Calls::ActionGatherUsingAIParams::VoiceSettings::Xai }
239
+
240
+ class Xai < Telnyx::Internal::Type::BaseModel
241
+ # @!attribute type
242
+ # Voice settings provider type
243
+ #
244
+ # @return [Symbol, :xai]
245
+ required :type, const: :xai
246
+
247
+ # @!attribute language
248
+ # Language code, or `auto` to detect automatically.
249
+ #
250
+ # @return [String, nil]
251
+ optional :language, String
252
+
253
+ # @!method initialize(language: nil, type: :xai)
254
+ # @param language [String] Language code, or `auto` to detect automatically.
255
+ #
256
+ # @param type [Symbol, :xai] Voice settings provider type
257
+ end
258
+
236
259
  # @!method self.variants
237
- # @return [Array(Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings)]
260
+ # @return [Array(Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::Calls::ActionGatherUsingAIParams::VoiceSettings::Xai)]
238
261
  end
239
262
  end
240
263
  end
@@ -59,6 +59,8 @@ module Telnyx
59
59
  # `voice_settings` to configure precision, sample_rate, and format.
60
60
  # - **Inworld:** Use `Inworld.<ModelId>.<VoiceId>` (e.g., `Inworld.Mini.Loretta`,
61
61
  # `Inworld.Max.Oliver`). Supported models: `Mini`, `Max`.
62
+ # - **xAI:** Use `xAI.<VoiceId>` (e.g., `xAI.eve`). Available voices: `eve`,
63
+ # `ara`, `rex`, `sal`, `leo`.
62
64
  #
63
65
  # For service_level basic, you may define the gender of the speaker (male or
64
66
  # female).
@@ -158,7 +160,7 @@ module Telnyx
158
160
  # @!attribute voice_settings
159
161
  # The settings associated with the voice selected
160
162
  #
161
- # @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::ActionGatherUsingSpeakParams::VoiceSettings::Inworld, nil]
163
+ # @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::ActionGatherUsingSpeakParams::VoiceSettings::Inworld, Telnyx::Models::Calls::ActionGatherUsingSpeakParams::VoiceSettings::Xai, nil]
162
164
  optional :voice_settings, union: -> { Telnyx::Calls::ActionGatherUsingSpeakParams::VoiceSettings }
163
165
 
164
166
  # @!method initialize(call_control_id:, payload:, voice:, client_state: nil, command_id: nil, inter_digit_timeout_millis: nil, invalid_payload: nil, language: nil, maximum_digits: nil, maximum_tries: nil, minimum_digits: nil, payload_type: nil, service_level: nil, terminating_digit: nil, timeout_millis: nil, valid_digits: nil, voice_settings: nil, request_options: {})
@@ -198,7 +200,7 @@ module Telnyx
198
200
  #
199
201
  # @param valid_digits [String] A list of all digits accepted as valid.
200
202
  #
201
- # @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::ActionGatherUsingSpeakParams::VoiceSettings::Inworld] The settings associated with the voice selected
203
+ # @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::ActionGatherUsingSpeakParams::VoiceSettings::Inworld, Telnyx::Models::Calls::ActionGatherUsingSpeakParams::VoiceSettings::Xai] The settings associated with the voice selected
202
204
  #
203
205
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
204
206
 
@@ -287,6 +289,8 @@ module Telnyx
287
289
 
288
290
  variant :inworld, -> { Telnyx::Calls::ActionGatherUsingSpeakParams::VoiceSettings::Inworld }
289
291
 
292
+ variant :xai, -> { Telnyx::Calls::ActionGatherUsingSpeakParams::VoiceSettings::Xai }
293
+
290
294
  class Inworld < Telnyx::Internal::Type::BaseModel
291
295
  # @!attribute type
292
296
  # Voice settings provider type
@@ -298,8 +302,27 @@ module Telnyx
298
302
  # @param type [Symbol, :inworld] Voice settings provider type
299
303
  end
300
304
 
305
+ class Xai < Telnyx::Internal::Type::BaseModel
306
+ # @!attribute type
307
+ # Voice settings provider type
308
+ #
309
+ # @return [Symbol, :xai]
310
+ required :type, const: :xai
311
+
312
+ # @!attribute language
313
+ # Language code, or `auto` to detect automatically.
314
+ #
315
+ # @return [String, nil]
316
+ optional :language, String
317
+
318
+ # @!method initialize(language: nil, type: :xai)
319
+ # @param language [String] Language code, or `auto` to detect automatically.
320
+ #
321
+ # @param type [Symbol, :xai] Voice settings provider type
322
+ end
323
+
301
324
  # @!method self.variants
302
- # @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::ActionGatherUsingSpeakParams::VoiceSettings::Inworld)]
325
+ # @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::ActionGatherUsingSpeakParams::VoiceSettings::Inworld, Telnyx::Models::Calls::ActionGatherUsingSpeakParams::VoiceSettings::Xai)]
303
326
  end
304
327
  end
305
328
  end