telnyx 5.87.0 → 5.89.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 (28) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/assistant_create_params.rb +209 -1
  5. data/lib/telnyx/models/ai/assistant_update_params.rb +209 -1
  6. data/lib/telnyx/models/ai/assistants/update_assistant.rb +212 -1
  7. data/lib/telnyx/models/ai/inference_embedding.rb +211 -1
  8. data/lib/telnyx/models/ai/transcription_settings.rb +7 -4
  9. data/lib/telnyx/models/call_assistant_request.rb +209 -6
  10. data/lib/telnyx/resources/ai/assistants/versions.rb +5 -1
  11. data/lib/telnyx/resources/ai/assistants.rb +10 -2
  12. data/lib/telnyx/version.rb +1 -1
  13. data/rbi/telnyx/models/ai/assistant_create_params.rbi +419 -0
  14. data/rbi/telnyx/models/ai/assistant_update_params.rbi +419 -0
  15. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +425 -0
  16. data/rbi/telnyx/models/ai/inference_embedding.rbi +415 -0
  17. data/rbi/telnyx/models/ai/transcription_settings.rbi +11 -5
  18. data/rbi/telnyx/models/call_assistant_request.rbi +416 -8
  19. data/rbi/telnyx/resources/ai/assistants/versions.rbi +8 -0
  20. data/rbi/telnyx/resources/ai/assistants.rbi +12 -0
  21. data/sig/telnyx/models/ai/assistant_create_params.rbs +193 -0
  22. data/sig/telnyx/models/ai/assistant_update_params.rbs +193 -0
  23. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +193 -0
  24. data/sig/telnyx/models/ai/inference_embedding.rbs +193 -0
  25. data/sig/telnyx/models/call_assistant_request.rbs +197 -10
  26. data/sig/telnyx/resources/ai/assistants/versions.rbs +2 -0
  27. data/sig/telnyx/resources/ai/assistants.rbs +4 -0
  28. metadata +1 -1
@@ -10,6 +10,8 @@ module Telnyx
10
10
  dynamic_variables: ::Hash[Symbol, top],
11
11
  dynamic_variables_webhook_url: String,
12
12
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
13
+ external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
14
+ fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig,
13
15
  greeting: String,
14
16
  insight_settings: Telnyx::AI::InsightSettings,
15
17
  llm_api_key_ref: String,
@@ -54,6 +56,18 @@ module Telnyx
54
56
  ::Array[Telnyx::Models::AI::enabled_features]
55
57
  ) -> ::Array[Telnyx::Models::AI::enabled_features]
56
58
 
59
+ attr_reader external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm?
60
+
61
+ def external_llm=: (
62
+ Telnyx::AI::AssistantCreateParams::ExternalLlm
63
+ ) -> Telnyx::AI::AssistantCreateParams::ExternalLlm
64
+
65
+ attr_reader fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig?
66
+
67
+ def fallback_config=: (
68
+ Telnyx::AI::AssistantCreateParams::FallbackConfig
69
+ ) -> Telnyx::AI::AssistantCreateParams::FallbackConfig
70
+
57
71
  attr_reader greeting: String?
58
72
 
59
73
  def greeting=: (String) -> String
@@ -134,6 +148,8 @@ module Telnyx
134
148
  ?dynamic_variables: ::Hash[Symbol, top],
135
149
  ?dynamic_variables_webhook_url: String,
136
150
  ?enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
151
+ ?external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
152
+ ?fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig,
137
153
  ?greeting: String,
138
154
  ?insight_settings: Telnyx::AI::InsightSettings,
139
155
  ?llm_api_key_ref: String,
@@ -158,6 +174,8 @@ module Telnyx
158
174
  dynamic_variables: ::Hash[Symbol, top],
159
175
  dynamic_variables_webhook_url: String,
160
176
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
177
+ external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
178
+ fallback_config: Telnyx::AI::AssistantCreateParams::FallbackConfig,
161
179
  greeting: String,
162
180
  insight_settings: Telnyx::AI::InsightSettings,
