telnyx 5.122.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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -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/messaging_profile_update_params.rb +9 -1
  12. data/lib/telnyx/models/sip_registration_status_retrieve_params.rb +45 -0
  13. data/lib/telnyx/models/sip_registration_status_retrieve_response.rb +160 -0
  14. data/lib/telnyx/models/speech_to_text_list_providers_params.rb +16 -5
  15. data/lib/telnyx/models/speech_to_text_list_providers_response.rb +55 -23
  16. data/lib/telnyx/models.rb +3 -1
  17. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  18. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  19. data/lib/telnyx/resources/ai.rb +4 -4
  20. data/lib/telnyx/resources/messaging_profiles.rb +3 -1
  21. data/lib/telnyx/resources/sip_registration_status.rb +45 -0
  22. data/lib/telnyx/resources/speech_to_text.rb +6 -5
  23. data/lib/telnyx/version.rb +1 -1
  24. data/lib/telnyx.rb +5 -2
  25. data/rbi/telnyx/client.rbi +4 -0
  26. data/rbi/telnyx/models/ai/assistant_create_params.rbi +1411 -0
  27. data/rbi/telnyx/models/ai/assistant_update_params.rbi +1411 -0
  28. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +1417 -0
  29. data/rbi/telnyx/models/ai/inference_embedding.rbi +1454 -0
  30. data/rbi/telnyx/models/{ai_create_response_params.rbi → ai_create_response_deprecated_params.rbi} +5 -2
  31. data/rbi/telnyx/models/{ai_create_response_response.rbi → ai_create_response_deprecated_response.rbi} +1 -1
  32. data/rbi/telnyx/models/messaging_profile_update_params.rbi +8 -0
  33. data/rbi/telnyx/models/sip_registration_status_retrieve_params.rbi +93 -0
  34. data/rbi/telnyx/models/sip_registration_status_retrieve_response.rbi +343 -0
  35. data/rbi/telnyx/models/speech_to_text_list_providers_params.rbi +27 -7
  36. data/rbi/telnyx/models/speech_to_text_list_providers_response.rbi +107 -43
  37. data/rbi/telnyx/models.rbi +5 -1
  38. data/rbi/telnyx/resources/ai/assistants/versions.rbi +8 -0
  39. data/rbi/telnyx/resources/ai/assistants.rbi +16 -0
  40. data/rbi/telnyx/resources/ai.rbi +1 -1
  41. data/rbi/telnyx/resources/messaging_profiles.rbi +3 -0
  42. data/rbi/telnyx/resources/sip_registration_status.rbi +34 -0
  43. data/rbi/telnyx/resources/speech_to_text.rbi +11 -5
  44. data/sig/telnyx/client.rbs +2 -0
  45. data/sig/telnyx/models/ai/assistant_create_params.rbs +508 -0
  46. data/sig/telnyx/models/ai/assistant_update_params.rbs +508 -0
  47. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +511 -0
  48. data/sig/telnyx/models/ai/inference_embedding.rbs +526 -0
  49. data/sig/telnyx/models/{ai_create_response_params.rbs → ai_create_response_deprecated_params.rbs} +2 -2
  50. data/sig/telnyx/models/ai_create_response_deprecated_response.rbs +7 -0
  51. data/sig/telnyx/models/messaging_profile_update_params.rbs +5 -0
  52. data/sig/telnyx/models/sip_registration_status_retrieve_params.rbs +41 -0
  53. data/sig/telnyx/models/sip_registration_status_retrieve_response.rbs +164 -0
  54. data/sig/telnyx/models/speech_to_text_list_providers_params.rbs +4 -4
  55. data/sig/telnyx/models/speech_to_text_list_providers_response.rbs +33 -16
  56. data/sig/telnyx/models.rbs +3 -1
  57. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  58. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  59. data/sig/telnyx/resources/ai.rbs +2 -2
  60. data/sig/telnyx/resources/messaging_profiles.rbs +1 -0
  61. data/sig/telnyx/resources/sip_registration_status.rbs +13 -0
  62. metadata +17 -8
  63. data/sig/telnyx/models/ai_create_response_response.rbs +0 -7
