telnyx 5.92.0 → 5.94.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 (29) 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 +265 -37
  5. data/lib/telnyx/models/ai/assistant_tool.rb +108 -21
  6. data/lib/telnyx/models/ai/assistant_update_params.rb +266 -30
  7. data/lib/telnyx/models/ai/assistants/update_assistant.rb +267 -30
  8. data/lib/telnyx/models/ai/inference_embedding.rb +287 -29
  9. data/lib/telnyx/models/ai/transfer_tool.rb +48 -22
  10. data/lib/telnyx/resources/ai/assistants/versions.rb +18 -6
  11. data/lib/telnyx/resources/ai/assistants.rb +35 -13
  12. data/lib/telnyx/version.rb +1 -1
  13. data/rbi/telnyx/models/ai/assistant_create_params.rbi +510 -52
  14. data/rbi/telnyx/models/ai/assistant_tool.rbi +171 -32
  15. data/rbi/telnyx/models/ai/assistant_update_params.rbi +510 -44
  16. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +526 -44
  17. data/rbi/telnyx/models/ai/inference_embedding.rbi +540 -44
  18. data/rbi/telnyx/models/ai/transfer_tool.rbi +64 -30
  19. data/rbi/telnyx/resources/ai/assistants/versions.rbi +61 -13
  20. data/rbi/telnyx/resources/ai/assistants.rbi +112 -27
  21. data/sig/telnyx/models/ai/assistant_create_params.rbs +172 -5
  22. data/sig/telnyx/models/ai/assistant_tool.rbs +53 -12
  23. data/sig/telnyx/models/ai/assistant_update_params.rbs +172 -0
  24. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +175 -0
  25. data/sig/telnyx/models/ai/inference_embedding.rbs +193 -0
  26. data/sig/telnyx/models/ai/transfer_tool.rbs +22 -12
  27. data/sig/telnyx/resources/ai/assistants/versions.rbs +6 -0
  28. data/sig/telnyx/resources/ai/assistants.rbs +12 -1
  29. metadata +2 -2
@@ -4,21 +4,26 @@ module Telnyx
4
4
  type assistant_create_params =
5
5
  {
6
6
  instructions: String,
7
- model: String,
8
7
  name: String,
9
8
  description: String,
10
9
  dynamic_variables: ::Hash[Symbol, top],
10
+ dynamic_variables_webhook_timeout_ms: Integer,
11
11
  dynamic_variables_webhook_url: String,
12
12
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
13
13
  external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
14
14
  fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig,
15
15
  greeting: String,
16
16
  insight_settings: Telnyx::AI::InsightSettings,
17
+ integrations: ::Array[Telnyx::AI::AssistantCreateParams::Integration],
18
+ interruption_settings: Telnyx::AI::AssistantCreateParams::InterruptionSettings,
17
19
  llm_api_key_ref: String,
20
+ mcp_servers: ::Array[Telnyx::AI::AssistantCreateParams::McpServer],
18
21
  messaging_settings: Telnyx::AI::MessagingSettings,
22
+ model: String,
19
23
  observability_settings: Telnyx::AI::ObservabilityReq,
20
24
  post_conversation_settings: Telnyx::AI::AssistantCreateParams::PostConversationSettings,
21
25
  privacy_settings: Telnyx::AI::PrivacySettings,
26
+ tags: ::Array[String],
22
27
  telephony_settings: Telnyx::AI::TelephonySettings,
23
28
  tool_ids: ::Array[String],
24
29
  tools: ::Array[Telnyx::Models::AI::assistant_tool],
@@ -34,8 +39,6 @@ module Telnyx
34
39
 
35
40
  attr_accessor instructions: String
36
41
 
37
- attr_accessor model: String
38
-
39
42
  attr_accessor name: String
40
43
 
41
44
  attr_reader description: String?
@@ -46,6 +49,10 @@ module Telnyx
46
49
 
47
50
  def dynamic_variables=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
48
51
 
52
+ attr_reader dynamic_variables_webhook_timeout_ms: Integer?
53
+
54
+ def dynamic_variables_webhook_timeout_ms=: (Integer) -> Integer
55
+
49
56
  attr_reader dynamic_variables_webhook_url: String?
50
57
 
51
58
  def dynamic_variables_webhook_url=: (String) -> String
@@ -78,16 +85,38 @@ module Telnyx
78
85
  Telnyx::AI::InsightSettings
79
86
  ) -> Telnyx::AI::InsightSettings
