telnyx 5.98.0 → 5.100.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 (121) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -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 +9 -231
  6. data/lib/telnyx/models/ai/assistant_update_params.rb +9 -231
  7. data/lib/telnyx/models/ai/assistants/canary_deploy.rb +128 -7
  8. data/lib/telnyx/models/ai/assistants/canary_deploy_response.rb +131 -7
  9. data/lib/telnyx/models/ai/assistants/update_assistant.rb +9 -236
  10. data/lib/telnyx/models/ai/external_llm.rb +89 -0
  11. data/lib/telnyx/models/ai/external_llm_req.rb +89 -0
  12. data/lib/telnyx/models/ai/fallback_config.rb +37 -0
  13. data/lib/telnyx/models/ai/fallback_config_req.rb +37 -0
  14. data/lib/telnyx/models/ai/inference_embedding.rb +9 -234
  15. data/lib/telnyx/models/ai/post_conversation_settings.rb +30 -0
  16. data/lib/telnyx/models/ai/post_conversation_settings_req.rb +30 -0
  17. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +26 -3
  18. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +26 -3
  19. data/lib/telnyx/models/calls/action_speak_params.rb +26 -3
  20. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +26 -3
  21. data/lib/telnyx/models/conferences/action_speak_params.rb +26 -3
  22. data/lib/telnyx/models/uac_connection_create_params.rb +738 -0
  23. data/lib/telnyx/models/uac_connection_create_response.rb +898 -0
  24. data/lib/telnyx/models/uac_connection_delete_params.rb +20 -0
  25. data/lib/telnyx/models/uac_connection_delete_response.rb +898 -0
  26. data/lib/telnyx/models/uac_connection_list_params.rb +143 -0
  27. data/lib/telnyx/models/uac_connection_list_response.rb +876 -0
  28. data/lib/telnyx/models/uac_connection_retrieve_params.rb +20 -0
  29. data/lib/telnyx/models/uac_connection_retrieve_response.rb +899 -0
  30. data/lib/telnyx/models/uac_connection_update_params.rb +740 -0
  31. data/lib/telnyx/models/uac_connection_update_response.rb +898 -0
  32. data/lib/telnyx/models/uac_connections/action_check_registration_status_params.rb +22 -0
  33. data/lib/telnyx/models/uac_connections/action_check_registration_status_response.rb +104 -0
  34. data/lib/telnyx/models.rb +12 -0
  35. data/lib/telnyx/resources/ai/assistants/canary_deploys.rb +6 -10
  36. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
  37. data/lib/telnyx/resources/ai/assistants.rb +6 -6
  38. data/lib/telnyx/resources/calls/actions.rb +4 -4
  39. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  40. data/lib/telnyx/resources/uac_connections/actions.rb +39 -0
  41. data/lib/telnyx/resources/uac_connections.rb +256 -0
  42. data/lib/telnyx/version.rb +1 -1
  43. data/lib/telnyx.rb +20 -1
  44. data/rbi/telnyx/client.rbi +4 -0
  45. data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -463
  46. data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -463
  47. data/rbi/telnyx/models/ai/assistants/canary_deploy.rbi +303 -10
  48. data/rbi/telnyx/models/ai/assistants/canary_deploy_response.rbi +309 -9
  49. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -469
  50. data/rbi/telnyx/models/ai/external_llm.rbi +161 -0
  51. data/rbi/telnyx/models/ai/external_llm_req.rbi +161 -0
  52. data/rbi/telnyx/models/ai/fallback_config.rbi +64 -0
  53. data/rbi/telnyx/models/ai/fallback_config_req.rbi +64 -0
  54. data/rbi/telnyx/models/ai/inference_embedding.rbi +12 -460
  55. data/rbi/telnyx/models/ai/post_conversation_settings.rbi +45 -0
  56. data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +45 -0
  57. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +50 -5
  58. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +50 -5
  59. data/rbi/telnyx/models/calls/action_speak_params.rbi +50 -5
  60. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +50 -5
  61. data/rbi/telnyx/models/conferences/action_speak_params.rbi +50 -5
  62. data/rbi/telnyx/models/uac_connection_create_params.rbi +1465 -0
  63. data/rbi/telnyx/models/uac_connection_create_response.rbi +1793 -0
  64. data/rbi/telnyx/models/uac_connection_delete_params.rbi +35 -0
  65. data/rbi/telnyx/models/uac_connection_delete_response.rbi +1793 -0
  66. data/rbi/telnyx/models/uac_connection_list_params.rbi +261 -0
  67. data/rbi/telnyx/models/uac_connection_list_response.rbi +1727 -0
  68. data/rbi/telnyx/models/uac_connection_retrieve_params.rbi +35 -0
  69. data/rbi/telnyx/models/uac_connection_retrieve_response.rbi +1793 -0
  70. data/rbi/telnyx/models/uac_connection_update_params.rbi +1463 -0
  71. data/rbi/telnyx/models/uac_connection_update_response.rbi +1793 -0
  72. data/rbi/telnyx/models/uac_connections/action_check_registration_status_params.rbi +40 -0
  73. data/rbi/telnyx/models/uac_connections/action_check_registration_status_response.rbi +237 -0
  74. data/rbi/telnyx/models.rbi +12 -0
  75. data/rbi/telnyx/resources/ai/assistants/canary_deploys.rbi +6 -14
  76. data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -5
  77. data/rbi/telnyx/resources/ai/assistants.rbi +6 -10
  78. data/rbi/telnyx/resources/calls/actions.rbi +16 -4
  79. data/rbi/telnyx/resources/conferences/actions.rbi +4 -1
  80. data/rbi/telnyx/resources/uac_connections/actions.rbi +33 -0
  81. data/rbi/telnyx/resources/uac_connections.rbi +348 -0
  82. data/sig/telnyx/client.rbs +2 -0
  83. data/sig/telnyx/models/ai/assistant_create_params.rbs +18 -205
  84. data/sig/telnyx/models/ai/assistant_update_params.rbs +18 -205
  85. data/sig/telnyx/models/ai/assistants/canary_deploy.rbs +113 -4
  86. data/sig/telnyx/models/ai/assistants/canary_deploy_response.rbs +113 -8
  87. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +18 -205
  88. data/sig/telnyx/models/ai/external_llm.rbs +75 -0
  89. data/sig/telnyx/models/ai/external_llm_req.rbs +75 -0
  90. data/sig/telnyx/models/ai/fallback_config.rbs +38 -0
  91. data/sig/telnyx/models/ai/fallback_config_req.rbs +40 -0
  92. data/sig/telnyx/models/ai/inference_embedding.rbs +17 -206
  93. data/sig/telnyx/models/ai/post_conversation_settings.rbs +17 -0
  94. data/sig/telnyx/models/ai/post_conversation_settings_req.rbs +17 -0
  95. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +15 -0
  96. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +15 -0
  97. data/sig/telnyx/models/calls/action_speak_params.rbs +15 -0
  98. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +15 -0
  99. data/sig/telnyx/models/conferences/action_speak_params.rbs +15 -0
  100. data/sig/telnyx/models/uac_connection_create_params.rbs +609 -0
  101. data/sig/telnyx/models/uac_connection_create_response.rbs +741 -0
  102. data/sig/telnyx/models/uac_connection_delete_params.rbs +20 -0
  103. data/sig/telnyx/models/uac_connection_delete_response.rbs +741 -0
  104. data/sig/telnyx/models/uac_connection_list_params.rbs +112 -0
  105. data/sig/telnyx/models/uac_connection_list_response.rbs +722 -0
  106. data/sig/telnyx/models/uac_connection_retrieve_params.rbs +20 -0
  107. data/sig/telnyx/models/uac_connection_retrieve_response.rbs +741 -0
  108. data/sig/telnyx/models/uac_connection_update_params.rbs +615 -0
  109. data/sig/telnyx/models/uac_connection_update_response.rbs +741 -0
  110. data/sig/telnyx/models/uac_connections/action_check_registration_status_params.rbs +22 -0
  111. data/sig/telnyx/models/uac_connections/action_check_registration_status_response.rbs +117 -0
  112. data/sig/telnyx/models.rbs +12 -0
  113. data/sig/telnyx/resources/ai/assistants/canary_deploys.rbs +2 -2
  114. data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
  115. data/sig/telnyx/resources/ai/assistants.rbs +6 -6
  116. data/sig/telnyx/resources/uac_connections/actions.rbs +14 -0
  117. data/sig/telnyx/resources/uac_connections.rbs +90 -0
  118. metadata +62 -5
  119. data/lib/telnyx/models/ai/assistants/version_config.rb +0 -30
  120. data/rbi/telnyx/models/ai/assistants/version_config.rbi +0 -45
  121. data/sig/telnyx/models/ai/assistants/version_config.rbs +0 -19