@@ -4,6 +4,7 @@ module Telnyx
4
4
  type assistant_update_params =
5
5
  {
6
6
  assistant_id: String,
7
+ conversation_flow: Telnyx::AI::AssistantUpdateParams::ConversationFlow,
7
8
  description: String,
8
9
  dynamic_variables: ::Hash[Symbol, top],
9
10
  dynamic_variables_webhook_timeout_ms: Integer,
@@ -42,6 +43,12 @@ module Telnyx
42
43
 
43
44
  attr_accessor assistant_id: String
44
45
 
46
+ attr_reader conversation_flow: Telnyx::AI::AssistantUpdateParams::ConversationFlow?
47
+
48
+ def conversation_flow=: (
49
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow
50
+ ) -> Telnyx::AI::AssistantUpdateParams::ConversationFlow
51
+
45
52
  attr_reader description: String?
46
53
 
47
54
  def description=: (String) -> String
@@ -192,6 +199,7 @@ module Telnyx
192
199
 
193
200
  def initialize: (
194
201
  assistant_id: String,
202
+ ?conversation_flow: Telnyx::AI::AssistantUpdateParams::ConversationFlow,
195
203
  ?description: String,
196
204
  ?dynamic_variables: ::Hash[Symbol, top],
197
205
  ?dynamic_variables_webhook_timeout_ms: Integer,
@@ -226,6 +234,7 @@ module Telnyx
226
234
 
227
235
  def to_hash: -> {
228
236
  assistant_id: String,
237
+ conversation_flow: Telnyx::AI::AssistantUpdateParams::ConversationFlow,
229
238
  description: String,
230
239
  dynamic_variables: ::Hash[Symbol, top],
231
240
  dynamic_variables_webhook_timeout_ms: Integer,
@@ -257,6 +266,505 @@ module Telnyx
257
266
  widget_settings: Telnyx::AI::WidgetSettings,
258
267
  request_options: Telnyx::RequestOptions
259
268
  }
269
+
270
+ type conversation_flow =
271
+ {
272
+ nodes: ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::node],
273
+ start_node_id: String,
274
+ edges: ::Array[Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge]
275
+ }
276
+
277
+ class ConversationFlow < Telnyx::Internal::Type::BaseModel
278
+ attr_accessor nodes: ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::node]
279
+
280
+ attr_accessor start_node_id: String
281
+
282
+ attr_reader edges: ::Array[Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge]?
283
+
284
+ def edges=: (
285
+ ::Array[Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge]
286
+ ) -> ::Array[Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge]
287
+
288
+ def initialize: (
289
+ nodes: ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::node],
290
+ start_node_id: String,
291
+ ?edges: ::Array[Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge]
292
+ ) -> void
293
+
294
+ def to_hash: -> {
295
+ nodes: ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::node],
296
+ start_node_id: String,
297
+ edges: ::Array[Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge]
298
+ }
299
+
300
+ type node =
301
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt
302
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool
303
+
304
+ module Node
305
+ extend Telnyx::Internal::Type::Union
306
+
307
+ type prompt =
308
+ {
309
+ id: String,
310
+ instructions: String,
311
+ external_llm: Telnyx::AI::ExternalLlmReq,
312
+ instructions_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode,
313
+ llm_api_key_ref: String,
314
+ model: String,
315
+ name: String,
316
+ position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::Position,
317
+ shared_tool_ids: ::Array[String],
318
+ tools_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode,
319
+ transcription: Telnyx::AI::TranscriptionSettings,
320
+ type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_,
321
+ voice_settings: Telnyx::AI::VoiceSettings
322
+ }
323
+
324
+ class Prompt < Telnyx::Internal::Type::BaseModel
325
+ attr_accessor id: String
326
+
327
+ attr_accessor instructions: String
328
+
329
+ attr_reader external_llm: Telnyx::AI::ExternalLlmReq?
330
+
331
+ def external_llm=: (
332
+ Telnyx::AI::ExternalLlmReq
333
+ ) -> Telnyx::AI::ExternalLlmReq
334
+
335
+ attr_reader instructions_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode?
336
+
337
+ def instructions_mode=: (
338
+ Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode
339
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode
340
+
341
+ attr_reader llm_api_key_ref: String?
342
+
343
+ def llm_api_key_ref=: (String) -> String
344
+
345
+ attr_reader model: String?
346
+
347
+ def model=: (String) -> String
348
+
349
+ attr_reader name: String?
350
+
351
+ def name=: (String) -> String
352
+
353
+ attr_reader position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::Position?
354
+
355
+ def position=: (
356
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::Position
357
+ ) -> Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::Position
358
+
359
+ attr_reader shared_tool_ids: ::Array[String]?
360
+
361
+ def shared_tool_ids=: (::Array[String]) -> ::Array[String]
362
+
363
+ attr_reader tools_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode?
364
+
365
+ def tools_mode=: (
366
+ Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode
367
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode
368
+
369
+ attr_reader transcription: Telnyx::AI::TranscriptionSettings?
370
+
371
+ def transcription=: (
372
+ Telnyx::AI::TranscriptionSettings
373
+ ) -> Telnyx::AI::TranscriptionSettings
374
+
375
+ attr_reader type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_?
376
+
377
+ def type=: (
378
+ Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_
379
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_
380
+
381
+ attr_reader voice_settings: Telnyx::AI::VoiceSettings?
382
+
383
+ def voice_settings=: (
384
+ Telnyx::AI::VoiceSettings
385
+ ) -> Telnyx::AI::VoiceSettings
386
+
387
+ def initialize: (
388
+ id: String,
389
+ instructions: String,
390
+ ?external_llm: Telnyx::AI::ExternalLlmReq,
391
+ ?instructions_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode,
392
+ ?llm_api_key_ref: String,
393
+ ?model: String,
394
+ ?name: String,
395
+ ?position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::Position,
396
+ ?shared_tool_ids: ::Array[String],
397
+ ?tools_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode,
398
+ ?transcription: Telnyx::AI::TranscriptionSettings,
399
+ ?type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_,
400
+ ?voice_settings: Telnyx::AI::VoiceSettings
401
+ ) -> void
402
+
403
+ def to_hash: -> {
404
+ id: String,
405
+ instructions: String,
406
+ external_llm: Telnyx::AI::ExternalLlmReq,
407
+ instructions_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode,
408
+ llm_api_key_ref: String,
409
+ model: String,
410
+ name: String,
411
+ position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::Position,
412
+ shared_tool_ids: ::Array[String],
413
+ tools_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode,
414
+ transcription: Telnyx::AI::TranscriptionSettings,
415
+ type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_,
416
+ voice_settings: Telnyx::AI::VoiceSettings
417
+ }
418
+
419
+ type instructions_mode = :replace | :append
420
+
421
+ module InstructionsMode
422
+ extend Telnyx::Internal::Type::Enum
423
+
424
+ REPLACE: :replace
425
+ APPEND: :append
426
+
427
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::instructions_mode]
428
+ end
429
+
430
+ type position = { x: Float, y_: Float }
431
+
432
+ class Position < Telnyx::Internal::Type::BaseModel
433
+ attr_accessor x: Float
434
+
435
+ attr_accessor y_: Float
436
+
437
+ def initialize: (x: Float, y_: Float) -> void
438
+
439
+ def to_hash: -> { x: Float, y_: Float }
440
+ end
441
+
442
+ type tools_mode = :replace | :append
443
+
444
+ module ToolsMode
445
+ extend Telnyx::Internal::Type::Enum
446
+
447
+ REPLACE: :replace
448
+ APPEND: :append
449
+
450
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::tools_mode]
451
+ end
452
+
453
+ type type_ = :prompt
454
+
455
+ module Type
456
+ extend Telnyx::Internal::Type::Enum
457
+
458
+ PROMPT: :prompt
459
+
460
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Prompt::type_]
461
+ end
462
+ end
463
+
464
+ type tool =
465
+ {
466
+ id: String,
467
+ shared_tool_id: String,
468
+ name: String,
469
+ position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::Position,
470
+ type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_
471
+ }
472
+
473
+ class Tool < Telnyx::Internal::Type::BaseModel
474
+ attr_accessor id: String
475
+
476
+ attr_accessor shared_tool_id: String
477
+
478
+ attr_reader name: String?
479
+
480
+ def name=: (String) -> String
481
+
482
+ attr_reader position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::Position?
483
+
484
+ def position=: (
485
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::Position
486
+ ) -> Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::Position
487
+
488
+ attr_reader type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_?
489
+
490
+ def type=: (
491
+ Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_
492
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_
493
+
494
+ def initialize: (
495
+ id: String,
496
+ shared_tool_id: String,
497
+ ?name: String,
498
+ ?position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::Position,
499
+ ?type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_
500
+ ) -> void
501
+
502
+ def to_hash: -> {
503
+ id: String,
504
+ shared_tool_id: String,
505
+ name: String,
506
+ position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::Position,
507
+ type: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_
508
+ }
509
+
510
+ type position = { x: Float, y_: Float }
511
+
512
+ class Position < Telnyx::Internal::Type::BaseModel
513
+ attr_accessor x: Float
514
+
515
+ attr_accessor y_: Float
516
+
517
+ def initialize: (x: Float, y_: Float) -> void
518
+
519
+ def to_hash: -> { x: Float, y_: Float }
520
+ end
521
+
522
+ type type_ = :tool
523
+
524
+ module Type
525
+ extend Telnyx::Internal::Type::Enum
526
+
527
+ TOOL: :tool
528
+
529
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Node::Tool::type_]
530
+ end
531
+ end
532
+
533
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::node]
534
+ end
535
+
536
+ type edge =
537
+ {
538
+ id: String,
539
+ condition: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::condition,
540
+ start_node_id: String,
541
+ target: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::target
542
+ }
543
+
544
+ class Edge < Telnyx::Internal::Type::BaseModel
545
+ attr_accessor id: String
546
+
547
+ attr_accessor condition: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::condition
548
+
549
+ attr_accessor start_node_id: String
550
+
551
+ attr_accessor target: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::target
552
+
553
+ def initialize: (
554
+ id: String,
555
+ condition: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::condition,
556
+ start_node_id: String,
557
+ target: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::target
558
+ ) -> void
559
+
560
+ def to_hash: -> {
561
+ id: String,
562
+ condition: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::condition,
563
+ start_node_id: String,
564
+ target: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::target
565
+ }
566
+
567
+ type condition =
568
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Llm
569
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression
570
+
571
+ module Condition
572
+ extend Telnyx::Internal::Type::Union
573
+
574
+ type llm = { prompt: String, type: :llm }
575
+
576
+ class Llm < Telnyx::Internal::Type::BaseModel
577
+ attr_accessor prompt: String
578
+
579
+ attr_accessor type: :llm
580
+
581
+ def initialize: (prompt: String, ?type: :llm) -> void
582
+
583
+ def to_hash: -> { prompt: String, type: :llm }
584
+ end
585
+
586
+ type expression =
587
+ {
588
+ expression: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::expression,
589
+ type: :expression
590
+ }
591
+
592
+ class Expression < Telnyx::Internal::Type::BaseModel
593
+ attr_accessor expression: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::expression
594
+
595
+ attr_accessor type: :expression
596
+
597
+ def initialize: (
598
+ expression: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::expression,
599
+ ?type: :expression
600
+ ) -> void
601
+
602
+ def to_hash: -> {
603
+ expression: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::expression,
604
+ type: :expression
605
+ }
606
+
607
+ type expression =
608
+ top
609
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::Expression::DynamicVariableExpression
610
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::Expression::StringLiteralExpression
611
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::Expression::NumberLiteralExpression
612
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::Expression::BooleanLiteralExpression
613
+
614
+ module Expression
615
+ extend Telnyx::Internal::Type::Union
616
+
617
+ type dynamic_variable_expression =
618
+ { name: String, type: :variable }
619
+
620
+ class DynamicVariableExpression < Telnyx::Internal::Type::BaseModel
621
+ attr_accessor name: String
622
+
623
+ attr_accessor type: :variable
624
+
625
+ def initialize: (name: String, ?type: :variable) -> void
626
+
627
+ def to_hash: -> { name: String, type: :variable }
628
+ end
629
+
630
+ type string_literal_expression =
631
+ { type: :string_literal, value: String }
632
+
633
+ class StringLiteralExpression < Telnyx::Internal::Type::BaseModel
634
+ attr_accessor type: :string_literal
635
+
636
+ attr_accessor value: String
637
+
638
+ def initialize: (
639
+ value: String,
640
+ ?type: :string_literal
641
+ ) -> void
642
+
643
+ def to_hash: -> { type: :string_literal, value: String }
644
+ end
645
+
646
+ type number_literal_expression =
647
+ { type: :number_literal, value: Float }
648
+
649
+ class NumberLiteralExpression < Telnyx::Internal::Type::BaseModel
650
+ attr_accessor type: :number_literal
651
+
652
+ attr_accessor value: Float
653
+
654
+ def initialize: (
655
+ value: Float,
656
+ ?type: :number_literal
657
+ ) -> void
658
+
659
+ def to_hash: -> { type: :number_literal, value: Float }
660
+ end
661
+
662
+ type boolean_literal_expression =
663
+ { type: :bool_literal, value: bool }
664
+
665
+ class BooleanLiteralExpression < Telnyx::Internal::Type::BaseModel
666
+ attr_accessor type: :bool_literal
667
+
668
+ attr_accessor value: bool
669
+
670
+ def initialize: (value: bool, ?type: :bool_literal) -> void
671
+
672
+ def to_hash: -> { type: :bool_literal, value: bool }
673
+ end
674
+
675
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Condition::Expression::expression]
676
+ end
677
+ end
678
+
679
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::condition]
680
+ end
681
+
682
+ type target =
683
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Node
684
+ | Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant
685
+
686
+ module Target
687
+ extend Telnyx::Internal::Type::Union
688
+
689
+ type node = { node_id: String, type: :node }
690
+
691
+ class Node < Telnyx::Internal::Type::BaseModel
692
+ attr_accessor node_id: String
693
+
694
+ attr_accessor type: :node
695
+
696
+ def initialize: (node_id: String, ?type: :node) -> void
697
+
698
+ def to_hash: -> { node_id: String, type: :node }
699
+ end
700
+
701
+ type assistant =
702
+ {
703
+ assistant_id: String,
704
+ type: :assistant,
705
+ position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::Position,
706
+ voice_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode
707
+ }
708
+
709
+ class Assistant < Telnyx::Internal::Type::BaseModel
710
+ attr_accessor assistant_id: String
711
+
712
+ attr_accessor type: :assistant
713
+
714
+ attr_reader position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::Position?
715
+
716
+ def position=: (
717
+ Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::Position
718
+ ) -> Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::Position
719
+
720
+ attr_reader voice_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode?
721
+
722
+ def voice_mode=: (
723
+ Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode
724
+ ) -> Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode
725
+
726
+ def initialize: (
727
+ assistant_id: String,
728
+ ?position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::Position,
729
+ ?voice_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode,
730
+ ?type: :assistant
731
+ ) -> void
732
+
733
+ def to_hash: -> {
734
+ assistant_id: String,
735
+ type: :assistant,
736
+ position: Telnyx::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::Position,
737
+ voice_mode: Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode
738
+ }
739
+
740
+ type position = { x: Float, y_: Float }
741
+
742
+ class Position < Telnyx::Internal::Type::BaseModel
743
+ attr_accessor x: Float
744
+
745
+ attr_accessor y_: Float
746
+
747
+ def initialize: (x: Float, y_: Float) -> void
748
+
749
+ def to_hash: -> { x: Float, y_: Float }
750
+ end
751
+
752
+ type voice_mode = :unified | :distinct
753
+
754
+ module VoiceMode
755
+ extend Telnyx::Internal::Type::Enum
756
+
757
+ UNIFIED: :unified
758
+ DISTINCT: :distinct
759
+
760
+ def self?.values: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::Target::Assistant::voice_mode]
761
+ end
762
+ end
763
+
764
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantUpdateParams::ConversationFlow::Edge::target]
765
+ end
766
+ end
767
+ end
260
768
  end
261
769
  end
262
770
  end