80
87
 
88
+ attr_reader integrations: ::Array[Telnyx::AI::AssistantCreateParams::Integration]?
89
+
90
+ def integrations=: (
91
+ ::Array[Telnyx::AI::AssistantCreateParams::Integration]
92
+ ) -> ::Array[Telnyx::AI::AssistantCreateParams::Integration]
93
+
94
+ attr_reader interruption_settings: Telnyx::AI::AssistantCreateParams::InterruptionSettings?
95
+
96
+ def interruption_settings=: (
97
+ Telnyx::AI::AssistantCreateParams::InterruptionSettings
98
+ ) -> Telnyx::AI::AssistantCreateParams::InterruptionSettings
99
+
81
100
  attr_reader llm_api_key_ref: String?
82
101
 
83
102
  def llm_api_key_ref=: (String) -> String
84
103
 
104
+ attr_reader mcp_servers: ::Array[Telnyx::AI::AssistantCreateParams::McpServer]?
105
+
106
+ def mcp_servers=: (
107
+ ::Array[Telnyx::AI::AssistantCreateParams::McpServer]
108
+ ) -> ::Array[Telnyx::AI::AssistantCreateParams::McpServer]
109
+
85
110
  attr_reader messaging_settings: Telnyx::AI::MessagingSettings?
86
111
 
87
112
  def messaging_settings=: (
88
113
  Telnyx::AI::MessagingSettings
89
114
  ) -> Telnyx::AI::MessagingSettings
90
115
 
116
+ attr_reader model: String?
117
+
118
+ def model=: (String) -> String
119
+
91
120
  attr_reader observability_settings: Telnyx::AI::ObservabilityReq?
92
121
 
93
122
  def observability_settings=: (
@@ -106,6 +135,10 @@ module Telnyx
106
135
  Telnyx::AI::PrivacySettings
107
136
  ) -> Telnyx::AI::PrivacySettings
108
137
 
138
+ attr_reader tags: ::Array[String]?
139
+
140
+ def tags=: (::Array[String]) -> ::Array[String]
141
+
109
142
  attr_reader telephony_settings: Telnyx::AI::TelephonySettings?
110
143
 