163
181
  llm_api_key_ref: String,
@@ -174,6 +192,181 @@ module Telnyx
174
192
  request_options: Telnyx::RequestOptions
175
193
  }
176
194
 
195
+ type external_llm =
196
+ {
197
+ base_url: String,
198
+ model: String,
199
+ authentication_method: Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method,
200
+ certificate_ref: String,
201
+ forward_metadata: bool,
202
+ llm_api_key_ref: String,
203
+ token_retrieval_url: String
204
+ }
205
+
206
+ class ExternalLlm < Telnyx::Internal::Type::BaseModel
207
+ attr_accessor base_url: String
208
+
209
+ attr_accessor model: String
210
+
211
+ attr_reader authentication_method: Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method?
212
+
213
+ def authentication_method=: (
214
+ Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method
215
+ ) -> Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method
216
+
217
+ attr_reader certificate_ref: String?
218
+
219
+ def certificate_ref=: (String) -> String
220
+
221
+ attr_reader forward_metadata: bool?
222
+
223
+ def forward_metadata=: (bool) -> bool
224
+
225
+ attr_reader llm_api_key_ref: String?
226
+
227
+ def llm_api_key_ref=: (String) -> String
228
+
229
+ attr_reader token_retrieval_url: String?
230
+
231
+ def token_retrieval_url=: (String) -> String
232
+
233
+ def initialize: (
234
+ base_url: String,
235
+ model: String,
236
+ ?authentication_method: Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method,
237
+ ?certificate_ref: String,
238
+ ?forward_metadata: bool,
239
+ ?llm_api_key_ref: String,
240
+ ?token_retrieval_url: String
241
+ ) -> void
242
+
243
+ def to_hash: -> {
244
+ base_url: String,
245
+ model: String,
246
+ authentication_method: Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method,
247
+ certificate_ref: String,
248
+ forward_metadata: bool,
249
+ llm_api_key_ref: String,
250
+ token_retrieval_url: String
251
+ }
252
+
253
+ type authentication_method = :token | :certificate
254
+
255
+ module AuthenticationMethod
256
+ extend Telnyx::Internal::Type::Enum
257
+
258
+ TOKEN: :token
259
+ CERTIFICATE: :certificate
260
+
261
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantCreateParams::ExternalLlm::authentication_method]
262
+ end
263
+ end
264
+
265
+ type fallback_config =
266
+ {
267
+ external_llm: Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm,
268
+ llm_api_key_ref: String,
269
+ model: String
270
+ }
271
+
272
+ class FallbackConfig < Telnyx::Internal::Type::BaseModel
273
+ attr_reader external_llm: Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm?
274
+
275
+ def external_llm=: (
276
+ Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm
277
+ ) -> Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm
278
+
279
+ attr_reader llm_api_key_ref: String?
280
+
281
+ def llm_api_key_ref=: (String) -> String
282
+
283
+ attr_reader model: String?
284
+
285
+ def model=: (String) -> String
286
+
287
+ def initialize: (
288
+ ?external_llm: Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm,
289
+ ?llm_api_key_ref: String,
290
+ ?model: String
291
+ ) -> void
292
+
293
+ def to_hash: -> {
294
+ external_llm: Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm,
295
+ llm_api_key_ref: String,
296
+ model: String
297
+ }
298
+
299
+ type external_llm =
300
+ {
301
+ base_url: String,
302
+ model: String,
303
+ authentication_method: Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method,
304
+ certificate_ref: String,
305
+ forward_metadata: bool,
306
+ llm_api_key_ref: String,
307
+ token_retrieval_url: String
308
+ }
309
+
310
+ class ExternalLlm < Telnyx::Internal::Type::BaseModel
311
+ attr_accessor base_url: String
312
+
313
+ attr_accessor model: String
314
+
315
+ attr_reader authentication_method: Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method?
316
+
317
+ def authentication_method=: (
318
+ Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method
319
+ ) -> Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method
320
+
321
+ attr_reader certificate_ref: String?
322
+
323
+ def certificate_ref=: (String) -> String
324
+
325
+ attr_reader forward_metadata: bool?
326
+
327
+ def forward_metadata=: (bool) -> bool
328
+
329
+ attr_reader llm_api_key_ref: String?
330
+
331
+ def llm_api_key_ref=: (String) -> String
332
+
333
+ attr_reader token_retrieval_url: String?
334
+
335
+ def token_retrieval_url=: (String) -> String
336
+
337
+ def initialize: (
338
+ base_url: String,
339
+ model: String,
340
+ ?authentication_method: Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method,
341
+ ?certificate_ref: String,
342
+ ?forward_metadata: bool,
343
+ ?llm_api_key_ref: String,
344
+ ?token_retrieval_url: String
345
+ ) -> void
346
+
347
+ def to_hash: -> {
348
+ base_url: String,
349
+ model: String,
350
+ authentication_method: Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method,
351
+ certificate_ref: String,
352
+ forward_metadata: bool,
353
+ llm_api_key_ref: String,
354
+ token_retrieval_url: String
355
+ }
356
+
357
+ type authentication_method = :token | :certificate
358
+
359
+ module AuthenticationMethod
360
+ extend Telnyx::Internal::Type::Enum
361
+
362
+ TOKEN: :token
363
+ CERTIFICATE: :certificate
364
+
365
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::authentication_method]
366
+ end
367
+ end
368
+ end
369
+
177
370
  type post_conversation_settings = { enabled: bool }
