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
|
@@ -145,14 +145,6 @@ module Revox
|
|
|
145
145
|
sig { returns(T.nilable(String)) }
|
|
146
146
|
attr_accessor :email_notification_address
|
|
147
147
|
|
|
148
|
-
# The language used for the notification email content. One of "en" or "fr".
|
|
149
|
-
sig do
|
|
150
|
-
returns(
|
|
151
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage::TaggedSymbol
|
|
152
|
-
)
|
|
153
|
-
end
|
|
154
|
-
attr_accessor :email_notification_language
|
|
155
|
-
|
|
156
148
|
# Which call outcomes trigger an email notification. E.g. ["interested",
|
|
157
149
|
# "completed", "none"]. Use "none" when outcome is null.
|
|
158
150
|
sig do
|
|
@@ -188,8 +180,8 @@ module Revox
|
|
|
188
180
|
sig { returns(T.nilable(String)) }
|
|
189
181
|
attr_accessor :from_phone_number
|
|
190
182
|
|
|
191
|
-
# Warm or cold transfer when
|
|
192
|
-
# not configured.
|
|
183
|
+
# Warm or cold transfer when transfer_destinations is non-empty; null when
|
|
184
|
+
# transfer is not configured.
|
|
193
185
|
sig do
|
|
194
186
|
returns(
|
|
195
187
|
T.nilable(
|
|
@@ -252,6 +244,11 @@ module Revox
|
|
|
252
244
|
end
|
|
253
245
|
attr_writer :position
|
|
254
246
|
|
|
247
|
+
# URL fetched before an inbound call is answered to resolve the assistant's prompt
|
|
248
|
+
# variables. Null when no lookup is configured.
|
|
249
|
+
sig { returns(T.nilable(String)) }
|
|
250
|
+
attr_accessor :precall_lookup_url
|
|
251
|
+
|
|
255
252
|
sig { returns(String) }
|
|
256
253
|
attr_accessor :prompt
|
|
257
254
|
|
|
@@ -371,9 +368,18 @@ module Revox
|
|
|
371
368
|
sig { returns(Float) }
|
|
372
369
|
attr_accessor :thinking_sound_volume
|
|
373
370
|
|
|
374
|
-
#
|
|
375
|
-
|
|
376
|
-
|
|
371
|
+
# Where calls can be transferred to when users ask to speak to a human. Null or
|
|
372
|
+
# empty when transfer is not configured.
|
|
373
|
+
sig do
|
|
374
|
+
returns(
|
|
375
|
+
T.nilable(
|
|
376
|
+
T::Array[
|
|
377
|
+
Revox::Models::AssistantCreateResponse::Assistant::TransferDestination
|
|
378
|
+
]
|
|
379
|
+
)
|
|
380
|
+
)
|
|
381
|
+
end
|
|
382
|
+
attr_accessor :transfer_destinations
|
|
377
383
|
|
|
378
384
|
sig do
|
|
379
385
|
returns(
|
|
@@ -479,6 +485,12 @@ module Revox
|
|
|
479
485
|
end
|
|
480
486
|
attr_writer :faq_items
|
|
481
487
|
|
|
488
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
489
|
+
attr_reader :is_inbound_receptionist
|
|
490
|
+
|
|
491
|
+
sig { params(is_inbound_receptionist: T::Boolean).void }
|
|
492
|
+
attr_writer :is_inbound_receptionist
|
|
493
|
+
|
|
482
494
|
sig { returns(T.nilable(T::Boolean)) }
|
|
483
495
|
attr_reader :is_realestate_assistant
|
|
484
496
|
|
|
@@ -523,8 +535,6 @@ module Revox
|
|
|
523
535
|
]
|
|
524
536
|
),
|
|
525
537
|
email_notification_address: T.nilable(String),
|
|
526
|
-
email_notification_language:
|
|
527
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage::OrSymbol,
|
|
528
538
|
email_notification_outcomes:
|
|
529
539
|
T.nilable(
|
|
530
540
|
T::Array[
|
|
@@ -558,6 +568,7 @@ module Revox
|
|
|
558
568
|
T.nilable(
|
|
559
569
|
Revox::Models::AssistantCreateResponse::Assistant::Position::OrHash
|
|
560
570
|
),
|
|
571
|
+
precall_lookup_url: T.nilable(String),
|
|
561
572
|
prompt: String,
|
|
562
573
|
prompt_flow:
|
|
563
574
|
T.nilable(
|
|
@@ -588,7 +599,12 @@ module Revox
|
|
|
588
599
|
),
|
|
589
600
|
thinking_sound_probability: Float,
|
|
590
601
|
thinking_sound_volume: Float,
|
|
591
|
-
|
|
602
|
+
transfer_destinations:
|
|
603
|
+
T.nilable(
|
|
604
|
+
T::Array[
|
|
605
|
+
Revox::Models::AssistantCreateResponse::Assistant::TransferDestination::OrHash
|
|
606
|
+
]
|
|
607
|
+
),
|
|
592
608
|
type:
|
|
593
609
|
Revox::Models::AssistantCreateResponse::Assistant::Type::OrSymbol,
|
|
594
610
|
updated_at: T.anything,
|
|
@@ -612,6 +628,7 @@ module Revox
|
|
|
612
628
|
T::Array[
|
|
613
629
|
Revox::Models::AssistantCreateResponse::Assistant::FaqItem::OrHash
|
|
614
630
|
],
|
|
631
|
+
is_inbound_receptionist: T::Boolean,
|
|
615
632
|
is_realestate_assistant: T::Boolean,
|
|
616
633
|
pending_faq_count: Float
|
|
617
634
|
).returns(T.attached_class)
|
|
@@ -640,8 +657,6 @@ module Revox
|
|
|
640
657
|
# outcome. Accepts a single email or a comma-separated list (e.g. "alice@x.com,
|
|
641
658
|
# bob@y.com").
|
|
642
659
|
email_notification_address:,
|
|
643
|
-
# The language used for the notification email content. One of "en" or "fr".
|
|
644
|
-
email_notification_language:,
|
|
645
660
|
# Which call outcomes trigger an email notification. E.g. ["interested",
|
|
646
661
|
# "completed", "none"]. Use "none" when outcome is null.
|
|
647
662
|
email_notification_outcomes:,
|
|
@@ -653,8 +668,8 @@ module Revox
|
|
|
653
668
|
# Override the default outbound phone number for calls placed with this assistant.
|
|
654
669
|
# When null, the organization's default phone number is used.
|
|
655
670
|
from_phone_number:,
|
|
656
|
-
# Warm or cold transfer when
|
|
657
|
-
# not configured.
|
|
671
|
+
# Warm or cold transfer when transfer_destinations is non-empty; null when
|
|
672
|
+
# transfer is not configured.
|
|
658
673
|
human_transfer_mode:,
|
|
659
674
|
# Enable IVR navigation tools. When enabled, the assistant can send DTMF tones and
|
|
660
675
|
# skip turns to navigate phone menus.
|
|
@@ -673,6 +688,9 @@ module Revox
|
|
|
673
688
|
name:,
|
|
674
689
|
organization_id:,
|
|
675
690
|
position:,
|
|
691
|
+
# URL fetched before an inbound call is answered to resolve the assistant's prompt
|
|
692
|
+
# variables. Null when no lookup is configured.
|
|
693
|
+
precall_lookup_url:,
|
|
676
694
|
prompt:,
|
|
677
695
|
prompt_flow:,
|
|
678
696
|
slack:,
|
|
@@ -704,8 +722,9 @@ module Revox
|
|
|
704
722
|
thinking_sound_probability:,
|
|
705
723
|
# Volume of the thinking sound (0 = silent, 1 = max).
|
|
706
724
|
thinking_sound_volume:,
|
|
707
|
-
#
|
|
708
|
-
|
|
725
|
+
# Where calls can be transferred to when users ask to speak to a human. Null or
|
|
726
|
+
# empty when transfer is not configured.
|
|
727
|
+
transfer_destinations:,
|
|
709
728
|
type:,
|
|
710
729
|
updated_at:,
|
|
711
730
|
voice:,
|
|
@@ -724,6 +743,7 @@ module Revox
|
|
|
724
743
|
# The user who created the assistant.
|
|
725
744
|
created_by: nil,
|
|
726
745
|
faq_items: nil,
|
|
746
|
+
is_inbound_receptionist: nil,
|
|
727
747
|
is_realestate_assistant: nil,
|
|
728
748
|
pending_faq_count: nil
|
|
729
749
|
)
|
|
@@ -762,8 +782,6 @@ module Revox
|
|
|
762
782
|
]
|
|
763
783
|
),
|
|
764
784
|
email_notification_address: T.nilable(String),
|
|
765
|
-
email_notification_language:
|
|
766
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage::TaggedSymbol,
|
|
767
785
|
email_notification_outcomes:
|
|
768
786
|
T.nilable(
|
|
769
787
|
T::Array[
|
|
@@ -792,6 +810,7 @@ module Revox
|
|
|
792
810
|
T.nilable(
|
|
793
811
|
Revox::Models::AssistantCreateResponse::Assistant::Position
|
|
794
812
|
),
|
|
813
|
+
precall_lookup_url: T.nilable(String),
|
|
795
814
|
prompt: String,
|
|
796
815
|
prompt_flow:
|
|
797
816
|
T.nilable(
|
|
@@ -822,7 +841,12 @@ module Revox
|
|
|
822
841
|
),
|
|
823
842
|
thinking_sound_probability: Float,
|
|
824
843
|
thinking_sound_volume: Float,
|
|
825
|
-
|
|
844
|
+
transfer_destinations:
|
|
845
|
+
T.nilable(
|
|
846
|
+
T::Array[
|
|
847
|
+
Revox::Models::AssistantCreateResponse::Assistant::TransferDestination
|
|
848
|
+
]
|
|
849
|
+
),
|
|
826
850
|
type:
|
|
827
851
|
Revox::Models::AssistantCreateResponse::Assistant::Type::TaggedSymbol,
|
|
828
852
|
updated_at: T.anything,
|
|
@@ -846,6 +870,7 @@ module Revox
|
|
|
846
870
|
T::Array[
|
|
847
871
|
Revox::Models::AssistantCreateResponse::Assistant::FaqItem
|
|
848
872
|
],
|
|
873
|
+
is_inbound_receptionist: T::Boolean,
|
|
849
874
|
is_realestate_assistant: T::Boolean,
|
|
850
875
|
pending_faq_count: Float
|
|
851
876
|
}
|
|
@@ -886,21 +911,6 @@ module Revox
|
|
|
886
911
|
:requested_callback_later,
|
|
887
912
|
Revox::Models::AssistantCreateResponse::Assistant::AfterCallSMSOutcome::TaggedSymbol
|
|
888
913
|
)
|
|
889
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
890
|
-
T.let(
|
|
891
|
-
:requested_callback_new_number,
|
|
892
|
-
Revox::Models::AssistantCreateResponse::Assistant::AfterCallSMSOutcome::TaggedSymbol
|
|
893
|
-
)
|
|
894
|
-
DO_NOT_CONTACT =
|
|
895
|
-
T.let(
|
|
896
|
-
:do_not_contact,
|
|
897
|
-
Revox::Models::AssistantCreateResponse::Assistant::AfterCallSMSOutcome::TaggedSymbol
|
|
898
|
-
)
|
|
899
|
-
AI_AVERSE =
|
|
900
|
-
T.let(
|
|
901
|
-
:ai_averse,
|
|
902
|
-
Revox::Models::AssistantCreateResponse::Assistant::AfterCallSMSOutcome::TaggedSymbol
|
|
903
|
-
)
|
|
904
914
|
NONE =
|
|
905
915
|
T.let(
|
|
906
916
|
:none,
|
|
@@ -1169,7 +1179,8 @@ module Revox
|
|
|
1169
1179
|
sig { returns(String) }
|
|
1170
1180
|
attr_accessor :calling_window_start_time
|
|
1171
1181
|
|
|
1172
|
-
# Delay between retry attempts in seconds.
|
|
1182
|
+
# Delay between retry attempts in seconds. 0 retries as soon as the calling window
|
|
1183
|
+
# allows. Default: 7200 (2 hours).
|
|
1173
1184
|
sig { returns(Integer) }
|
|
1174
1185
|
attr_accessor :retry_delay_seconds
|
|
1175
1186
|
|
|
@@ -1189,7 +1200,8 @@ module Revox
|
|
|
1189
1200
|
# timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
|
|
1190
1201
|
# Examples: '09:00', '10am'. Default: '10:00'.
|
|
1191
1202
|
calling_window_start_time:,
|
|
1192
|
-
# Delay between retry attempts in seconds.
|
|
1203
|
+
# Delay between retry attempts in seconds. 0 retries as soon as the calling window
|
|
1204
|
+
# allows. Default: 7200 (2 hours).
|
|
1193
1205
|
retry_delay_seconds:
|
|
1194
1206
|
)
|
|
1195
1207
|
end
|
|
@@ -1572,41 +1584,6 @@ module Revox
|
|
|
1572
1584
|
end
|
|
1573
1585
|
end
|
|
1574
1586
|
|
|
1575
|
-
# The language used for the notification email content. One of "en" or "fr".
|
|
1576
|
-
module EmailNotificationLanguage
|
|
1577
|
-
extend Revox::Internal::Type::Enum
|
|
1578
|
-
|
|
1579
|
-
TaggedSymbol =
|
|
1580
|
-
T.type_alias do
|
|
1581
|
-
T.all(
|
|
1582
|
-
Symbol,
|
|
1583
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage
|
|
1584
|
-
)
|
|
1585
|
-
end
|
|
1586
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1587
|
-
|
|
1588
|
-
EN =
|
|
1589
|
-
T.let(
|
|
1590
|
-
:en,
|
|
1591
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage::TaggedSymbol
|
|
1592
|
-
)
|
|
1593
|
-
FR =
|
|
1594
|
-
T.let(
|
|
1595
|
-
:fr,
|
|
1596
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage::TaggedSymbol
|
|
1597
|
-
)
|
|
1598
|
-
|
|
1599
|
-
sig do
|
|
1600
|
-
override.returns(
|
|
1601
|
-
T::Array[
|
|
1602
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationLanguage::TaggedSymbol
|
|
1603
|
-
]
|
|
1604
|
-
)
|
|
1605
|
-
end
|
|
1606
|
-
def self.values
|
|
1607
|
-
end
|
|
1608
|
-
end
|
|
1609
|
-
|
|
1610
1587
|
module EmailNotificationOutcome
|
|
1611
1588
|
extend Revox::Internal::Type::Enum
|
|
1612
1589
|
|
|
@@ -1639,21 +1616,6 @@ module Revox
|
|
|
1639
1616
|
:requested_callback_later,
|
|
1640
1617
|
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationOutcome::TaggedSymbol
|
|
1641
1618
|
)
|
|
1642
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
1643
|
-
T.let(
|
|
1644
|
-
:requested_callback_new_number,
|
|
1645
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationOutcome::TaggedSymbol
|
|
1646
|
-
)
|
|
1647
|
-
DO_NOT_CONTACT =
|
|
1648
|
-
T.let(
|
|
1649
|
-
:do_not_contact,
|
|
1650
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationOutcome::TaggedSymbol
|
|
1651
|
-
)
|
|
1652
|
-
AI_AVERSE =
|
|
1653
|
-
T.let(
|
|
1654
|
-
:ai_averse,
|
|
1655
|
-
Revox::Models::AssistantCreateResponse::Assistant::EmailNotificationOutcome::TaggedSymbol
|
|
1656
|
-
)
|
|
1657
1619
|
NONE =
|
|
1658
1620
|
T.let(
|
|
1659
1621
|
:none,
|
|
@@ -1710,8 +1672,8 @@ module Revox
|
|
|
1710
1672
|
end
|
|
1711
1673
|
end
|
|
1712
1674
|
|
|
1713
|
-
# Warm or cold transfer when
|
|
1714
|
-
# not configured.
|
|
1675
|
+
# Warm or cold transfer when transfer_destinations is non-empty; null when
|
|
1676
|
+
# transfer is not configured.
|
|
1715
1677
|
module HumanTransferMode
|
|
1716
1678
|
extend Revox::Internal::Type::Enum
|
|
1717
1679
|
|
|
@@ -2309,9 +2271,17 @@ module Revox
|
|
|
2309
2271
|
)
|
|
2310
2272
|
end
|
|
2311
2273
|
|
|
2312
|
-
# The Slack
|
|
2313
|
-
|
|
2314
|
-
|
|
2274
|
+
# The Slack channels eligible to receive the notification. When more than one is
|
|
2275
|
+
# configured, the agent prompt may define routing rules to narrow it down per
|
|
2276
|
+
# call; with no such rules every channel here is notified.
|
|
2277
|
+
sig do
|
|
2278
|
+
returns(
|
|
2279
|
+
T::Array[
|
|
2280
|
+
Revox::Models::AssistantCreateResponse::Assistant::Slack::Channel
|
|
2281
|
+
]
|
|
2282
|
+
)
|
|
2283
|
+
end
|
|
2284
|
+
attr_accessor :channels
|
|
2315
2285
|
|
|
2316
2286
|
# The Nango connection ID linking the org's Slack workspace to Revox.
|
|
2317
2287
|
sig { returns(String) }
|
|
@@ -2328,45 +2298,43 @@ module Revox
|
|
|
2328
2298
|
end
|
|
2329
2299
|
attr_accessor :outcomes
|
|
2330
2300
|
|
|
2331
|
-
# Human-readable Slack channel name, cached for display in the UI.
|
|
2332
|
-
sig { returns(T.nilable(String)) }
|
|
2333
|
-
attr_accessor :channel_name
|
|
2334
|
-
|
|
2335
2301
|
# Optional message template. Supports {{summary}}, {{outcome}}, {{phone}},
|
|
2336
2302
|
# {{call_url}}, {{assistant_name}}, {{campaign_name}}, {{first_name}},
|
|
2337
|
-
# {{last_name}}, {{email}}, {{company}}, {{
|
|
2338
|
-
# prompt_variables and structured_output keys. When
|
|
2339
|
-
# is used.
|
|
2303
|
+
# {{last_name}}, {{email}}, {{company}}, {{job_title}}, {{contact_name}},
|
|
2304
|
+
# {{contact_line}}, plus prompt_variables and structured_output keys. When
|
|
2305
|
+
# null/empty a default template is used.
|
|
2340
2306
|
sig { returns(T.nilable(String)) }
|
|
2341
2307
|
attr_accessor :template
|
|
2342
2308
|
|
|
2343
2309
|
sig do
|
|
2344
2310
|
params(
|
|
2345
|
-
|
|
2311
|
+
channels:
|
|
2312
|
+
T::Array[
|
|
2313
|
+
Revox::Models::AssistantCreateResponse::Assistant::Slack::Channel::OrHash
|
|
2314
|
+
],
|
|
2346
2315
|
connection_id: String,
|
|
2347
2316
|
outcomes:
|
|
2348
2317
|
T::Array[
|
|
2349
2318
|
Revox::Models::AssistantCreateResponse::Assistant::Slack::Outcome::OrSymbol
|
|
2350
2319
|
],
|
|
2351
|
-
channel_name: T.nilable(String),
|
|
2352
2320
|
template: T.nilable(String)
|
|
2353
2321
|
).returns(T.attached_class)
|
|
2354
2322
|
end
|
|
2355
2323
|
def self.new(
|
|
2356
|
-
# The Slack
|
|
2357
|
-
|
|
2324
|
+
# The Slack channels eligible to receive the notification. When more than one is
|
|
2325
|
+
# configured, the agent prompt may define routing rules to narrow it down per
|
|
2326
|
+
# call; with no such rules every channel here is notified.
|
|
2327
|
+
channels:,
|
|
2358
2328
|
# The Nango connection ID linking the org's Slack workspace to Revox.
|
|
2359
2329
|
connection_id:,
|
|
2360
2330
|
# Which call outcomes trigger a Slack notification (e.g. ['interested', 'none']).
|
|
2361
2331
|
# Use 'none' to notify when outcome is null.
|
|
2362
2332
|
outcomes:,
|
|
2363
|
-
# Human-readable Slack channel name, cached for display in the UI.
|
|
2364
|
-
channel_name: nil,
|
|
2365
2333
|
# Optional message template. Supports {{summary}}, {{outcome}}, {{phone}},
|
|
2366
2334
|
# {{call_url}}, {{assistant_name}}, {{campaign_name}}, {{first_name}},
|
|
2367
|
-
# {{last_name}}, {{email}}, {{company}}, {{
|
|
2368
|
-
# prompt_variables and structured_output keys. When
|
|
2369
|
-
# is used.
|
|
2335
|
+
# {{last_name}}, {{email}}, {{company}}, {{job_title}}, {{contact_name}},
|
|
2336
|
+
# {{contact_line}}, plus prompt_variables and structured_output keys. When
|
|
2337
|
+
# null/empty a default template is used.
|
|
2370
2338
|
template: nil
|
|
2371
2339
|
)
|
|
2372
2340
|
end
|
|
@@ -2374,13 +2342,15 @@ module Revox
|
|
|
2374
2342
|
sig do
|
|
2375
2343
|
override.returns(
|
|
2376
2344
|
{
|
|
2377
|
-
|
|
2345
|
+
channels:
|
|
2346
|
+
T::Array[
|
|
2347
|
+
Revox::Models::AssistantCreateResponse::Assistant::Slack::Channel
|
|
2348
|
+
],
|
|
2378
2349
|
connection_id: String,
|
|
2379
2350
|
outcomes:
|
|
2380
2351
|
T::Array[
|
|
2381
2352
|
Revox::Models::AssistantCreateResponse::Assistant::Slack::Outcome::TaggedSymbol
|
|
2382
2353
|
],
|
|
2383
|
-
channel_name: T.nilable(String),
|
|
2384
2354
|
template: T.nilable(String)
|
|
2385
2355
|
}
|
|
2386
2356
|
)
|
|
@@ -2388,6 +2358,43 @@ module Revox
|
|
|
2388
2358
|
def to_hash
|
|
2389
2359
|
end
|
|
2390
2360
|
|
|
2361
|
+
class Channel < Revox::Internal::Type::BaseModel
|
|
2362
|
+
OrHash =
|
|
2363
|
+
T.type_alias do
|
|
2364
|
+
T.any(
|
|
2365
|
+
Revox::Models::AssistantCreateResponse::Assistant::Slack::Channel,
|
|
2366
|
+
Revox::Internal::AnyHash
|
|
2367
|
+
)
|
|
2368
|
+
end
|
|
2369
|
+
|
|
2370
|
+
# The Slack channel ID (e.g. 'C01234567').
|
|
2371
|
+
sig { returns(String) }
|
|
2372
|
+
attr_accessor :id
|
|
2373
|
+
|
|
2374
|
+
# Human-readable Slack channel name, cached for display in the UI and given to the
|
|
2375
|
+
# LLM when the agent prompt routes by channel name.
|
|
2376
|
+
sig { returns(T.nilable(String)) }
|
|
2377
|
+
attr_accessor :name
|
|
2378
|
+
|
|
2379
|
+
sig do
|
|
2380
|
+
params(id: String, name: T.nilable(String)).returns(
|
|
2381
|
+
T.attached_class
|
|
2382
|
+
)
|
|
2383
|
+
end
|
|
2384
|
+
def self.new(
|
|
2385
|
+
# The Slack channel ID (e.g. 'C01234567').
|
|
2386
|
+
id:,
|
|
2387
|
+
# Human-readable Slack channel name, cached for display in the UI and given to the
|
|
2388
|
+
# LLM when the agent prompt routes by channel name.
|
|
2389
|
+
name: nil
|
|
2390
|
+
)
|
|
2391
|
+
end
|
|
2392
|
+
|
|
2393
|
+
sig { override.returns({ id: String, name: T.nilable(String) }) }
|
|
2394
|
+
def to_hash
|
|
2395
|
+
end
|
|
2396
|
+
end
|
|
2397
|
+
|
|
2391
2398
|
module Outcome
|
|
2392
2399
|
extend Revox::Internal::Type::Enum
|
|
2393
2400
|
|
|
@@ -2420,21 +2427,6 @@ module Revox
|
|
|
2420
2427
|
:requested_callback_later,
|
|
2421
2428
|
Revox::Models::AssistantCreateResponse::Assistant::Slack::Outcome::TaggedSymbol
|
|
2422
2429
|
)
|
|
2423
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
2424
|
-
T.let(
|
|
2425
|
-
:requested_callback_new_number,
|
|
2426
|
-
Revox::Models::AssistantCreateResponse::Assistant::Slack::Outcome::TaggedSymbol
|
|
2427
|
-
)
|
|
2428
|
-
DO_NOT_CONTACT =
|
|
2429
|
-
T.let(
|
|
2430
|
-
:do_not_contact,
|
|
2431
|
-
Revox::Models::AssistantCreateResponse::Assistant::Slack::Outcome::TaggedSymbol
|
|
2432
|
-
)
|
|
2433
|
-
AI_AVERSE =
|
|
2434
|
-
T.let(
|
|
2435
|
-
:ai_averse,
|
|
2436
|
-
Revox::Models::AssistantCreateResponse::Assistant::Slack::Outcome::TaggedSymbol
|
|
2437
|
-
)
|
|
2438
2430
|
NONE =
|
|
2439
2431
|
T.let(
|
|
2440
2432
|
:none,
|
|
@@ -2747,6 +2739,34 @@ module Revox
|
|
|
2747
2739
|
end
|
|
2748
2740
|
end
|
|
2749
2741
|
|
|
2742
|
+
class TransferDestination < Revox::Internal::Type::BaseModel
|
|
2743
|
+
OrHash =
|
|
2744
|
+
T.type_alias do
|
|
2745
|
+
T.any(
|
|
2746
|
+
Revox::Models::AssistantCreateResponse::Assistant::TransferDestination,
|
|
2747
|
+
Revox::Internal::AnyHash
|
|
2748
|
+
)
|
|
2749
|
+
end
|
|
2750
|
+
|
|
2751
|
+
sig { returns(String) }
|
|
2752
|
+
attr_accessor :label
|
|
2753
|
+
|
|
2754
|
+
sig { returns(String) }
|
|
2755
|
+
attr_accessor :phone_number
|
|
2756
|
+
|
|
2757
|
+
sig do
|
|
2758
|
+
params(label: String, phone_number: String).returns(
|
|
2759
|
+
T.attached_class
|
|
2760
|
+
)
|
|
2761
|
+
end
|
|
2762
|
+
def self.new(label:, phone_number:)
|
|
2763
|
+
end
|
|
2764
|
+
|
|
2765
|
+
sig { override.returns({ label: String, phone_number: String }) }
|
|
2766
|
+
def to_hash
|
|
2767
|
+
end
|
|
2768
|
+
end
|
|
2769
|
+
|
|
2750
2770
|
module Type
|
|
2751
2771
|
extend Revox::Internal::Type::Enum
|
|
2752
2772
|
|
|
@@ -2827,7 +2847,7 @@ module Revox
|
|
|
2827
2847
|
attr_writer :model
|
|
2828
2848
|
|
|
2829
2849
|
# The speed of the voice. Range depends on provider: Cartesia 0.6–1.5, ElevenLabs
|
|
2830
|
-
# 0.7–1.2. Default is 1.0.
|
|
2850
|
+
# 0.7–1.2, Gradium 0.6–1.5. Default is 1.0.
|
|
2831
2851
|
sig { returns(T.nilable(Float)) }
|
|
2832
2852
|
attr_reader :speed
|
|
2833
2853
|
|
|
@@ -2862,7 +2882,7 @@ module Revox
|
|
|
2862
2882
|
# for other providers.
|
|
2863
2883
|
model: nil,
|
|
2864
2884
|
# The speed of the voice. Range depends on provider: Cartesia 0.6–1.5, ElevenLabs
|
|
2865
|
-
# 0.7–1.2. Default is 1.0.
|
|
2885
|
+
# 0.7–1.2, Gradium 0.6–1.5. Default is 1.0.
|
|
2866
2886
|
speed: nil,
|
|
2867
2887
|
# Volume of the voice (Cartesia only). 0.5–2.0, default 1.0. Ignored for other
|
|
2868
2888
|
# providers.
|
|
@@ -2909,6 +2929,11 @@ module Revox
|
|
|
2909
2929
|
:elevenlabs,
|
|
2910
2930
|
Revox::Models::AssistantCreateResponse::Assistant::Voice::Provider::TaggedSymbol
|
|
2911
2931
|
)
|
|
2932
|
+
GRADIUM =
|
|
2933
|
+
T.let(
|
|
2934
|
+
:gradium,
|
|
2935
|
+
Revox::Models::AssistantCreateResponse::Assistant::Voice::Provider::TaggedSymbol
|
|
2936
|
+
)
|
|
2912
2937
|
|
|
2913
2938
|
sig do
|
|
2914
2939
|
override.returns(
|
|
@@ -3139,21 +3164,6 @@ module Revox
|
|
|
3139
3164
|
:requested_callback_later,
|
|
3140
3165
|
Revox::Models::AssistantCreateResponse::Assistant::Zoho::Outcome::TaggedSymbol
|
|
3141
3166
|
)
|
|
3142
|
-
REQUESTED_CALLBACK_NEW_NUMBER =
|
|
3143
|
-
T.let(
|
|
3144
|
-
:requested_callback_new_number,
|
|
3145
|
-
Revox::Models::AssistantCreateResponse::Assistant::Zoho::Outcome::TaggedSymbol
|
|
3146
|
-
)
|
|
3147
|
-
DO_NOT_CONTACT =
|
|
3148
|
-
T.let(
|
|
3149
|
-
:do_not_contact,
|
|
3150
|
-
Revox::Models::AssistantCreateResponse::Assistant::Zoho::Outcome::TaggedSymbol
|
|
3151
|
-
)
|
|
3152
|
-
AI_AVERSE =
|
|
3153
|
-
T.let(
|
|
3154
|
-
:ai_averse,
|
|
3155
|
-
Revox::Models::AssistantCreateResponse::Assistant::Zoho::Outcome::TaggedSymbol
|
|
3156
|
-
)
|
|
3157
3167
|
NONE =
|
|
3158
3168
|
T.let(
|
|
3159
3169
|
:none,
|