@@ -9,8 +9,8 @@ module Telnyx
9
9
  dynamic_variables_webhook_timeout_ms: Integer,
10
10
  dynamic_variables_webhook_url: String,
11
11
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
12
- external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm,
13
- fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig,
12
+ external_llm: Telnyx::AI::ExternalLlmReq,
13
+ fallback_config: Telnyx::AI::FallbackConfigReq,
14
14
  greeting: String,
15
15
  insight_settings: Telnyx::AI::InsightSettings,
16
16
  instructions: String,
@@ -22,7 +22,7 @@ module Telnyx
22
22
  model: String,
23
23
  name: String,
24
24
  observability_settings: Telnyx::AI::ObservabilityReq,
25
- post_conversation_settings: Telnyx::AI::AssistantUpdateParams::PostConversationSettings,
25
+ post_conversation_settings: Telnyx::AI::PostConversationSettingsReq,
26
26
  privacy_settings: Telnyx::AI::PrivacySettings,
27
27
  promote_to_main: bool,
28
28
  tags: ::Array[String],
@@ -64,17 +64,17 @@ module Telnyx
64
64
  ::Array[Telnyx::Models::AI::enabled_features]
65
65
  ) -> ::Array[Telnyx::Models::AI::enabled_features]
66
66
 
67
- attr_reader external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm?
67
+ attr_reader external_llm: Telnyx::AI::ExternalLlmReq?
68
68
 