111
144
  def telephony_settings=: (
@@ -142,21 +175,26 @@ module Telnyx
142
175
 
143
176
  def initialize: (
144
177
  instructions: String,
145
- model: String,
146
178
  name: String,
147
179
  ?description: String,
148
180
  ?dynamic_variables: ::Hash[Symbol, top],
181
+ ?dynamic_variables_webhook_timeout_ms: Integer,
149
182
  ?dynamic_variables_webhook_url: String,
150
183
  ?enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
151
184
  ?external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
152
185
  ?fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig,
153
186
  ?greeting: String,
154
187
  ?insight_settings: Telnyx::AI::InsightSettings,
188
+ ?integrations: ::Array[Telnyx::AI::AssistantCreateParams::Integration],
189
+ ?interruption_settings: Telnyx::AI::AssistantCreateParams::InterruptionSettings,
155
190
  ?llm_api_key_ref: String,
191
+ ?mcp_servers: ::Array[Telnyx::AI::AssistantCreateParams::McpServer],
156
192
  ?messaging_settings: Telnyx::AI::MessagingSettings,
193
+ ?model: String,
157
194
  ?observability_settings: Telnyx::AI::ObservabilityReq,
158
195
  ?post_conversation_settings: Telnyx::AI::AssistantCreateParams::PostConversationSettings,
159
196
  ?privacy_settings: Telnyx::AI::PrivacySettings,
197
+ ?tags: ::Array[String],
160
198
  ?telephony_settings: Telnyx::AI::TelephonySettings,
161
199
  ?tool_ids: ::Array[String],
162
200
  ?tools: ::Array[Telnyx::Models::AI::assistant_tool],
@@ -168,21 +206,26 @@ module Telnyx
168
206
 
169
207
  def to_hash: -> {
170
208
  instructions: String,
171
- model: String,
172
209
  name: String,
173
210
  description: String,
174
211
  dynamic_variables: ::Hash[Symbol, top],
212
+ dynamic_variables_webhook_timeout_ms: Integer,
175
213
  dynamic_variables_webhook_url: String,
176
214
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
177
215
  external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
178
216
  fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig,
179
217
  greeting: String,
180
218
  insight_settings: Telnyx::AI::InsightSettings,
219
+ integrations: ::Array[Telnyx::AI::AssistantCreateParams::Integration],
220
+ interruption_settings: Telnyx::AI::AssistantCreateParams::InterruptionSettings,
181
221
  llm_api_key_ref: String,
222
+ mcp_servers: ::Array[Telnyx::AI::AssistantCreateParams::McpServer],
182
223
  messaging_settings: Telnyx::AI::MessagingSettings,
224
+ model: String,
183
225
  observability_settings: Telnyx::AI::ObservabilityReq,
184
226
  post_conversation_settings: Telnyx::AI::AssistantCreateParams::PostConversationSettings,
185
227
  privacy_settings: Telnyx::AI::PrivacySettings,
228
+ tags: ::Array[String],
186
229
  telephony_settings: Telnyx::AI::TelephonySettings,
187
230
  tool_ids: ::Array[String],
188
231
  tools: ::Array[Telnyx::Models::AI::assistant_tool],
@@ -367,6 +410,130 @@ module Telnyx
367
410
  end
368
411
  end
369
412
 
413
+ type integration =
414
+ { integration_id: String, allowed_list: ::Array[String] }
415
+
416
+ class Integration < Telnyx::Internal::Type::BaseModel
417
+ attr_accessor integration_id: String
418
+
419
+ attr_reader allowed_list: ::Array[String]?
420
+
421
+ def allowed_list=: (::Array[String]) -> ::Array[String]
422
+
423
+ def initialize: (
424
+ integration_id: String,
425
+ ?allowed_list: ::Array[String]
426
+ ) -> void
427
+
428
+ def to_hash: -> {
429
+ integration_id: String,
430
+ allowed_list: ::Array[String]
431
+ }
432
+ end
433
+
434
+ type interruption_settings =
435
+ {
436
+ enable: bool,
437
+ start_speaking_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan
438
+ }
439
+
440
+ class InterruptionSettings < Telnyx::Internal::Type::BaseModel
441
+ attr_reader enable: bool?
442
+
443
+ def enable=: (bool) -> bool
444
+
445
+ attr_reader start_speaking_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan?
446
+
447
+ def start_speaking_plan=: (
448
+ Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan
449
+ ) -> Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan
450
+
451
+ def initialize: (
452
+ ?enable: bool,
453
+ ?start_speaking_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan
454
+ ) -> void
455
+
456
+ def to_hash: -> {
457
+ enable: bool,
458
+ start_speaking_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan
459
+ }
460
+
461
+ type start_speaking_plan =
462
+ {
463
+ transcription_endpointing_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
464
+ wait_seconds: Float
465
+ }
466
+
467
+ class StartSpeakingPlan < Telnyx::Internal::Type::BaseModel
468
+ attr_reader transcription_endpointing_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan?
469
+
470
+ def transcription_endpointing_plan=: (
471
+ Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan
472
+ ) -> Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan
473
+
474
+ attr_reader wait_seconds: Float?
475
+
476
+ def wait_seconds=: (Float) -> Float
477
+
478
+ def initialize: (
479
+ ?transcription_endpointing_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
480
+ ?wait_seconds: Float
481
+ ) -> void
482
+
483
+ def to_hash: -> {
484
+ transcription_endpointing_plan: Telnyx::AI::AssistantCreateParams::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
485
+ wait_seconds: Float
486
+ }
487
+
488
+ type transcription_endpointing_plan =
489
+ {
490
+ on_no_punctuation_seconds: Float,
491
+ on_number_seconds: Float,
492
+ on_punctuation_seconds: Float
493
+ }
494
+
495
+ class TranscriptionEndpointingPlan < Telnyx::Internal::Type::BaseModel
496
+ attr_reader on_no_punctuation_seconds: Float?
497
+
498
+ def on_no_punctuation_seconds=: (Float) -> Float
499
+
500
+ attr_reader on_number_seconds: Float?
501
+
502
+ def on_number_seconds=: (Float) -> Float
503
+
504
+ attr_reader on_punctuation_seconds: Float?
505
+
506
+ def on_punctuation_seconds=: (Float) -> Float
507
+
508
+ def initialize: (
509
+ ?on_no_punctuation_seconds: Float,
510
+ ?on_number_seconds: Float,
511
+ ?on_punctuation_seconds: Float
512
+ ) -> void
513
+
514
+ def to_hash: -> {
515
+ on_no_punctuation_seconds: Float,
516
+ on_number_seconds: Float,
517
+ on_punctuation_seconds: Float
518
+ }
519
+ end
520
+ end
521
+ end
522
+
523
+ type mcp_server = { id: String, allowed_tools: ::Array[String] }
524
+
525
+ class McpServer < Telnyx::Internal::Type::BaseModel
526
+ attr_accessor id: String
527
+
528
+ attr_reader allowed_tools: ::Array[String]?
529
+
530
+ def allowed_tools=: (::Array[String]) -> ::Array[String]
531
+
532
+ def initialize: (id: String, ?allowed_tools: ::Array[String]) -> void
533
+
534
+ def to_hash: -> { id: String, allowed_tools: ::Array[String] }
535
+ end
536
+
370
537
  type post_conversation_settings = { enabled: bool }
371
538
 
372
539
  class PostConversationSettings < Telnyx::Internal::Type::BaseModel
@@ -111,7 +111,7 @@ module Telnyx
111
111
  type transfer =
112
112
  {
113
113
  from: String,
114
- targets: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::Target],
114
+ targets: Telnyx::Models::AI::AssistantTool::Transfer::Transfer::targets,
115
115
  custom_headers: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::CustomHeader],
116
116
  voicemail_detection: Telnyx::AI::AssistantTool::Transfer::Transfer::VoicemailDetection,
117
117
  warm_message_delay_ms: Integer?,
@@ -121,7 +121,7 @@ module Telnyx
121
121
  class Transfer < Telnyx::Internal::Type::BaseModel
122
122
  attr_accessor from: String
123
123
 
124
- attr_accessor targets: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::Target]
124
+ attr_accessor targets: Telnyx::Models::AI::AssistantTool::Transfer::Transfer::targets
125
125
 
126
126
  attr_reader custom_headers: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::CustomHeader]?
