telnyx 5.123.0 → 5.124.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +5 -0
  5. data/lib/telnyx/models/ai/assistant_create_params.rb +780 -1
  6. data/lib/telnyx/models/ai/assistant_update_params.rb +780 -1
  7. data/lib/telnyx/models/ai/assistants/update_assistant.rb +785 -1
  8. data/lib/telnyx/models/ai/inference_embedding.rb +767 -1
  9. data/lib/telnyx/models/{ai_create_response_params.rb → ai_create_response_deprecated_params.rb} +2 -2
  10. data/lib/telnyx/models/{ai_create_response_response.rb → ai_create_response_deprecated_response.rb} +1 -1
  11. data/lib/telnyx/models/call_dial_params.rb +276 -10
  12. data/lib/telnyx/models/calls/action_answer_params.rb +278 -10
  13. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +15 -4
  14. data/lib/telnyx/models/calls/action_speak_params.rb +15 -4
  15. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +431 -13
  16. data/lib/telnyx/models/calls/transcription_start_request.rb +173 -5
  17. data/lib/telnyx/models/conferences/action_speak_params.rb +15 -4
  18. data/lib/telnyx/models/messaging_profile_update_params.rb +9 -1
  19. data/lib/telnyx/models/sip_registration_status_retrieve_params.rb +45 -0
  20. data/lib/telnyx/models/sip_registration_status_retrieve_response.rb +160 -0
  21. data/lib/telnyx/models/speech_to_text_list_providers_params.rb +16 -5
  22. data/lib/telnyx/models/speech_to_text_list_providers_response.rb +55 -23
  23. data/lib/telnyx/models/voice_sdk_call_report_list_response.rb +114 -9
  24. data/lib/telnyx/models/voice_sdk_call_report_retrieve_response.rb +116 -9
  25. data/lib/telnyx/models/whatsapp/user_data_retrieve_response.rb +44 -3
  26. data/lib/telnyx/models/whatsapp/user_data_update_response.rb +44 -3
  27. data/lib/telnyx/models.rb +3 -9
  28. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  29. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  30. data/lib/telnyx/resources/ai.rb +4 -4
  31. data/lib/telnyx/resources/calls/actions.rb +6 -6
  32. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  33. data/lib/telnyx/resources/messaging_profiles.rb +3 -1
  34. data/lib/telnyx/resources/sip_registration_status.rb +45 -0
  35. data/lib/telnyx/resources/speech_to_text.rb +6 -5
  36. data/lib/telnyx/version.rb +1 -1
  37. data/lib/telnyx.rb +5 -9
  38. data/rbi/telnyx/client.rbi +4 -0
  39. data/rbi/telnyx/models/ai/assistant_create_params.rbi +1411 -0
  40. data/rbi/telnyx/models/ai/assistant_update_params.rbi +1411 -0
  41. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +1417 -0
  42. data/rbi/telnyx/models/ai/inference_embedding.rbi +1454 -0
  43. data/rbi/telnyx/models/{ai_create_response_params.rbi → ai_create_response_deprecated_params.rbi} +5 -2
  44. data/rbi/telnyx/models/{ai_create_response_response.rbi → ai_create_response_deprecated_response.rbi} +1 -1
  45. data/rbi/telnyx/models/call_dial_params.rbi +661 -13
  46. data/rbi/telnyx/models/calls/action_answer_params.rbi +659 -13
  47. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +30 -5
  48. data/rbi/telnyx/models/calls/action_speak_params.rbi +30 -5
  49. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +1016 -17
  50. data/rbi/telnyx/models/calls/transcription_start_request.rbi +433 -10
  51. data/rbi/telnyx/models/conferences/action_speak_params.rbi +30 -5
  52. data/rbi/telnyx/models/messaging_profile_update_params.rbi +8 -0
  53. data/rbi/telnyx/models/sip_registration_status_retrieve_params.rbi +93 -0
  54. data/rbi/telnyx/models/sip_registration_status_retrieve_response.rbi +343 -0
  55. data/rbi/telnyx/models/speech_to_text_list_providers_params.rbi +27 -7
  56. data/rbi/telnyx/models/speech_to_text_list_providers_response.rbi +107 -43
  57. data/rbi/telnyx/models/voice_sdk_call_report_list_response.rbi +294 -9
  58. data/rbi/telnyx/models/voice_sdk_call_report_retrieve_response.rbi +294 -9
  59. data/rbi/telnyx/models/whatsapp/user_data_retrieve_response.rbi +96 -6
  60. data/rbi/telnyx/models/whatsapp/user_data_update_response.rbi +94 -6
  61. data/rbi/telnyx/models.rbi +5 -10
  62. data/rbi/telnyx/resources/ai/assistants/versions.rbi +8 -0
  63. data/rbi/telnyx/resources/ai/assistants.rbi +16 -0
  64. data/rbi/telnyx/resources/ai.rbi +1 -1
  65. data/rbi/telnyx/resources/calls/actions.rbi +10 -7
  66. data/rbi/telnyx/resources/conferences/actions.rbi +1 -1
  67. data/rbi/telnyx/resources/messaging_profiles.rbi +3 -0
  68. data/rbi/telnyx/resources/sip_registration_status.rbi +34 -0
  69. data/rbi/telnyx/resources/speech_to_text.rbi +11 -5
  70. data/sig/telnyx/client.rbs +2 -0
  71. data/sig/telnyx/models/ai/assistant_create_params.rbs +508 -0
  72. data/sig/telnyx/models/ai/assistant_update_params.rbs +508 -0
  73. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +511 -0
  74. data/sig/telnyx/models/ai/inference_embedding.rbs +526 -0
  75. data/sig/telnyx/models/{ai_create_response_params.rbs → ai_create_response_deprecated_params.rbs} +2 -2
  76. data/sig/telnyx/models/ai_create_response_deprecated_response.rbs +7 -0
  77. data/sig/telnyx/models/call_dial_params.rbs +236 -13
  78. data/sig/telnyx/models/calls/action_answer_params.rbs +236 -13
  79. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +11 -1
  80. data/sig/telnyx/models/calls/action_speak_params.rbs +11 -1
  81. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +370 -19
  82. data/sig/telnyx/models/calls/transcription_start_request.rbs +175 -2
  83. data/sig/telnyx/models/conferences/action_speak_params.rbs +11 -1
  84. data/sig/telnyx/models/messaging_profile_update_params.rbs +5 -0
  85. data/sig/telnyx/models/sip_registration_status_retrieve_params.rbs +41 -0
  86. data/sig/telnyx/models/sip_registration_status_retrieve_response.rbs +164 -0
  87. data/sig/telnyx/models/speech_to_text_list_providers_params.rbs +4 -4
  88. data/sig/telnyx/models/speech_to_text_list_providers_response.rbs +33 -16
  89. data/sig/telnyx/models/voice_sdk_call_report_list_response.rbs +121 -8
  90. data/sig/telnyx/models/voice_sdk_call_report_retrieve_response.rbs +121 -8
  91. data/sig/telnyx/models/whatsapp/user_data_retrieve_response.rbs +57 -6
  92. data/sig/telnyx/models/whatsapp/user_data_update_response.rbs +57 -6
  93. data/sig/telnyx/models.rbs +3 -9
  94. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  95. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  96. data/sig/telnyx/resources/ai.rbs +2 -2
  97. data/sig/telnyx/resources/calls/actions.rbs +2 -2
  98. data/sig/telnyx/resources/messaging_profiles.rbs +1 -0
  99. data/sig/telnyx/resources/sip_registration_status.rbs +13 -0
  100. metadata +17 -29
  101. data/lib/telnyx/models/calls/transcription_engine_soniox_config.rb +0 -91
  102. data/lib/telnyx/models/calls/transcription_engine_speechmatics_config.rb +0 -100
  103. data/lib/telnyx/models/conversation_relay_interruption_settings.rb +0 -105
  104. data/lib/telnyx/models/conversation_relay_language.rb +0 -141
  105. data/lib/telnyx/models/inworld_voice_settings.rb +0 -28
  106. data/lib/telnyx/models/voice_sdk_call_report_log_entry.rb +0 -57
  107. data/lib/telnyx/models/whatsapp/whatsapp_user_data.rb +0 -49
  108. data/rbi/telnyx/models/calls/transcription_engine_soniox_config.rbi +0 -184
  109. data/rbi/telnyx/models/calls/transcription_engine_speechmatics_config.rbi +0 -289
  110. data/rbi/telnyx/models/conversation_relay_interruption_settings.rbi +0 -271
  111. data/rbi/telnyx/models/conversation_relay_language.rbi +0 -309
  112. data/rbi/telnyx/models/inworld_voice_settings.rbi +0 -53
  113. data/rbi/telnyx/models/voice_sdk_call_report_log_entry.rbi +0 -108
  114. data/rbi/telnyx/models/whatsapp/whatsapp_user_data.rbi +0 -82
  115. data/sig/telnyx/models/ai_create_response_response.rbs +0 -7
  116. data/sig/telnyx/models/calls/transcription_engine_soniox_config.rbs +0 -79
  117. data/sig/telnyx/models/calls/transcription_engine_speechmatics_config.rbs +0 -114
  118. data/sig/telnyx/models/conversation_relay_interruption_settings.rbs +0 -88
  119. data/sig/telnyx/models/conversation_relay_language.rbs +0 -121
  120. data/sig/telnyx/models/inworld_voice_settings.rbs +0 -26
  121. data/sig/telnyx/models/voice_sdk_call_report_log_entry.rbs +0 -58
  122. data/sig/telnyx/models/whatsapp/whatsapp_user_data.rbs +0 -54