69
69
  def external_llm=: (
70
- Telnyx::AI::AssistantUpdateParams::ExternalLlm
71
- ) -> Telnyx::AI::AssistantUpdateParams::ExternalLlm
70
+ Telnyx::AI::ExternalLlmReq
71
+ ) -> Telnyx::AI::ExternalLlmReq
72
72
 
73
- attr_reader fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig?
73
+ attr_reader fallback_config: Telnyx::AI::FallbackConfigReq?
74
74
 
75
75
  def fallback_config=: (
76
- Telnyx::AI::AssistantUpdateParams::FallbackConfig
77
- ) -> Telnyx::AI::AssistantUpdateParams::FallbackConfig
76
+ Telnyx::AI::FallbackConfigReq
77
+ ) -> Telnyx::AI::FallbackConfigReq
78
78
 
79
79
  attr_reader greeting: String?
80
80
 
@@ -132,11 +132,11 @@ module Telnyx
132
132
  Telnyx::AI::ObservabilityReq
133
133
  ) -> Telnyx::AI::ObservabilityReq
134
134
 
135
- attr_reader post_conversation_settings: Telnyx::AI::AssistantUpdateParams::PostConversationSettings?
135
+ attr_reader post_conversation_settings: Telnyx::AI::PostConversationSettingsReq?
136
136
 
137
137
  def post_conversation_settings=: (
138
- Telnyx::AI::AssistantUpdateParams::PostConversationSettings
139
- ) -> Telnyx::AI::AssistantUpdateParams::PostConversationSettings
138
+ Telnyx::AI::PostConversationSettingsReq
139
+ ) -> Telnyx::AI::PostConversationSettingsReq
140
140
 
141
141
  attr_reader privacy_settings: Telnyx::AI::PrivacySettings?
142
142
 
@@ -197,8 +197,8 @@ module Telnyx
197
197
  ?dynamic_variables_webhook_timeout_ms: Integer,
198
198
  ?dynamic_variables_webhook_url: String,
199
199
  ?enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