127
127
 
@@ -143,7 +143,7 @@ module Telnyx
143
143
 
144
144
  def initialize: (
145
145
  from: String,
146
- targets: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::Target],
146
+ targets: Telnyx::Models::AI::AssistantTool::Transfer::Transfer::targets,
147
147
  ?custom_headers: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::CustomHeader],
148
148
  ?voicemail_detection: Telnyx::AI::AssistantTool::Transfer::Transfer::VoicemailDetection,
149
149
  ?warm_message_delay_ms: Integer?,
@@ -152,27 +152,37 @@ module Telnyx
152
152
 
153
153
  def to_hash: -> {
154
154
  from: String,
155
- targets: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::Target],
155
+ targets: Telnyx::Models::AI::AssistantTool::Transfer::Transfer::targets,
156
156
  custom_headers: ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::CustomHeader],
157
157
  voicemail_detection: Telnyx::AI::AssistantTool::Transfer::Transfer::VoicemailDetection,
158
158
  warm_message_delay_ms: Integer?,
159
159
  warm_transfer_instructions: String
160
160
  }
161
161
 
162
- type target = { name: String, to: String }
162
+ type targets =
163
+ ::Array[Telnyx::AI::AssistantTool::Transfer::Transfer::Targets::UnionMember0]
164
+ | String
163
165
 
164
- class Target < Telnyx::Internal::Type::BaseModel
165
- attr_reader name: String?
166
+ module Targets
167
+ extend Telnyx::Internal::Type::Union
166
168
 