178
371
 
179
372
  class PostConversationSettings < Telnyx::Internal::Type::BaseModel
@@ -8,6 +8,8 @@ module Telnyx
8
8
  dynamic_variables: ::Hash[Symbol, top],
9
9
  dynamic_variables_webhook_url: String,
10
10
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
11
+ external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm,
12
+ fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig,
11
13
  greeting: String,
12
14
  insight_settings: Telnyx::AI::InsightSettings,
13
15
  instructions: String,
@@ -52,6 +54,18 @@ module Telnyx
52
54
  ::Array[Telnyx::Models::AI::enabled_features]
53
55
  ) -> ::Array[Telnyx::Models::AI::enabled_features]
54
56
 
57
+ attr_reader external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm?
58
+
59
+ def external_llm=: (
60
+ Telnyx::AI::AssistantUpdateParams::ExternalLlm
61
+ ) -> Telnyx::AI::AssistantUpdateParams::ExternalLlm
62
+
63
+ attr_reader fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig?
64
+
65
+ def fallback_config=: (
66
+ Telnyx::AI::AssistantUpdateParams::FallbackConfig
67
+ ) -> Telnyx::AI::AssistantUpdateParams::FallbackConfig
68
+
55
69
  attr_reader greeting: String?
56
70
 
57
71
  def greeting=: (String) -> String
@@ -146,6 +160,8 @@ module Telnyx
146
160
  ?dynamic_variables: ::Hash[Symbol, top],
147
161
  ?dynamic_variables_webhook_url: String,
148
162
  ?enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
163
+ ?external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm,
164
+ ?fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig,
149
165
  ?greeting: String,
150
166
  ?insight_settings: Telnyx::AI::InsightSettings,
151
167
  ?instructions: String,
@@ -172,6 +188,8 @@ module Telnyx
172
188
  dynamic_variables: ::Hash[Symbol, top],
173
189
  dynamic_variables_webhook_url: String,
174
190
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
191
+ external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm,
192
+ fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig,
175
193
  greeting: String,
176
194
  insight_settings: Telnyx::AI::InsightSettings,
177
195
  instructions: String,
@@ -192,6 +210,181 @@ module Telnyx
192
210
  request_options: Telnyx::RequestOptions
193
211
  }
194
212
 