200
- ?external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm,
201
- ?fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig,
200
+ ?external_llm: Telnyx::AI::ExternalLlmReq,
201
+ ?fallback_config: Telnyx::AI::FallbackConfigReq,
202
202
  ?greeting: String,
203
203
  ?insight_settings: Telnyx::AI::InsightSettings,
204
204
  ?instructions: String,
@@ -210,7 +210,7 @@ module Telnyx
210
210
  ?model: String,
211
211
  ?name: String,
212
212
  ?observability_settings: Telnyx::AI::ObservabilityReq,
213
- ?post_conversation_settings: Telnyx::AI::AssistantUpdateParams::PostConversationSettings,
213
+ ?post_conversation_settings: Telnyx::AI::PostConversationSettingsReq,
214
214
  ?privacy_settings: Telnyx::AI::PrivacySettings,
215
215
  ?promote_to_main: bool,
216
216
  ?tags: ::Array[String],
@@ -231,8 +231,8 @@ module Telnyx
231
231
  dynamic_variables_webhook_timeout_ms: Integer,
232
232
  dynamic_variables_webhook_url: String,
233
233
  enabled_features: ::Array[Telnyx::Models::AI::enabled_features],
234
- external_llm: Telnyx::AI::AssistantUpdateParams::ExternalLlm,
235
- fallback_config: Telnyx::AI::AssistantUpdateParams::FallbackConfig,
234
+ external_llm: Telnyx::AI::ExternalLlmReq,
235
+ fallback_config: Telnyx::AI::FallbackConfigReq,
236
236
  greeting: String,
237
237
  insight_settings: Telnyx::AI::InsightSettings,
238
238
  instructions: String,
@@ -244,7 +244,7 @@ module Telnyx
244
244
  model: String,
245
245
  name: String,
246
246
  observability_settings: Telnyx::AI::ObservabilityReq,
247
- post_conversation_settings: Telnyx::AI::AssistantUpdateParams::PostConversationSettings,
247
+ post_conversation_settings: Telnyx::AI::PostConversationSettingsReq,
248
248
  privacy_settings: Telnyx::AI::PrivacySettings,
249
249
  promote_to_main: bool,
250
250
  tags: ::Array[String],
@@ -258,181 +258,6 @@ module Telnyx
258
258
  request_options: Telnyx::RequestOptions
259
259
  }
260
260
 