167
- def name=: (String) -> String
169
+ type union_member0 = { to: String, name: String }
170
+
171
+ class UnionMember0 < Telnyx::Internal::Type::BaseModel
172
+ attr_accessor to: String
173
+
174
+ attr_reader name: String?
168
175
 
169
- attr_reader to: String?
176
+ def name=: (String) -> String
170
177
 
171
- def to=: (String) -> String
178
+ def initialize: (to: String, ?name: String) -> void
172
179
 
173
- def initialize: (?name: String, ?to: String) -> void
180
+ def to_hash: -> { to: String, name: String }
181
+ end
182
+
183
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantTool::Transfer::Transfer::targets]
174
184
 
175
- def to_hash: -> { name: String, to: String }
185
+ UnionMember0Array: Telnyx::Internal::Type::Converter
176
186
  end
177
187
 
178
188
  type custom_header = { name: String, value: String }
@@ -437,6 +447,7 @@ module Telnyx
437
447
  {
438
448
  custom_headers: ::Array[Telnyx::AI::AssistantTool::Invite::InviteConfig::CustomHeader],
439
449
  from: String,
450
+ targets: Telnyx::Models::AI::AssistantTool::Invite::InviteConfig::targets?,
440
451
  voicemail_detection: Telnyx::AI::AssistantTool::Invite::InviteConfig::VoicemailDetection
441
452
  }
442
453
 
@@ -451,6 +462,8 @@ module Telnyx
451
462
 
452
463
  def from=: (String) -> String
453
464
 
465
+ attr_accessor targets: Telnyx::Models::AI::AssistantTool::Invite::InviteConfig::targets?
466
+
454
467
  attr_reader voicemail_detection: Telnyx::AI::AssistantTool::Invite::InviteConfig::VoicemailDetection?
455
468
 
456
469
  def voicemail_detection=: (
@@ -460,12 +473,14 @@ module Telnyx
460
473
  def initialize: (
461
474
  ?custom_headers: ::Array[Telnyx::AI::AssistantTool::Invite::InviteConfig::CustomHeader],
462
475
  ?from: String,
476
+ ?targets: Telnyx::Models::AI::AssistantTool::Invite::InviteConfig::targets?,
463
477
  ?voicemail_detection: Telnyx::AI::AssistantTool::Invite::InviteConfig::VoicemailDetection
464
478
  ) -> void
465
479
 
466
480
  def to_hash: -> {
467
481
  custom_headers: ::Array[Telnyx::AI::AssistantTool::Invite::InviteConfig::CustomHeader],
468
482
  from: String,
483
+ targets: Telnyx::Models::AI::AssistantTool::Invite::InviteConfig::targets?,
469
484
  voicemail_detection: Telnyx::AI::AssistantTool::Invite::InviteConfig::VoicemailDetection
470
485
  }
471
486
 
@@ -485,6 +500,32 @@ module Telnyx
485
500
  def to_hash: -> { name: String, value: String }
486
501
  end
487
502
 
503
+ type targets =
504
+ ::Array[Telnyx::AI::AssistantTool::Invite::InviteConfig::Targets::UnionMember0]
505
+ | String
506
+
507
+ module Targets
508
+ extend Telnyx::Internal::Type::Union
509
+
510
+ type union_member0 = { to: String, name: String }
511
+
512
+ class UnionMember0 < Telnyx::Internal::Type::BaseModel
513
+ attr_accessor to: String
514
+
515
+ attr_reader name: String?
516
+
517
+ def name=: (String) -> String
518
+
519
+ def initialize: (to: String, ?name: String) -> void
520
+
521
+ def to_hash: -> { to: String, name: String }
522
+ end
523
+
524
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantTool::Invite::InviteConfig::targets]
525
+
526
+ UnionMember0Array: Telnyx::Internal::Type::Converter
527
+ end
528
+
488
529
  type voicemail_detection =
489
530
  {
490
531
  detection_mode: Telnyx::Models::AI::AssistantTool::Invite::InviteConfig::VoicemailDetection::detection_mode,