@@ -6,6 +6,7 @@ module Telnyx
6
6
  module Assistants
7
7
  type update_assistant =
8
8
  {
9
+ conversation_flow: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow,
9
10
  description: String,
10
11
  dynamic_variables: ::Hash[Symbol, top],
11
12
  dynamic_variables_webhook_timeout_ms: Integer,
@@ -37,6 +38,12 @@ module Telnyx
37
38
  }
38
39
 
39
40
  class UpdateAssistant < Telnyx::Internal::Type::BaseModel
41
+ attr_reader conversation_flow: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow?
42
+
43
+ def conversation_flow=: (
44
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow
45
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow
46
+
40
47
  attr_reader description: String?
41
48
 
42
49
  def description=: (String) -> String
@@ -182,6 +189,7 @@ module Telnyx
182
189
  ) -> Telnyx::AI::WidgetSettings
183
190
 
184
191
  def initialize: (
192
+ ?conversation_flow: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow,
185
193
  ?description: String,
186
194
  ?dynamic_variables: ::Hash[Symbol, top],
187
195
  ?dynamic_variables_webhook_timeout_ms: Integer,
@@ -213,6 +221,7 @@ module Telnyx
213
221
  ) -> void
214
222
 
215
223
  def to_hash: -> {
224
+ conversation_flow: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow,
216
225
  description: String,
217
226
  dynamic_variables: ::Hash[Symbol, top],
218
227
  dynamic_variables_webhook_timeout_ms: Integer,
@@ -242,6 +251,508 @@ module Telnyx
242
251
  voice_settings: Telnyx::AI::VoiceSettings,
243
252
  widget_settings: Telnyx::AI::WidgetSettings
244
253
  }