261
- type external_llm =
262
- {
263
- base_url: String,
264
- model: String,
265
- authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method,
266
- certificate_ref: String,
267
- forward_metadata: bool,
268
- llm_api_key_ref: String,
269
- token_retrieval_url: String
270
- }
271
-
272
- class ExternalLlm < Telnyx::Internal::Type::BaseModel
273
- attr_accessor base_url: String
274
-
275
- attr_accessor model: String
276
-
277
- attr_reader authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method?
278
-
279
- def authentication_method=: (
280
- Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method
281
- ) -> Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method
282
-
283
- attr_reader certificate_ref: String?
284
-
285
- def certificate_ref=: (String) -> String
286
-
287
- attr_reader forward_metadata: bool?
288
-
289
- def forward_metadata=: (bool) -> bool
290
-
291
- attr_reader llm_api_key_ref: String?
292
-
293
- def llm_api_key_ref=: (String) -> String
294
-
295
- attr_reader token_retrieval_url: String?
296
-
297
- def token_retrieval_url=: (String) -> String
298
-
299
- def initialize: (
300
- base_url: String,
301
- model: String,
302
- ?authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method,
303
- ?certificate_ref: String,
304
- ?forward_metadata: bool,
305
- ?llm_api_key_ref: String,
306
- ?token_retrieval_url: String
307
- ) -> void
308
-
309
- def to_hash: -> {
310
- base_url: String,
311
- model: String,
312
- authentication_method: Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method,
313
- certificate_ref: String,
314
- forward_metadata: bool,
315
- llm_api_key_ref: String,
316
- token_retrieval_url: String
317
- }
318
-
319
- type authentication_method = :token | :certificate
320
-
321
- module AuthenticationMethod
322
- extend Telnyx::Internal::Type::Enum
323
-
324
- TOKEN: :token
325
- CERTIFICATE: :certificate
326
-
327
- def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ExternalLlm::authentication_method]
328
- end
329
- end
330
-
331
- type fallback_config =
332
- {
333
- external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm,
334
- llm_api_key_ref: String,
335
- model: String
336
- }
337
-
338
- class FallbackConfig < Telnyx::Internal::Type::BaseModel
339
- attr_reader external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm?
340
-
341
- def external_llm=: (
342
- Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm
343
- ) -> Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm
344
-
345
- attr_reader llm_api_key_ref: String?
346
-
347
- def llm_api_key_ref=: (String) -> String
348
-
349
- attr_reader model: String?
350
-
351
- def model=: (String) -> String
352
-
353
- def initialize: (
354
- ?external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm,
355
- ?llm_api_key_ref: String,
356
- ?model: String
357
- ) -> void
358
-
359
- def to_hash: -> {
360
- external_llm: Telnyx::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm,
361
- llm_api_key_ref: String,
362
- model: String
363
- }
364
-
365
- type external_llm =
366
- {
367
- base_url: String,
368
- model: String,
369
- authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method,
370
- certificate_ref: String,
371
- forward_metadata: bool,
372
- llm_api_key_ref: String,
373
- token_retrieval_url: String
374
- }
375
-
376
- class ExternalLlm < Telnyx::Internal::Type::BaseModel
377
- attr_accessor base_url: String
378
-
379
- attr_accessor model: String
380
-
381
- attr_reader authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method?
382
-
383
- def authentication_method=: (
384
- Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method
385
- ) -> Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method
386
-
387
- attr_reader certificate_ref: String?
388
-
389
- def certificate_ref=: (String) -> String
390
-
391
- attr_reader forward_metadata: bool?
392
-
393
- def forward_metadata=: (bool) -> bool
394
-
395
- attr_reader llm_api_key_ref: String?
396
-
397
- def llm_api_key_ref=: (String) -> String
398
-
399
- attr_reader token_retrieval_url: String?
400
-
401
- def token_retrieval_url=: (String) -> String
402
-
403
- def initialize: (
404
- base_url: String,
405
- model: String,
406
- ?authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method,
407
- ?certificate_ref: String,
408
- ?forward_metadata: bool,
409
- ?llm_api_key_ref: String,
410
- ?token_retrieval_url: String
411
- ) -> void
412
-
413
- def to_hash: -> {
414
- base_url: String,
415
- model: String,
416
- authentication_method: Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method,
417
- certificate_ref: String,
418
- forward_metadata: bool,
419
- llm_api_key_ref: String,
420
- token_retrieval_url: String
421
- }
422
-
423
- type authentication_method = :token | :certificate
424
-
425
- module AuthenticationMethod
426
- extend Telnyx::Internal::Type::Enum
427
-
428
- TOKEN: :token
429
- CERTIFICATE: :certificate
430
-
431
- def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::FallbackConfig::ExternalLlm::authentication_method]
432
- end
433
- end
434
- end
435
-
436
261
  type integration =
437
262
  { integration_id: String, allowed_list: ::Array[String] }
438
263
 
@@ -556,18 +381,6 @@ module Telnyx
556
381
 
557
382
  def to_hash: -> { id: String, allowed_tools: ::Array[String] }
558
383
  end
559
-
560
- type post_conversation_settings = { enabled: bool }
561
-
562
- class PostConversationSettings < Telnyx::Internal::Type::BaseModel
563
- attr_reader enabled: bool?
564
-
565
- def enabled=: (bool) -> bool
566
-
567
- def initialize: (?enabled: bool) -> void
568
-
569
- def to_hash: -> { enabled: bool }
570
- end
571
384
  end
572
385
  end
573
386
  end
@@ -3,18 +3,127 @@ module Telnyx
3
3
  module AI
4
4
  module Assistants
5
5
  type canary_deploy =
6
- { versions: ::Array[Telnyx::AI::Assistants::VersionConfig] }
6
+ { rules: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule] }
7
7
 
8
8
  class CanaryDeploy < Telnyx::Internal::Type::BaseModel
9
- attr_accessor versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
9
+ attr_reader rules: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule]?
10
+
11
+ def rules=: (
12
+ ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule]
13
+ ) -> ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule]
10
14
 