213
+ type external_llm =
214
+ {
215
+ base_url: String,
216
+ model: String,
217
+ authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method,
218
+ certificate_ref: String,
219
+ forward_metadata: bool,
220
+ llm_api_key_ref: String,
221
+ token_retrieval_url: String
222
+ }
223
+
224
+ class ExternalLlm < Telnyx::Internal::Type::BaseModel
225
+ attr_accessor base_url: String
226
+
227
+ attr_accessor model: String
228
+
229
+ attr_reader authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method?
230
+
231
+ def authentication_method=: (
232
+ Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method
233
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method
234
+
235
+ attr_reader certificate_ref: String?
236
+
237
+ def certificate_ref=: (String) -> String
238
+
239
+ attr_reader forward_metadata: bool?
240
+
241
+ def forward_metadata=: (bool) -> bool
242
+
243
+ attr_reader llm_api_key_ref: String?
244
+
245
+ def llm_api_key_ref=: (String) -> String
246
+
247
+ attr_reader token_retrieval_url: String?
248
+
249
+ def token_retrieval_url=: (String) -> String
250
+
251
+ def initialize: (
252
+ base_url: String,
253
+ model: String,
254
+ ?authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method,
255
+ ?certificate_ref: String,
256
+ ?forward_metadata: bool,
257
+ ?llm_api_key_ref: String,
258
+ ?token_retrieval_url: String
259
+ ) -> void
260
+
261
+ def to_hash: -> {
262
+ base_url: String,
263
+ model: String,
264
+ authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method,
265
+ certificate_ref: String,
266
+ forward_metadata: bool,
267
+ llm_api_key_ref: String,
268
+ token_retrieval_url: String
269
+ }
270
+
271
+ type authentication_method = :token | :certificate
272
+
273
+ module AuthenticationMethod
274
+ extend Telnyx::Internal::Type::Enum
275
+
276
+ TOKEN: :token
277
+ CERTIFICATE: :certificate
278
+
279
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method]
280
+ end
281
+ end
282
+
283
+ type fallback_config =
284
+ {
285
+ external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm,
286
+ llm_api_key_ref: String,
287
+ model: String
288
+ }
289
+
290
+ class FallbackConfig < Telnyx::Internal::Type::BaseModel
291
+ attr_reader external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm?
292
+
293
+ def external_llm=: (
294
+ Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm
295
+ ) -> Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm
296
+
297
+ attr_reader llm_api_key_ref: String?
298
+
299
+ def llm_api_key_ref=: (String) -> String
300
+
301
+ attr_reader model: String?
302
+
303
+ def model=: (String) -> String
304
+
305
+ def initialize: (
306
+ ?external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm,
307
+ ?llm_api_key_ref: String,
308
+ ?model: String
309
+ ) -> void
310
+
311
+ def to_hash: -> {
312
+ external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm,
313
+ llm_api_key_ref: String,
314
+ model: String
315
+ }
316
+
317
+ type external_llm =
318
+ {
319
+ base_url: String,
320
+ model: String,
321
+ authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method,
322
+ certificate_ref: String,
323
+ forward_metadata: bool,
324
+ llm_api_key_ref: String,
325
+ token_retrieval_url: String
326
+ }
327
+
328
+ class ExternalLlm < Telnyx::Internal::Type::BaseModel
329
+ attr_accessor base_url: String
330
+
331
+ attr_accessor model: String
332
+
333
+ attr_reader authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method?
334
+
335
+ def authentication_method=: (
336
+ Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method
337
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method
338
+
339
+ attr_reader certificate_ref: String?
340
+
341
+ def certificate_ref=: (String) -> String
342
+
343
+ attr_reader forward_metadata: bool?
344
+
345
+ def forward_metadata=: (bool) -> bool
346
+
347
+ attr_reader llm_api_key_ref: String?
348
+
349
+ def llm_api_key_ref=: (String) -> String
350
+
351
+ attr_reader token_retrieval_url: String?
352
+
353
+ def token_retrieval_url=: (String) -> String
354
+
355
+ def initialize: (
356
+ base_url: String,
357
+ model: String,
358
+ ?authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method,
359
+ ?certificate_ref: String,
360
+ ?forward_metadata: bool,
361
+ ?llm_api_key_ref: String,
362
+ ?token_retrieval_url: String
363
+ ) -> void
364
+
365
+ def to_hash: -> {
366
+ base_url: String,
367
+ model: String,
368
+ authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method,
369
+ certificate_ref: String,
370
+ forward_metadata: bool,
371
+ llm_api_key_ref: String,
372
+ token_retrieval_url: String
373
+ }
374
+
375
+ type authentication_method = :token | :certificate
376
+
377
+ module AuthenticationMethod
378
+ extend Telnyx::Internal::Type::Enum
379
+
380
+ TOKEN: :token
381
+ CERTIFICATE: :certificate
382
+
383
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method]
384
+ end
385
+ end
386
+ end
387
+
195
388
  type post_conversation_settings = { enabled: bool }