254
+
255
+ type conversation_flow =
256
+ {
257
+ nodes: ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::node],
258
+ start_node_id: String,
259
+ edges: ::Array[Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge]
260
+ }
261
+
262
+ class ConversationFlow < Telnyx::Internal::Type::BaseModel
263
+ attr_accessor nodes: ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::node]
264
+
265
+ attr_accessor start_node_id: String
266
+
267
+ attr_reader edges: ::Array[Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge]?
268
+
269
+ def edges=: (
270
+ ::Array[Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge]
271
+ ) -> ::Array[Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge]
272
+
273
+ def initialize: (
274
+ nodes: ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::node],
275
+ start_node_id: String,
276
+ ?edges: ::Array[Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge]
277
+ ) -> void
278
+
279
+ def to_hash: -> {
280
+ nodes: ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::node],
281
+ start_node_id: String,
282
+ edges: ::Array[Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge]
283
+ }
284
+
285
+ type node =
286
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt
287
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool
288
+
289
+ module Node
290
+ extend Telnyx::Internal::Type::Union
291
+
292
+ type prompt =
293
+ {
294
+ id: String,
295
+ instructions: String,
296
+ external_llm: Telnyx::AI::ExternalLlmReq,
297
+ instructions_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode,
298
+ llm_api_key_ref: String,
299
+ model: String,
300
+ name: String,
301
+ position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::Position,
302
+ shared_tool_ids: ::Array[String],
303
+ tools_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode,
304
+ transcription: Telnyx::AI::TranscriptionSettings,
305
+ type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_,
306
+ voice_settings: Telnyx::AI::VoiceSettings
307
+ }
308
+
309
+ class Prompt < Telnyx::Internal::Type::BaseModel
310
+ attr_accessor id: String
311
+
312
+ attr_accessor instructions: String
313
+
314
+ attr_reader external_llm: Telnyx::AI::ExternalLlmReq?
315
+
316
+ def external_llm=: (
317
+ Telnyx::AI::ExternalLlmReq
318
+ ) -> Telnyx::AI::ExternalLlmReq
319
+
320
+ attr_reader instructions_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode?
321
+
322
+ def instructions_mode=: (
323
+ Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode
324
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode
325
+
326
+ attr_reader llm_api_key_ref: String?
327
+
328
+ def llm_api_key_ref=: (String) -> String
329
+
330
+ attr_reader model: String?
331
+
332
+ def model=: (String) -> String
333
+
334
+ attr_reader name: String?
335
+
336
+ def name=: (String) -> String
337
+
338
+ attr_reader position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::Position?
339
+
340
+ def position=: (
341
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::Position
342
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::Position
343
+
344
+ attr_reader shared_tool_ids: ::Array[String]?
345
+
346
+ def shared_tool_ids=: (::Array[String]) -> ::Array[String]
347
+
348
+ attr_reader tools_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode?
349
+
350
+ def tools_mode=: (
351
+ Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode
352
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode
353
+
354
+ attr_reader transcription: Telnyx::AI::TranscriptionSettings?
355
+
356
+ def transcription=: (
357
+ Telnyx::AI::TranscriptionSettings
358
+ ) -> Telnyx::AI::TranscriptionSettings
359
+
360
+ attr_reader type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_?
361
+
362
+ def type=: (
363
+ Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_
364
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_
365
+
366
+ attr_reader voice_settings: Telnyx::AI::VoiceSettings?
367
+
368
+ def voice_settings=: (
369
+ Telnyx::AI::VoiceSettings
370
+ ) -> Telnyx::AI::VoiceSettings
371
+
372
+ def initialize: (
373
+ id: String,
374
+ instructions: String,
375
+ ?external_llm: Telnyx::AI::ExternalLlmReq,
376
+ ?instructions_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode,
377
+ ?llm_api_key_ref: String,
378
+ ?model: String,
379
+ ?name: String,
380
+ ?position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::Position,
381
+ ?shared_tool_ids: ::Array[String],
382
+ ?tools_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode,
383
+ ?transcription: Telnyx::AI::TranscriptionSettings,
384
+ ?type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_,
385
+ ?voice_settings: Telnyx::AI::VoiceSettings
386
+ ) -> void
387
+
388
+ def to_hash: -> {
389
+ id: String,
390
+ instructions: String,
391
+ external_llm: Telnyx::AI::ExternalLlmReq,
392
+ instructions_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode,
393
+ llm_api_key_ref: String,
394
+ model: String,
395
+ name: String,
396
+ position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::Position,
397
+ shared_tool_ids: ::Array[String],
398
+ tools_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode,
399
+ transcription: Telnyx::AI::TranscriptionSettings,
400
+ type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_,
401
+ voice_settings: Telnyx::AI::VoiceSettings
402
+ }
403
+
404
+ type instructions_mode = :replace | :append
405
+
406
+ module InstructionsMode
407
+ extend Telnyx::Internal::Type::Enum
408
+
409
+ REPLACE: :replace
410
+ APPEND: :append
411
+
412
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::instructions_mode]
413
+ end
414
+
415
+ type position = { x: Float, y_: Float }
416
+
417
+ class Position < Telnyx::Internal::Type::BaseModel
418
+ attr_accessor x: Float
419
+
420
+ attr_accessor y_: Float
421
+
422
+ def initialize: (x: Float, y_: Float) -> void
423
+
424
+ def to_hash: -> { x: Float, y_: Float }
425
+ end
426
+
427
+ type tools_mode = :replace | :append
428
+
429
+ module ToolsMode
430
+ extend Telnyx::Internal::Type::Enum
431
+
432
+ REPLACE: :replace
433
+ APPEND: :append
434
+
435
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::tools_mode]
436
+ end
437
+
438
+ type type_ = :prompt
439
+
440
+ module Type
441
+ extend Telnyx::Internal::Type::Enum
442
+
443
+ PROMPT: :prompt
444
+
445
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Prompt::type_]
446
+ end
447
+ end
448
+
449
+ type tool =
450
+ {
451
+ id: String,
452
+ shared_tool_id: String,
453
+ name: String,
454
+ position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::Position,
455
+ type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_
456
+ }
457
+
458
+ class Tool < Telnyx::Internal::Type::BaseModel
459
+ attr_accessor id: String
460
+
461
+ attr_accessor shared_tool_id: String
462
+
463
+ attr_reader name: String?
464
+
465
+ def name=: (String) -> String
466
+
467
+ attr_reader position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::Position?
468
+
469
+ def position=: (
470
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::Position
471
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::Position
472
+
473
+ attr_reader type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_?
474
+
475
+ def type=: (
476
+ Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_
477
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_
478
+
479
+ def initialize: (
480
+ id: String,
481
+ shared_tool_id: String,
482
+ ?name: String,
483
+ ?position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::Position,
484
+ ?type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_
485
+ ) -> void
486
+
487
+ def to_hash: -> {
488
+ id: String,
489
+ shared_tool_id: String,
490
+ name: String,
491
+ position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::Position,
492
+ type: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_
493
+ }
494
+
495
+ type position = { x: Float, y_: Float }
496
+
497
+ class Position < Telnyx::Internal::Type::BaseModel
498
+ attr_accessor x: Float
499
+
500
+ attr_accessor y_: Float
501
+
502
+ def initialize: (x: Float, y_: Float) -> void
503
+
504
+ def to_hash: -> { x: Float, y_: Float }
505
+ end
506
+
507
+ type type_ = :tool
508
+
509
+ module Type
510
+ extend Telnyx::Internal::Type::Enum
511
+
512
+ TOOL: :tool
513
+
514
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Node::Tool::type_]
515
+ end
516
+ end
517
+
518
+ def self?.variants: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::node]
519
+ end
520
+
521
+ type edge =
522
+ {
523
+ id: String,
524
+ condition: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::condition,
525
+ start_node_id: String,
526
+ target: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::target
527
+ }
528
+
529
+ class Edge < Telnyx::Internal::Type::BaseModel
530
+ attr_accessor id: String
531
+
532
+ attr_accessor condition: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::condition
533
+
534
+ attr_accessor start_node_id: String
535
+
536
+ attr_accessor target: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::target
537
+
538
+ def initialize: (
539
+ id: String,
540
+ condition: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::condition,
541
+ start_node_id: String,
542
+ target: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::target
543
+ ) -> void
544
+
545
+ def to_hash: -> {
546
+ id: String,
547
+ condition: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::condition,
548
+ start_node_id: String,
549
+ target: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::target
550
+ }
551
+
552
+ type condition =
553
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Llm
554
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression
555
+
556
+ module Condition
557
+ extend Telnyx::Internal::Type::Union
558
+
559
+ type llm = { prompt: String, type: :llm }
560
+
561
+ class Llm < Telnyx::Internal::Type::BaseModel
562
+ attr_accessor prompt: String
563
+
564
+ attr_accessor type: :llm
565
+
566
+ def initialize: (prompt: String, ?type: :llm) -> void
567
+
568
+ def to_hash: -> { prompt: String, type: :llm }
569
+ end
570
+
571
+ type expression =
572
+ {
573
+ expression: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::expression,
574
+ type: :expression
575
+ }
576
+
577
+ class Expression < Telnyx::Internal::Type::BaseModel
578
+ attr_accessor expression: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::expression
579
+
580
+ attr_accessor type: :expression
581
+
582
+ def initialize: (
583
+ expression: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::expression,
584
+ ?type: :expression
585
+ ) -> void
586
+
587
+ def to_hash: -> {
588
+ expression: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::expression,
589
+ type: :expression
590
+ }
591
+
592
+ type expression =
593
+ top
594
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::Expression::DynamicVariableExpression
595
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::Expression::StringLiteralExpression
596
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::Expression::NumberLiteralExpression
597
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::Expression::BooleanLiteralExpression
598
+
599
+ module Expression
600
+ extend Telnyx::Internal::Type::Union
601
+
602
+ type dynamic_variable_expression =
603
+ { name: String, type: :variable }
604
+
605
+ class DynamicVariableExpression < Telnyx::Internal::Type::BaseModel
606
+ attr_accessor name: String
607
+
608
+ attr_accessor type: :variable
609
+
610
+ def initialize: (name: String, ?type: :variable) -> void
611
+
612
+ def to_hash: -> { name: String, type: :variable }
613
+ end
614
+
615
+ type string_literal_expression =
616
+ { type: :string_literal, value: String }
617
+
618
+ class StringLiteralExpression < Telnyx::Internal::Type::BaseModel
619
+ attr_accessor type: :string_literal
620
+
621
+ attr_accessor value: String
622
+
623
+ def initialize: (
624
+ value: String,
625
+ ?type: :string_literal
626
+ ) -> void
627
+
628
+ def to_hash: -> { type: :string_literal, value: String }
629
+ end
630
+
631
+ type number_literal_expression =
632
+ { type: :number_literal, value: Float }
633
+
634
+ class NumberLiteralExpression < Telnyx::Internal::Type::BaseModel
635
+ attr_accessor type: :number_literal
636
+
637
+ attr_accessor value: Float
638
+
639
+ def initialize: (
640
+ value: Float,
641
+ ?type: :number_literal
642
+ ) -> void
643
+
644
+ def to_hash: -> { type: :number_literal, value: Float }
645
+ end
646
+
647
+ type boolean_literal_expression =
648
+ { type: :bool_literal, value: bool }
649
+
650
+ class BooleanLiteralExpression < Telnyx::Internal::Type::BaseModel
651
+ attr_accessor type: :bool_literal
652
+
653
+ attr_accessor value: bool
654
+
655
+ def initialize: (
656
+ value: bool,
657
+ ?type: :bool_literal
658
+ ) -> void
659
+
660
+ def to_hash: -> { type: :bool_literal, value: bool }
661
+ end
662
+
663
+ def self?.variants: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Condition::Expression::expression]
664
+ end
665
+ end
666
+
667
+ def self?.variants: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::condition]
668
+ end
669
+
670
+ type target =
671
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Node
672
+ | Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant
673
+
674
+ module Target
675
+ extend Telnyx::Internal::Type::Union
676
+
677
+ type node = { node_id: String, type: :node }
678
+
679
+ class Node < Telnyx::Internal::Type::BaseModel
680
+ attr_accessor node_id: String
681
+
682
+ attr_accessor type: :node
683
+
684
+ def initialize: (node_id: String, ?type: :node) -> void
685
+
686
+ def to_hash: -> { node_id: String, type: :node }
687
+ end
688
+
689
+ type assistant =
690
+ {
691
+ assistant_id: String,
692
+ type: :assistant,
693
+ position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::Position,
694
+ voice_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode
695
+ }
696
+
697
+ class Assistant < Telnyx::Internal::Type::BaseModel
698
+ attr_accessor assistant_id: String
699
+
700
+ attr_accessor type: :assistant
701
+
702
+ attr_reader position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::Position?
703
+
704
+ def position=: (
705
+ Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::Position
706
+ ) -> Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::Position
707
+
708
+ attr_reader voice_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode?
709
+
710
+ def voice_mode=: (
711
+ Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode
712
+ ) -> Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode
713
+
714
+ def initialize: (
715
+ assistant_id: String,
716
+ ?position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::Position,
717
+ ?voice_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode,
718
+ ?type: :assistant
719
+ ) -> void
720
+
721
+ def to_hash: -> {
722
+ assistant_id: String,
723
+ type: :assistant,
724
+ position: Telnyx::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::Position,
725
+ voice_mode: Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode
726
+ }
727
+
728
+ type position = { x: Float, y_: Float }
729
+
730
+ class Position < Telnyx::Internal::Type::BaseModel
731
+ attr_accessor x: Float
732
+
733
+ attr_accessor y_: Float
734
+
735
+ def initialize: (x: Float, y_: Float) -> void
736
+
737
+ def to_hash: -> { x: Float, y_: Float }
738
+ end
739
+
740
+ type voice_mode = :unified | :distinct
741
+
742
+ module VoiceMode
743
+ extend Telnyx::Internal::Type::Enum
744
+
745
+ UNIFIED: :unified
746
+ DISTINCT: :distinct
747
+
748
+ def self?.values: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::Target::Assistant::voice_mode]
749
+ end
750
+ end
751
+
752
+ def self?.variants: -> ::Array[Telnyx::Models::AI::Assistants::UpdateAssistant::ConversationFlow::Edge::target]
753
+ end
754
+ end
755
+ end
245
756
  end
246
757
  end
247
758
  end