revox 0.3.0 → 0.4.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +26 -0
- data/README.md +38 -38
- data/lib/revox/models/assistant_clone_response.rb +87 -65
- data/lib/revox/models/assistant_create_params.rb +90 -66
- data/lib/revox/models/assistant_create_response.rb +87 -65
- data/lib/revox/models/assistant_list_response.rb +87 -65
- data/lib/revox/models/assistant_retrieve_response.rb +86 -65
- data/lib/revox/models/assistant_update_params.rb +90 -66
- data/lib/revox/models/assistant_update_response.rb +87 -65
- data/lib/revox/models/call_create_params.rb +117 -90
- data/lib/revox/models/call_create_response.rb +670 -90
- data/lib/revox/models/call_export_params.rb +1 -3
- data/lib/revox/models/call_phone_history_response.rb +0 -3
- data/lib/revox/models/call_retrieve_response.rb +671 -90
- data/lib/revox/models/call_search_params.rb +1 -3
- data/lib/revox/models/call_search_response.rb +670 -90
- data/lib/revox/models/campaign_create_params.rb +7 -57
- data/lib/revox/models/campaign_create_response.rb +108 -119
- data/lib/revox/models/campaign_get_rows_response.rb +672 -90
- data/lib/revox/models/campaign_list_response.rb +108 -119
- data/lib/revox/models/campaign_retrieve_response.rb +108 -119
- data/lib/revox/models/campaign_statistics_response.rb +51 -23
- data/lib/revox/models/campaign_update_params.rb +9 -78
- data/lib/revox/models/campaign_update_response.rb +108 -119
- data/lib/revox/models/phone_number_list_response.rb +87 -65
- data/lib/revox/models/phone_number_update_response.rb +87 -65
- data/lib/revox/models/voice_list_response.rb +1 -0
- data/lib/revox/models/voice_preview_params.rb +1 -0
- data/lib/revox/models/voice_retrieve_params.rb +1 -0
- data/lib/revox/models.rb +0 -2
- data/lib/revox/resources/assistants.rb +10 -10
- data/lib/revox/resources/call.rb +4 -4
- data/lib/revox/resources/campaigns.rb +13 -45
- data/lib/revox/version.rb +1 -1
- data/lib/revox.rb +0 -2
- data/rbi/revox/models/assistant_clone_response.rbi +157 -147
- data/rbi/revox/models/assistant_create_params.rbi +148 -162
- data/rbi/revox/models/assistant_create_response.rbi +157 -147
- data/rbi/revox/models/assistant_list_response.rbi +157 -147
- data/rbi/revox/models/assistant_retrieve_response.rbi +153 -147
- data/rbi/revox/models/assistant_update_params.rbi +148 -162
- data/rbi/revox/models/assistant_update_response.rbi +157 -147
- data/rbi/revox/models/call_create_params.rbi +190 -187
- data/rbi/revox/models/call_create_response.rbi +1138 -227
- data/rbi/revox/models/call_export_params.rbi +5 -15
- data/rbi/revox/models/call_phone_history_response.rbi +0 -15
- data/rbi/revox/models/call_retrieve_response.rbi +1138 -227
- data/rbi/revox/models/call_search_params.rbi +2 -9
- data/rbi/revox/models/call_search_response.rbi +1138 -227
- data/rbi/revox/models/campaign_create_params.rbi +9 -87
- data/rbi/revox/models/campaign_create_response.rbi +188 -266
- data/rbi/revox/models/campaign_get_rows_response.rbi +1138 -225
- data/rbi/revox/models/campaign_list_response.rbi +188 -262
- data/rbi/revox/models/campaign_retrieve_response.rbi +188 -266
- data/rbi/revox/models/campaign_statistics_response.rbi +94 -36
- data/rbi/revox/models/campaign_update_params.rbi +10 -128
- data/rbi/revox/models/campaign_update_response.rbi +188 -266
- data/rbi/revox/models/phone_number_list_response.rbi +157 -147
- data/rbi/revox/models/phone_number_update_response.rbi +157 -147
- data/rbi/revox/models/voice_list_response.rbi +5 -0
- data/rbi/revox/models/voice_preview_params.rbi +2 -0
- data/rbi/revox/models/voice_retrieve_params.rbi +2 -0
- data/rbi/revox/models.rbi +0 -2
- data/rbi/revox/resources/assistants.rbi +40 -22
- data/rbi/revox/resources/call.rbi +7 -4
- data/rbi/revox/resources/campaigns.rbi +12 -44
- data/sig/revox/models/assistant_clone_response.rbs +46 -54
- data/sig/revox/models/assistant_create_params.rbs +39 -58
- data/sig/revox/models/assistant_create_response.rbs +46 -54
- data/sig/revox/models/assistant_list_response.rbs +46 -54
- data/sig/revox/models/assistant_retrieve_response.rbs +46 -54
- data/sig/revox/models/assistant_update_params.rbs +39 -58
- data/sig/revox/models/assistant_update_response.rbs +46 -54
- data/sig/revox/models/call_create_params.rbs +50 -71
- data/sig/revox/models/call_create_response.rbs +468 -77
- data/sig/revox/models/call_export_params.rbs +2 -6
- data/sig/revox/models/call_phone_history_response.rbs +1 -10
- data/sig/revox/models/call_retrieve_response.rbs +468 -77
- data/sig/revox/models/call_search_params.rbs +2 -6
- data/sig/revox/models/call_search_response.rbs +468 -77
- data/sig/revox/models/campaign_create_params.rbs +5 -50
- data/sig/revox/models/campaign_create_response.rbs +62 -98
- data/sig/revox/models/campaign_get_rows_response.rbs +467 -73
- data/sig/revox/models/campaign_list_response.rbs +62 -98
- data/sig/revox/models/campaign_retrieve_response.rbs +62 -98
- data/sig/revox/models/campaign_statistics_response.rbs +55 -24
- data/sig/revox/models/campaign_update_params.rbs +1 -69
- data/sig/revox/models/campaign_update_response.rbs +62 -98
- data/sig/revox/models/phone_number_list_response.rbs +46 -54
- data/sig/revox/models/phone_number_update_response.rbs +46 -54
- data/sig/revox/models/voice_list_response.rbs +2 -1
- data/sig/revox/models/voice_preview_params.rbs +2 -1
- data/sig/revox/models/voice_retrieve_params.rbs +2 -1
- data/sig/revox/models.rbs +0 -2
- data/sig/revox/resources/assistants.rbs +4 -4
- data/sig/revox/resources/call.rbs +1 -1
- data/sig/revox/resources/campaigns.rbs +0 -12
- metadata +2 -8
- data/lib/revox/models/campaign_launch_params.rb +0 -20
- data/lib/revox/models/campaign_launch_response.rb +0 -2030
- data/rbi/revox/models/campaign_launch_params.rbi +0 -33
- data/rbi/revox/models/campaign_launch_response.rbi +0 -4170
- data/sig/revox/models/campaign_launch_params.rbs +0 -20
- data/sig/revox/models/campaign_launch_response.rbs +0 -1694
|
@@ -102,14 +102,6 @@ module Revox
|
|
|
102
102
|
sig { returns(T.nilable(String)) }
|
|
103
103
|
attr_accessor :email_notification_address
|
|
104
104
|
|
|
105
|
-
# The language used for the notification email content. One of "en" or "fr".
|
|
106
|
-
sig do
|
|
107
|
-
returns(
|
|
108
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage::TaggedSymbol
|
|
109
|
-
)
|
|
110
|
-
end
|
|
111
|
-
attr_accessor :email_notification_language
|
|
112
|
-
|
|
113
105
|
# Which call outcomes trigger an email notification. E.g. ["interested",
|
|
114
106
|
# "completed", "none"]. Use "none" when outcome is null.
|
|
115
107
|
sig do
|
|
@@ -145,8 +137,8 @@ module Revox
|
|
|
145
137
|
sig { returns(T.nilable(String)) }
|
|
146
138
|
attr_accessor :from_phone_number
|
|
147
139
|
|
|
148
|
-
# Warm or cold transfer when
|
|
149
|
-
# not configured.
|
|
140
|
+
# Warm or cold transfer when transfer_destinations is non-empty; null when
|
|
141
|
+
# transfer is not configured.
|
|
150
142
|
sig do
|
|
151
143
|
returns(
|
|
152
144
|
T.nilable(
|
|
@@ -203,6 +195,11 @@ module Revox
|
|
|
203
195
|
end
|
|
204
196
|
attr_writer :position
|
|
205
197
|
|
|
198
|
+
# URL fetched before an inbound call is answered to resolve the assistant's prompt
|
|
199
|
+
# variables. Null when no lookup is configured.
|
|
200
|
+
sig { returns(T.nilable(String)) }
|
|
201
|
+
attr_accessor :precall_lookup_url
|
|
202
|
+
|
|
206
203
|
sig { returns(String) }
|
|
207
204
|
attr_accessor :prompt
|
|
208
205
|
|
|
@@ -310,9 +307,18 @@ module Revox
|
|
|
310
307
|
sig { returns(Float) }
|
|
311
308
|
attr_accessor :thinking_sound_volume
|
|
312
309
|
|
|
313
|
-
#
|
|
314
|
-
|
|
315
|
-
|
|
310
|
+
# Where calls can be transferred to when users ask to speak to a human. Null or
|
|
311
|
+
# empty when transfer is not configured.
|
|
312
|
+
sig do
|
|
313
|
+
returns(
|
|
314
|
+
T.nilable(
|
|
315
|
+
T::Array[
|
|
316
|
+
Revox::Models::AssistantRetrieveResponse::TransferDestination
|
|
317
|
+
]
|
|
318
|
+
)
|
|
319
|
+
)
|
|
320
|
+
end
|
|
321
|
+
attr_accessor :transfer_destinations
|
|
316
322
|
|
|
317
323
|
sig do
|
|
318
324
|
returns(Revox::Models::AssistantRetrieveResponse::Type::TaggedSymbol)
|
|
@@ -396,6 +402,12 @@ module Revox
|
|
|
396
402
|
end
|
|
397
403
|
attr_writer :faq_items
|
|
398
404
|
|
|
405
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
406
|
+
attr_reader :is_inbound_receptionist
|
|
407
|
+
|
|
408
|
+
sig { params(is_inbound_receptionist: T::Boolean).void }
|
|
409
|
+
attr_writer :is_inbound_receptionist
|
|
410
|
+
|
|
399
411
|
sig { returns(T.nilable(T::Boolean)) }
|
|
400
412
|
attr_reader :is_realestate_assistant
|
|
401
413
|
|
|
@@ -440,8 +452,6 @@ module Revox
|
|
|
440
452
|
]
|
|
441
453
|
),
|
|
442
454
|
email_notification_address: T.nilable(String),
|
|
443
|
-
email_notification_language:
|
|
444
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage::OrSymbol,
|
|
445
455
|
email_notification_outcomes:
|
|
446
456
|
T.nilable(
|
|
447
457
|
T::Array[
|
|
@@ -475,6 +485,7 @@ module Revox
|
|
|
475
485
|
T.nilable(
|
|
476
486
|
Revox::Models::AssistantRetrieveResponse::Position::OrHash
|
|
477
487
|
),
|
|
488
|
+
precall_lookup_url: T.nilable(String),
|
|
478
489
|
prompt: String,
|
|
479
490
|
prompt_flow:
|
|
480
491
|
T.nilable(
|
|
@@ -503,7 +514,12 @@ module Revox
|
|
|
503
514
|
),
|
|
504
515
|
thinking_sound_probability: Float,
|
|
505
516
|
thinking_sound_volume: Float,
|
|
506
|
-
|
|
517
|
+
transfer_destinations:
|
|
518
|
+
T.nilable(
|
|
519
|
+
T::Array[
|
|
520
|
+
Revox::Models::AssistantRetrieveResponse::TransferDestination::OrHash
|
|
521
|
+
]
|
|
522
|
+
),
|
|
507
523
|
type: Revox::Models::AssistantRetrieveResponse::Type::OrSymbol,
|
|
508
524
|
updated_at: T.anything,
|
|
509
525
|
voice:
|
|
@@ -520,6 +536,7 @@ module Revox
|
|
|
520
536
|
),
|
|
521
537
|
faq_items:
|
|
522
538
|
T::Array[Revox::Models::AssistantRetrieveResponse::FaqItem::OrHash],
|
|
539
|
+
is_inbound_receptionist: T::Boolean,
|
|
523
540
|
is_realestate_assistant: T::Boolean,
|
|
524
541
|
pending_faq_count: Float
|
|
525
542
|
).returns(T.attached_class)
|
|
@@ -548,8 +565,6 @@ module Revox
|
|
|
548
565
|
# outcome. Accepts a single email or a comma-separated list (e.g. "alice@x.com,
|
|
549
566
|
# bob@y.com").
|
|
550
567
|
email_notification_address:,
|
|
551
|
-
# The language used for the notification email content. One of "en" or "fr".
|
|
552
|
-
email_notification_language:,
|
|
553
568
|
# Which call outcomes trigger an email notification. E.g. ["interested",
|
|
554
569
|
# "completed", "none"]. Use "none" when outcome is null.
|
|
555
570
|
email_notification_outcomes:,
|
|
@@ -561,8 +576,8 @@ module Revox
|
|
|
561
576
|
# Override the default outbound phone number for calls placed with this assistant.
|
|
562
577
|
# When null, the organization's default phone number is used.
|
|
563
578
|
from_phone_number:,
|
|
564
|
-
# Warm or cold transfer when
|
|
565
|
-
# not configured.
|
|
579
|
+
# Warm or cold transfer when transfer_destinations is non-empty; null when
|
|
580
|
+
# transfer is not configured.
|
|
566
581
|
human_transfer_mode:,
|
|
567
582
|
# Enable IVR navigation tools. When enabled, the assistant can send DTMF tones and
|
|
568
583
|
# skip turns to navigate phone menus.
|
|
@@ -581,6 +596,9 @@ module Revox
|
|
|
581
596
|
name:,
|
|
582
597
|
organization_id:,
|
|
583
598
|
position:,
|
|
599
|
+
# URL fetched before an inbound call is answered to resolve the assistant's prompt
|
|
600
|
+
# variables. Null when no lookup is configured.
|
|
601
|
+
precall_lookup_url:,
|
|
584
602
|
prompt:,
|
|
585
603
|
prompt_flow:,
|
|
586
604
|
slack:,
|
|
@@ -612,8 +630,9 @@ module Revox
|
|
|
612
630
|
thinking_sound_probability:,
|
|
613
631
|
# Volume of the thinking sound (0 = silent, 1 = max).
|
|
614
632
|
thinking_sound_volume:,
|
|
615
|
-
#
|
|
616
|
-
|
|
633
|
+
# Where calls can be transferred to when users ask to speak to a human. Null or
|
|
634
|
+
# empty when transfer is not configured.
|
|
635
|
+
transfer_destinations:,
|
|
617
636
|
type:,
|
|
618
637
|
updated_at:,
|
|
619
638
|
voice:,
|
|
@@ -632,6 +651,7 @@ module Revox
|
|
|
632
651
|
# The user who created the assistant.
|
|
633
652
|
created_by: nil,
|
|
634
653
|
faq_items: nil,
|
|
654
|
+
is_inbound_receptionist: nil,
|
|
635
655
|
is_realestate_assistant: nil,
|
|
636
656
|
pending_faq_count: nil
|
|
637
657
|
)
|
|
@@ -666,8 +686,6 @@ module Revox
|
|
|
666
686
|
T::Array[Revox::Models::AssistantRetrieveResponse::CustomTool]
|
|
667
687
|
),
|
|
668
688
|
email_notification_address: T.nilable(String),
|
|
669
|
-
email_notification_language:
|
|
670
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage::TaggedSymbol,
|
|
671
689
|
email_notification_outcomes:
|
|
672
690
|
T.nilable(
|
|
673
691
|
T::Array[
|
|
@@ -694,6 +712,7 @@ module Revox
|
|
|
694
712
|
organization_id: String,
|
|
695
713
|
position:
|
|
696
714
|
T.nilable(Revox::Models::AssistantRetrieveResponse::Position),
|
|
715
|
+
precall_lookup_url: T.nilable(String),
|
|
697
716
|
prompt: String,
|
|
698
717
|
prompt_flow:
|
|
699
718
|
T.nilable(Revox::Models::AssistantRetrieveResponse::PromptFlow),
|
|
@@ -717,7 +736,12 @@ module Revox
|
|
|
717
736
|
),
|
|
718
737
|
thinking_sound_probability: Float,
|
|
719
738
|
thinking_sound_volume: Float,
|
|
720
|
-
|
|
739
|
+
transfer_destinations:
|
|
740
|
+
T.nilable(
|
|
741
|
+
T::Array[
|
|
742
|
+
Revox::Models::AssistantRetrieveResponse::TransferDestination
|
|
743
|
+
]
|
|
744
|
+
),
|
|
721
745
|
type: Revox::Models::AssistantRetrieveResponse::Type::TaggedSymbol,
|
|
722
746
|
updated_at: T.anything,
|
|
723
747
|
voice: T.nilable(Revox::Models::AssistantRetrieveResponse::Voice),
|
|
@@ -730,6 +754,7 @@ module Revox
|
|
|
730
754
|
T.nilable(Revox::Models::AssistantRetrieveResponse::CreatedBy),
|
|
731
755
|
faq_items:
|
|
732
756
|
T::Array[Revox::Models::AssistantRetrieveResponse::FaqItem],
|
|
757
|
+
is_inbound_receptionist: T::Boolean,
|
|
733
758
|
is_realestate_assistant: T::Boolean,
|
|
734
759
|
pending_faq_count: Float
|
|
735
760
|
}
|
|
@@ -770,21 +795,6 @@ module Revox
|
|
|
770
795
|
:requested_callback_later,
|
|
771
796
|
Revox::Models::AssistantRetrieveResponse::AfterCallSMSOutcome::TaggedSymbol
|
|
772
797
|
)
|
|
773
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
774
|
-
T.let(
|
|
775
|
-
:requested_callback_new_number,
|
|
776
|
-
Revox::Models::AssistantRetrieveResponse::AfterCallSMSOutcome::TaggedSymbol
|
|
777
|
-
)
|
|
778
|
-
DO_NOT_CONTACT =
|
|
779
|
-
T.let(
|
|
780
|
-
:do_not_contact,
|
|
781
|
-
Revox::Models::AssistantRetrieveResponse::AfterCallSMSOutcome::TaggedSymbol
|
|
782
|
-
)
|
|
783
|
-
AI_AVERSE =
|
|
784
|
-
T.let(
|
|
785
|
-
:ai_averse,
|
|
786
|
-
Revox::Models::AssistantRetrieveResponse::AfterCallSMSOutcome::TaggedSymbol
|
|
787
|
-
)
|
|
788
798
|
NONE =
|
|
789
799
|
T.let(
|
|
790
800
|
:none,
|
|
@@ -1053,7 +1063,8 @@ module Revox
|
|
|
1053
1063
|
sig { returns(String) }
|
|
1054
1064
|
attr_accessor :calling_window_start_time
|
|
1055
1065
|
|
|
1056
|
-
# Delay between retry attempts in seconds.
|
|
1066
|
+
# Delay between retry attempts in seconds. 0 retries as soon as the calling window
|
|
1067
|
+
# allows. Default: 7200 (2 hours).
|
|
1057
1068
|
sig { returns(Integer) }
|
|
1058
1069
|
attr_accessor :retry_delay_seconds
|
|
1059
1070
|
|
|
@@ -1073,7 +1084,8 @@ module Revox
|
|
|
1073
1084
|
# timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
|
|
1074
1085
|
# Examples: '09:00', '10am'. Default: '10:00'.
|
|
1075
1086
|
calling_window_start_time:,
|
|
1076
|
-
# Delay between retry attempts in seconds.
|
|
1087
|
+
# Delay between retry attempts in seconds. 0 retries as soon as the calling window
|
|
1088
|
+
# allows. Default: 7200 (2 hours).
|
|
1077
1089
|
retry_delay_seconds:
|
|
1078
1090
|
)
|
|
1079
1091
|
end
|
|
@@ -1456,41 +1468,6 @@ module Revox
|
|
|
1456
1468
|
end
|
|
1457
1469
|
end
|
|
1458
1470
|
|
|
1459
|
-
# The language used for the notification email content. One of "en" or "fr".
|
|
1460
|
-
module EmailNotificationLanguage
|
|
1461
|
-
extend Revox::Internal::Type::Enum
|
|
1462
|
-
|
|
1463
|
-
TaggedSymbol =
|
|
1464
|
-
T.type_alias do
|
|
1465
|
-
T.all(
|
|
1466
|
-
Symbol,
|
|
1467
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage
|
|
1468
|
-
)
|
|
1469
|
-
end
|
|
1470
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1471
|
-
|
|
1472
|
-
EN =
|
|
1473
|
-
T.let(
|
|
1474
|
-
:en,
|
|
1475
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage::TaggedSymbol
|
|
1476
|
-
)
|
|
1477
|
-
FR =
|
|
1478
|
-
T.let(
|
|
1479
|
-
:fr,
|
|
1480
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage::TaggedSymbol
|
|
1481
|
-
)
|
|
1482
|
-
|
|
1483
|
-
sig do
|
|
1484
|
-
override.returns(
|
|
1485
|
-
T::Array[
|
|
1486
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationLanguage::TaggedSymbol
|
|
1487
|
-
]
|
|
1488
|
-
)
|
|
1489
|
-
end
|
|
1490
|
-
def self.values
|
|
1491
|
-
end
|
|
1492
|
-
end
|
|
1493
|
-
|
|
1494
1471
|
module EmailNotificationOutcome
|
|
1495
1472
|
extend Revox::Internal::Type::Enum
|
|
1496
1473
|
|
|
@@ -1523,21 +1500,6 @@ module Revox
|
|
|
1523
1500
|
:requested_callback_later,
|
|
1524
1501
|
Revox::Models::AssistantRetrieveResponse::EmailNotificationOutcome::TaggedSymbol
|
|
1525
1502
|
)
|
|
1526
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
1527
|
-
T.let(
|
|
1528
|
-
:requested_callback_new_number,
|
|
1529
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationOutcome::TaggedSymbol
|
|
1530
|
-
)
|
|
1531
|
-
DO_NOT_CONTACT =
|
|
1532
|
-
T.let(
|
|
1533
|
-
:do_not_contact,
|
|
1534
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationOutcome::TaggedSymbol
|
|
1535
|
-
)
|
|
1536
|
-
AI_AVERSE =
|
|
1537
|
-
T.let(
|
|
1538
|
-
:ai_averse,
|
|
1539
|
-
Revox::Models::AssistantRetrieveResponse::EmailNotificationOutcome::TaggedSymbol
|
|
1540
|
-
)
|
|
1541
1503
|
NONE =
|
|
1542
1504
|
T.let(
|
|
1543
1505
|
:none,
|
|
@@ -1594,8 +1556,8 @@ module Revox
|
|
|
1594
1556
|
end
|
|
1595
1557
|
end
|
|
1596
1558
|
|
|
1597
|
-
# Warm or cold transfer when
|
|
1598
|
-
# not configured.
|
|
1559
|
+
# Warm or cold transfer when transfer_destinations is non-empty; null when
|
|
1560
|
+
# transfer is not configured.
|
|
1599
1561
|
module HumanTransferMode
|
|
1600
1562
|
extend Revox::Internal::Type::Enum
|
|
1601
1563
|
|
|
@@ -2189,9 +2151,15 @@ module Revox
|
|
|
2189
2151
|
)
|
|
2190
2152
|
end
|
|
2191
2153
|
|
|
2192
|
-
# The Slack
|
|
2193
|
-
|
|
2194
|
-
|
|
2154
|
+
# The Slack channels eligible to receive the notification. When more than one is
|
|
2155
|
+
# configured, the agent prompt may define routing rules to narrow it down per
|
|
2156
|
+
# call; with no such rules every channel here is notified.
|
|
2157
|
+
sig do
|
|
2158
|
+
returns(
|
|
2159
|
+
T::Array[Revox::Models::AssistantRetrieveResponse::Slack::Channel]
|
|
2160
|
+
)
|
|
2161
|
+
end
|
|
2162
|
+
attr_accessor :channels
|
|
2195
2163
|
|
|
2196
2164
|
# The Nango connection ID linking the org's Slack workspace to Revox.
|
|
2197
2165
|
sig { returns(String) }
|
|
@@ -2208,45 +2176,43 @@ module Revox
|
|
|
2208
2176
|
end
|
|
2209
2177
|
attr_accessor :outcomes
|
|
2210
2178
|
|
|
2211
|
-
# Human-readable Slack channel name, cached for display in the UI.
|
|
2212
|
-
sig { returns(T.nilable(String)) }
|
|
2213
|
-
attr_accessor :channel_name
|
|
2214
|
-
|
|
2215
2179
|
# Optional message template. Supports {{summary}}, {{outcome}}, {{phone}},
|
|
2216
2180
|
# {{call_url}}, {{assistant_name}}, {{campaign_name}}, {{first_name}},
|
|
2217
|
-
# {{last_name}}, {{email}}, {{company}}, {{
|
|
2218
|
-
# prompt_variables and structured_output keys. When
|
|
2219
|
-
# is used.
|
|
2181
|
+
# {{last_name}}, {{email}}, {{company}}, {{job_title}}, {{contact_name}},
|
|
2182
|
+
# {{contact_line}}, plus prompt_variables and structured_output keys. When
|
|
2183
|
+
# null/empty a default template is used.
|
|
2220
2184
|
sig { returns(T.nilable(String)) }
|
|
2221
2185
|
attr_accessor :template
|
|
2222
2186
|
|
|
2223
2187
|
sig do
|
|
2224
2188
|
params(
|
|
2225
|
-
|
|
2189
|
+
channels:
|
|
2190
|
+
T::Array[
|
|
2191
|
+
Revox::Models::AssistantRetrieveResponse::Slack::Channel::OrHash
|
|
2192
|
+
],
|
|
2226
2193
|
connection_id: String,
|
|
2227
2194
|
outcomes:
|
|
2228
2195
|
T::Array[
|
|
2229
2196
|
Revox::Models::AssistantRetrieveResponse::Slack::Outcome::OrSymbol
|
|
2230
2197
|
],
|
|
2231
|
-
channel_name: T.nilable(String),
|
|
2232
2198
|
template: T.nilable(String)
|
|
2233
2199
|
).returns(T.attached_class)
|
|
2234
2200
|
end
|
|
2235
2201
|
def self.new(
|
|
2236
|
-
# The Slack
|
|
2237
|
-
|
|
2202
|
+
# The Slack channels eligible to receive the notification. When more than one is
|
|
2203
|
+
# configured, the agent prompt may define routing rules to narrow it down per
|
|
2204
|
+
# call; with no such rules every channel here is notified.
|
|
2205
|
+
channels:,
|
|
2238
2206
|
# The Nango connection ID linking the org's Slack workspace to Revox.
|
|
2239
2207
|
connection_id:,
|
|
2240
2208
|
# Which call outcomes trigger a Slack notification (e.g. ['interested', 'none']).
|
|
2241
2209
|
# Use 'none' to notify when outcome is null.
|
|
2242
2210
|
outcomes:,
|
|
2243
|
-
# Human-readable Slack channel name, cached for display in the UI.
|
|
2244
|
-
channel_name: nil,
|
|
2245
2211
|
# Optional message template. Supports {{summary}}, {{outcome}}, {{phone}},
|
|
2246
2212
|
# {{call_url}}, {{assistant_name}}, {{campaign_name}}, {{first_name}},
|
|
2247
|
-
# {{last_name}}, {{email}}, {{company}}, {{
|
|
2248
|
-
# prompt_variables and structured_output keys. When
|
|
2249
|
-
# is used.
|
|
2213
|
+
# {{last_name}}, {{email}}, {{company}}, {{job_title}}, {{contact_name}},
|
|
2214
|
+
# {{contact_line}}, plus prompt_variables and structured_output keys. When
|
|
2215
|
+
# null/empty a default template is used.
|
|
2250
2216
|
template: nil
|
|
2251
2217
|
)
|
|
2252
2218
|
end
|
|
@@ -2254,13 +2220,15 @@ module Revox
|
|
|
2254
2220
|
sig do
|
|
2255
2221
|
override.returns(
|
|
2256
2222
|
{
|
|
2257
|
-
|
|
2223
|
+
channels:
|
|
2224
|
+
T::Array[
|
|
2225
|
+
Revox::Models::AssistantRetrieveResponse::Slack::Channel
|
|
2226
|
+
],
|
|
2258
2227
|
connection_id: String,
|
|
2259
2228
|
outcomes:
|
|
2260
2229
|
T::Array[
|
|
2261
2230
|
Revox::Models::AssistantRetrieveResponse::Slack::Outcome::TaggedSymbol
|
|
2262
2231
|
],
|
|
2263
|
-
channel_name: T.nilable(String),
|
|
2264
2232
|
template: T.nilable(String)
|
|
2265
2233
|
}
|
|
2266
2234
|
)
|
|
@@ -2268,6 +2236,43 @@ module Revox
|
|
|
2268
2236
|
def to_hash
|
|
2269
2237
|
end
|
|
2270
2238
|
|
|
2239
|
+
class Channel < Revox::Internal::Type::BaseModel
|
|
2240
|
+
OrHash =
|
|
2241
|
+
T.type_alias do
|
|
2242
|
+
T.any(
|
|
2243
|
+
Revox::Models::AssistantRetrieveResponse::Slack::Channel,
|
|
2244
|
+
Revox::Internal::AnyHash
|
|
2245
|
+
)
|
|
2246
|
+
end
|
|
2247
|
+
|
|
2248
|
+
# The Slack channel ID (e.g. 'C01234567').
|
|
2249
|
+
sig { returns(String) }
|
|
2250
|
+
attr_accessor :id
|
|
2251
|
+
|
|
2252
|
+
# Human-readable Slack channel name, cached for display in the UI and given to the
|
|
2253
|
+
# LLM when the agent prompt routes by channel name.
|
|
2254
|
+
sig { returns(T.nilable(String)) }
|
|
2255
|
+
attr_accessor :name
|
|
2256
|
+
|
|
2257
|
+
sig do
|
|
2258
|
+
params(id: String, name: T.nilable(String)).returns(
|
|
2259
|
+
T.attached_class
|
|
2260
|
+
)
|
|
2261
|
+
end
|
|
2262
|
+
def self.new(
|
|
2263
|
+
# The Slack channel ID (e.g. 'C01234567').
|
|
2264
|
+
id:,
|
|
2265
|
+
# Human-readable Slack channel name, cached for display in the UI and given to the
|
|
2266
|
+
# LLM when the agent prompt routes by channel name.
|
|
2267
|
+
name: nil
|
|
2268
|
+
)
|
|
2269
|
+
end
|
|
2270
|
+
|
|
2271
|
+
sig { override.returns({ id: String, name: T.nilable(String) }) }
|
|
2272
|
+
def to_hash
|
|
2273
|
+
end
|
|
2274
|
+
end
|
|
2275
|
+
|
|
2271
2276
|
module Outcome
|
|
2272
2277
|
extend Revox::Internal::Type::Enum
|
|
2273
2278
|
|
|
@@ -2300,21 +2305,6 @@ module Revox
|
|
|
2300
2305
|
:requested_callback_later,
|
|
2301
2306
|
Revox::Models::AssistantRetrieveResponse::Slack::Outcome::TaggedSymbol
|
|
2302
2307
|
)
|
|
2303
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
2304
|
-
T.let(
|
|
2305
|
-
:requested_callback_new_number,
|
|
2306
|
-
Revox::Models::AssistantRetrieveResponse::Slack::Outcome::TaggedSymbol
|
|
2307
|
-
)
|
|
2308
|
-
DO_NOT_CONTACT =
|
|
2309
|
-
T.let(
|
|
2310
|
-
:do_not_contact,
|
|
2311
|
-
Revox::Models::AssistantRetrieveResponse::Slack::Outcome::TaggedSymbol
|
|
2312
|
-
)
|
|
2313
|
-
AI_AVERSE =
|
|
2314
|
-
T.let(
|
|
2315
|
-
:ai_averse,
|
|
2316
|
-
Revox::Models::AssistantRetrieveResponse::Slack::Outcome::TaggedSymbol
|
|
2317
|
-
)
|
|
2318
2308
|
NONE =
|
|
2319
2309
|
T.let(
|
|
2320
2310
|
:none,
|
|
@@ -2624,6 +2614,32 @@ module Revox
|
|
|
2624
2614
|
end
|
|
2625
2615
|
end
|
|
2626
2616
|
|
|
2617
|
+
class TransferDestination < Revox::Internal::Type::BaseModel
|
|
2618
|
+
OrHash =
|
|
2619
|
+
T.type_alias do
|
|
2620
|
+
T.any(
|
|
2621
|
+
Revox::Models::AssistantRetrieveResponse::TransferDestination,
|
|
2622
|
+
Revox::Internal::AnyHash
|
|
2623
|
+
)
|
|
2624
|
+
end
|
|
2625
|
+
|
|
2626
|
+
sig { returns(String) }
|
|
2627
|
+
attr_accessor :label
|
|
2628
|
+
|
|
2629
|
+
sig { returns(String) }
|
|
2630
|
+
attr_accessor :phone_number
|
|
2631
|
+
|
|
2632
|
+
sig do
|
|
2633
|
+
params(label: String, phone_number: String).returns(T.attached_class)
|
|
2634
|
+
end
|
|
2635
|
+
def self.new(label:, phone_number:)
|
|
2636
|
+
end
|
|
2637
|
+
|
|
2638
|
+
sig { override.returns({ label: String, phone_number: String }) }
|
|
2639
|
+
def to_hash
|
|
2640
|
+
end
|
|
2641
|
+
end
|
|
2642
|
+
|
|
2627
2643
|
module Type
|
|
2628
2644
|
extend Revox::Internal::Type::Enum
|
|
2629
2645
|
|
|
@@ -2701,7 +2717,7 @@ module Revox
|
|
|
2701
2717
|
attr_writer :model
|
|
2702
2718
|
|
|
2703
2719
|
# The speed of the voice. Range depends on provider: Cartesia 0.6–1.5, ElevenLabs
|
|
2704
|
-
# 0.7–1.2. Default is 1.0.
|
|
2720
|
+
# 0.7–1.2, Gradium 0.6–1.5. Default is 1.0.
|
|
2705
2721
|
sig { returns(T.nilable(Float)) }
|
|
2706
2722
|
attr_reader :speed
|
|
2707
2723
|
|
|
@@ -2736,7 +2752,7 @@ module Revox
|
|
|
2736
2752
|
# for other providers.
|
|
2737
2753
|
model: nil,
|
|
2738
2754
|
# The speed of the voice. Range depends on provider: Cartesia 0.6–1.5, ElevenLabs
|
|
2739
|
-
# 0.7–1.2. Default is 1.0.
|
|
2755
|
+
# 0.7–1.2, Gradium 0.6–1.5. Default is 1.0.
|
|
2740
2756
|
speed: nil,
|
|
2741
2757
|
# Volume of the voice (Cartesia only). 0.5–2.0, default 1.0. Ignored for other
|
|
2742
2758
|
# providers.
|
|
@@ -2783,6 +2799,11 @@ module Revox
|
|
|
2783
2799
|
:elevenlabs,
|
|
2784
2800
|
Revox::Models::AssistantRetrieveResponse::Voice::Provider::TaggedSymbol
|
|
2785
2801
|
)
|
|
2802
|
+
GRADIUM =
|
|
2803
|
+
T.let(
|
|
2804
|
+
:gradium,
|
|
2805
|
+
Revox::Models::AssistantRetrieveResponse::Voice::Provider::TaggedSymbol
|
|
2806
|
+
)
|
|
2786
2807
|
|
|
2787
2808
|
sig do
|
|
2788
2809
|
override.returns(
|
|
@@ -3011,21 +3032,6 @@ module Revox
|
|
|
3011
3032
|
:requested_callback_later,
|
|
3012
3033
|
Revox::Models::AssistantRetrieveResponse::Zoho::Outcome::TaggedSymbol
|
|
3013
3034
|
)
|
|
3014
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
3015
|
-
T.let(
|
|
3016
|
-
:requested_callback_new_number,
|
|
3017
|
-
Revox::Models::AssistantRetrieveResponse::Zoho::Outcome::TaggedSymbol
|
|
3018
|
-
)
|
|
3019
|
-
DO_NOT_CONTACT =
|
|
3020
|
-
T.let(
|
|
3021
|
-
:do_not_contact,
|
|
3022
|
-
Revox::Models::AssistantRetrieveResponse::Zoho::Outcome::TaggedSymbol
|
|
3023
|
-
)
|
|
3024
|
-
AI_AVERSE =
|
|
3025
|
-
T.let(
|
|
3026
|
-
:ai_averse,
|
|
3027
|
-
Revox::Models::AssistantRetrieveResponse::Zoho::Outcome::TaggedSymbol
|
|
3028
|
-
)
|
|
3029
3035
|
NONE =
|
|
3030
3036
|
T.let(
|
|
3031
3037
|
:none,
|