196
389
 
197
390
  class PostConversationSettings < Telnyx::Internal::Type::BaseModel
@@ -10,6 +10,8 @@ module Telnyx
10
10
  dynamic_variables: ::Hash[Symbol, top],
11
11
  dynamic_variables_webhook_url: String,
12
12
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
13
+ external_llm: Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm,
14
+ fallback_config: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig,
13
15
  greeting: String,
14
16
  insight_settings: Telnyx::AI::InsightSettings,
15
17
  instructions: String,
@@ -47,6 +49,18 @@ module Telnyx
47
49
  ::Array[Telnyx::Models::AI::enabled_features]
48
50
  ) -> ::Array[Telnyx::Models::AI::enabled_features]
49
51
 
52
+ attr_reader external_llm: Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm?
53
+
54
+ def external_llm=: (
55
+ Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm
56
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm
57
+
58
+ attr_reader fallback_config: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig?
59
+
60
+ def fallback_config=: (
61
+ Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig
62
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig
63
+
50
64
  attr_reader greeting: String?
51
65
 
52
66
  def greeting=: (String) -> String
@@ -136,6 +150,8 @@ module Telnyx
136
150
  ?dynamic_variables: ::Hash[Symbol, top],
137
151
  ?dynamic_variables_webhook_url: String,
138
152
  ?enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
153
+ ?external_llm: Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm,
154
+ ?fallback_config: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig,
139
155
  ?greeting: String,
140
156
  ?insight_settings: Telnyx::AI::InsightSettings,
141
157
  ?instructions: String,
@@ -159,6 +175,8 @@ module Telnyx
159
175
  dynamic_variables: ::Hash[Symbol, top],
160
176
  dynamic_variables_webhook_url: String,
161
177
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
178
+ external_llm: Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm,
179
+ fallback_config: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig,
162
180
  greeting: String,
163
181
  insight_settings: Telnyx::AI::InsightSettings,
164
182
  instructions: String,
@@ -177,6 +195,181 @@ module Telnyx
177
195
  widget_settings: Telnyx::AI::WidgetSettings
178
196
  }
179
197
 
198
+ type external_llm =
199
+ {
200
+ base_url: String,
201
+ model: String,
202
+ authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method,
203
+ certificate_ref: String,
204
+ forward_metadata: bool,
205
+ llm_api_key_ref: String,
206
+ token_retrieval_url: String
207
+ }
208
+
209
+ class ExternalLlm < Telnyx::Internal::Type::BaseModel
210
+ attr_accessor base_url: String
211
+
212
+ attr_accessor model: String
213
+
214
+ attr_reader authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method?
215
+
216
+ def authentication_method=: (
217
+ Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method
218
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method
219
+
220
+ attr_reader certificate_ref: String?
221
+
222
+ def certificate_ref=: (String) -> String
223
+
224
+ attr_reader forward_metadata: bool?
225
+
226
+ def forward_metadata=: (bool) -> bool
227
+
228
+ attr_reader llm_api_key_ref: String?
229
+
230
+ def llm_api_key_ref=: (String) -> String
231
+
232
+ attr_reader token_retrieval_url: String?
233
+
234
+ def token_retrieval_url=: (String) -> String
235
+
236
+ def initialize: (
237
+ base_url: String,
238
+ model: String,
239
+ ?authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method,
240
+ ?certificate_ref: String,
241
+ ?forward_metadata: bool,
242
+ ?llm_api_key_ref: String,
243
+ ?token_retrieval_url: String
244
+ ) -> void
245
+
246
+ def to_hash: -> {
247
+ base_url: String,
248
+ model: String,
249
+ authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method,
250
+ certificate_ref: String,
251
+ forward_metadata: bool,
252
+ llm_api_key_ref: String,
253
+ token_retrieval_url: String
254
+ }
255
+
256
+ type authentication_method = :token | :certificate
257
+
258
+ module AuthenticationMethod
259
+ extend Telnyx::Internal::Type::Enum
260
+
261
+ TOKEN: :token
262
+ CERTIFICATE: :certificate
263
+
264
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ExternalLlm::authentication_method]
265
+ end
266
+ end
267
+
268
+ type fallback_config =
269
+ {
270
+ external_llm: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm,
271
+ llm_api_key_ref: String,
272
+ model: String
273
+ }
274
+
275
+ class FallbackConfig < Telnyx::Internal::Type::BaseModel
276
+ attr_reader external_llm: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm?
277
+
278
+ def external_llm=: (
279
+ Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm
280
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm
281
+
282
+ attr_reader llm_api_key_ref: String?
283
+
284
+ def llm_api_key_ref=: (String) -> String
285
+
286
+ attr_reader model: String?
287
+
288
+ def model=: (String) -> String
289
+
290
+ def initialize: (
291
+ ?external_llm: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm,
292
+ ?llm_api_key_ref: String,
293
+ ?model: String
294
+ ) -> void
295
+
296
+ def to_hash: -> {
297
+ external_llm: Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm,
298
+ llm_api_key_ref: String,
299
+ model: String
300
+ }
301
+
302
+ type external_llm =
303
+ {
304
+ base_url: String,
305
+ model: String,
306
+ authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method,
307
+ certificate_ref: String,
308
+ forward_metadata: bool,
309
+ llm_api_key_ref: String,
310
+ token_retrieval_url: String
311
+ }
312
+
313
+ class ExternalLlm < Telnyx::Internal::Type::BaseModel
314
+ attr_accessor base_url: String
315
+
316
+ attr_accessor model: String
317
+
318
+ attr_reader authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method?
319
+
320
+ def authentication_method=: (
321
+ Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method
322
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method
323
+
324
+ attr_reader certificate_ref: String?
325
+
326
+ def certificate_ref=: (String) -> String
327
+
328
+ attr_reader forward_metadata: bool?
329
+
330
+ def forward_metadata=: (bool) -> bool
331
+
332
+ attr_reader llm_api_key_ref: String?
333
+
334
+ def llm_api_key_ref=: (String) -> String
335
+
336
+ attr_reader token_retrieval_url: String?
337
+
338
+ def token_retrieval_url=: (String) -> String
339
+
340
+ def initialize: (
341
+ base_url: String,
342
+ model: String,
343
+ ?authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method,
344
+ ?certificate_ref: String,
345
+ ?forward_metadata: bool,
346
+ ?llm_api_key_ref: String,
347
+ ?token_retrieval_url: String
348
+ ) -> void
349
+
350
+ def to_hash: -> {
351
+ base_url: String,
352
+ model: String,
353
+ authentication_method: Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method,
354
+ certificate_ref: String,
355
+ forward_metadata: bool,
356
+ llm_api_key_ref: String,
357
+ token_retrieval_url: String
358
+ }
359
+
360
+ type authentication_method = :token | :certificate
361
+
362
+ module AuthenticationMethod
363
+ extend Telnyx::Internal::Type::Enum
364
+
365
+ TOKEN: :token
366
+ CERTIFICATE: :certificate
367
+
368
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::authentication_method]
369
+ end
370
+ end
371
+ end
372
+
180
373
  type post_conversation_settings = { enabled: bool }
181
374
 
182
375
  class PostConversationSettings < Telnyx::Internal::Type::BaseModel