11
15
  def initialize: (
12
- versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
16
+ ?rules: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule]
13
17
  ) -> void
14
18
 
15
19
  def to_hash: -> {
16
- versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
20
+ rules: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule]
17
21
  }
22
+
23
+ type rule =
24
+ {
25
+ serve: Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve,
26
+ match: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Match]
27
+ }
28
+
29
+ class Rule < Telnyx::Internal::Type::BaseModel
30
+ attr_accessor serve: Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve
31
+
32
+ attr_reader match: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Match]?
33
+
34
+ def match=: (
35
+ ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Match]
36
+ ) -> ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Match]
37
+
38
+ def initialize: (
39
+ serve: Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve,
40
+ ?match: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Match]
41
+ ) -> void
42
+
43
+ def to_hash: -> {
44
+ serve: Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve,
45
+ match: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Match]
46
+ }
47
+
48
+ type serve =
49
+ {
50
+ rollout: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve::Rollout],
51
+ version_id: String
52
+ }
53
+
54
+ class Serve < Telnyx::Internal::Type::BaseModel
55
+ attr_reader rollout: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve::Rollout]?
56
+
57
+ def rollout=: (
58
+ ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve::Rollout]
59
+ ) -> ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve::Rollout]
60
+
61
+ attr_reader version_id: String?
62
+
63
+ def version_id=: (String) -> String
64
+
65
+ def initialize: (
66
+ ?rollout: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve::Rollout],
67
+ ?version_id: String
68
+ ) -> void
69
+
70
+ def to_hash: -> {
71
+ rollout: ::Array[Telnyx::AI::Assistants::CanaryDeploy::Rule::Serve::Rollout],
72
+ version_id: String
73
+ }
74
+
75
+ type rollout = { version_id: String, weight: Float }
76
+
77
+ class Rollout < Telnyx::Internal::Type::BaseModel
78
+ attr_accessor version_id: String
79
+
80
+ attr_accessor weight: Float
81
+
82
+ def initialize: (version_id: String, weight: Float) -> void
83
+
84
+ def to_hash: -> { version_id: String, weight: Float }
85
+ end
86
+ end
87
+
88
+ type match =
89
+ {
90
+ attribute: String,
91
+ operator: Telnyx::Models::AI::Assistants::CanaryDeploy::Rule::Match::operator,
92
+ values: ::Array[String]
93
+ }
94
+
95
+ class Match < Telnyx::Internal::Type::BaseModel
96
+ attr_accessor attribute: String
97
+
98
+ attr_accessor operator: Telnyx::Models::AI::Assistants::CanaryDeploy::Rule::Match::operator
99
+
100
+ attr_accessor values: ::Array[String]
101
+
102
+ def initialize: (
103
+ attribute: String,
104
+ operator: Telnyx::Models::AI::Assistants::CanaryDeploy::Rule::Match::operator,
105
+ values: ::Array[String]
106
+ ) -> void
107
+
108
+ def to_hash: -> {
109
+ attribute: String,
110
+ operator: Telnyx::Models::AI::Assistants::CanaryDeploy::Rule::Match::operator,
111
+ values: ::Array[String]
112
+ }
113
+
114
+ type operator = :in | :not_in | :starts_with
115
+
116
+ module Operator
117
+ extend Telnyx::Internal::Type::Enum
118
+
119
+ IN: :in
120
+ NOT_IN: :not_in
121
+ STARTS_WITH: :starts_with
122
+
123
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::CanaryDeploy::Rule::Match::operator]
124
+ end
125
+ end
126
+ end
18
127
  end
19
128
  end
20
129
  end
@@ -6,8 +6,8 @@ module Telnyx
6
6
  {
7
7
  assistant_id: String,
8
8
  created_at: Time,
9
- updated_at: Time,
10
- versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
9
+ rules: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule],
10
+ updated_at: Time
11
11
  }
12
12
 
13
13
  class CanaryDeployResponse < Telnyx::Internal::Type::BaseModel
@@ -15,23 +15,128 @@ module Telnyx
15
15
 
16
16
  attr_accessor created_at: Time
17
17
 
18
- attr_accessor updated_at: Time
18
+ attr_accessor rules: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule]
19
19
 
20
- attr_accessor versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
20
+ attr_accessor updated_at: Time
21
21
 
22
22
  def initialize: (
23
23
  assistant_id: String,
24
24
  created_at: Time,
25
- updated_at: Time,
26
- versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
25
+ rules: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule],
26
+ updated_at: Time
27
27
  ) -> void
28
28
 
29
29
  def to_hash: -> {
30
30
  assistant_id: String,
31
31
  created_at: Time,
32
- updated_at: Time,
33
- versions: ::Array[Telnyx::AI::Assistants::VersionConfig]
32
+ rules: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule],
33
+ updated_at: Time
34
34
  }
35
+
36
+ type rule =
37
+ {
38
+ serve: Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve,
39
+ match: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Match]
40
+ }
41
+
42
+ class Rule < Telnyx::Internal::Type::BaseModel
43
+ attr_accessor serve: Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve
44
+
45
+ attr_reader match: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Match]?
46
+
47
+ def match=: (
48
+ ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Match]
49
+ ) -> ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Match]
50
+
51
+ def initialize: (
52
+ serve: Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve,
53
+ ?match: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Match]
54
+ ) -> void
55
+
56
+ def to_hash: -> {
57
+ serve: Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve,
58
+ match: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Match]
59
+ }
60
+
61
+ type serve =
62
+ {
63
+ rollout: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve::Rollout],
64
+ version_id: String
65
+ }
66
+
67
+ class Serve < Telnyx::Internal::Type::BaseModel
68
+ attr_reader rollout: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve::Rollout]?
69
+
70
+ def rollout=: (
71
+ ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve::Rollout]
72
+ ) -> ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve::Rollout]
73
+
74
+ attr_reader version_id: String?
75
+
76
+ def version_id=: (String) -> String
77
+
78
+ def initialize: (
79
+ ?rollout: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve::Rollout],
80
+ ?version_id: String
81
+ ) -> void
82
+
83
+ def to_hash: -> {
84
+ rollout: ::Array[Telnyx::AI::Assistants::CanaryDeployResponse::Rule::Serve::Rollout],
85
+ version_id: String
86
+ }
87
+
88
+ type rollout = { version_id: String, weight: Float }
89
+
90
+ class Rollout < Telnyx::Internal::Type::BaseModel
91
+ attr_accessor version_id: String
92
+
93
+ attr_accessor weight: Float
94
+
95
+ def initialize: (version_id: String, weight: Float) -> void
96
+
97
+ def to_hash: -> { version_id: String, weight: Float }
98
+ end
99
+ end
100
+
101
+ type match =
102
+ {
103
+ attribute: String,
104
+ operator: Telnyx::Models::AI::Assistants::CanaryDeployResponse::Rule::Match::operator,
105
+ values: ::Array[String]
106
+ }
107
+
108
+ class Match < Telnyx::Internal::Type::BaseModel
109
+ attr_accessor attribute: String
110
+
111
+ attr_accessor operator: Telnyx::Models::AI::Assistants::CanaryDeployResponse::Rule::Match::operator
112
+
113
+ attr_accessor values: ::Array[String]
114
+
115
+ def initialize: (
116
+ attribute: String,
117
+ operator: Telnyx::Models::AI::Assistants::CanaryDeployResponse::Rule::Match::operator,
118
+ values: ::Array[String]
119
+ ) -> void
120
+
121
+ def to_hash: -> {
122
+ attribute: String,
123
+ operator: Telnyx::Models::AI::Assistants::CanaryDeployResponse::Rule::Match::operator,
124
+ values: ::Array[String]
125
+ }
126
+
127
+ type operator = :in | :not_in | :starts_with
128
+
129
+ module Operator
130
+ extend Telnyx::Internal::Type::Enum
131
+
132
+ IN: :in
133
+ NOT_IN: :not_in
134
+ STARTS_WITH: :starts_with
135
+
136
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::CanaryDeployResponse::Rule::Match::operator]
137
+ end
138
+ end
139
+ end
35
140
  end
36
141
  end
37
142
  end