revox 0.2.0 → 0.3.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 +10 -0
- data/README.md +1 -1
- data/lib/revox/client.rb +8 -0
- data/lib/revox/internal/type/base_model.rb +3 -3
- data/lib/revox/models/assistant_clone_params.rb +20 -0
- data/lib/revox/models/assistant_clone_response.rb +1594 -0
- data/lib/revox/models/auth_status_retrieve_params.rb +14 -0
- data/lib/revox/models/auth_status_retrieve_response.rb +17 -0
- data/lib/revox/models/call_cancel_params.rb +20 -0
- data/lib/revox/models/call_cancel_response.rb +16 -0
- data/lib/revox/models/call_create_response.rb +11 -1
- data/lib/revox/models/call_export_params.rb +205 -0
- data/lib/revox/models/call_export_response.rb +22 -0
- data/lib/revox/models/call_pause_params.rb +20 -0
- data/lib/revox/models/call_pause_response.rb +16 -0
- data/lib/revox/models/call_phone_history_params.rb +14 -0
- data/lib/revox/models/call_phone_history_response.rb +98 -0
- data/lib/revox/models/call_resume_params.rb +20 -0
- data/lib/revox/models/call_resume_response.rb +16 -0
- data/lib/revox/models/call_retrieve_response.rb +11 -1
- data/lib/revox/models/call_search_params.rb +171 -0
- data/lib/revox/models/call_search_response.rb +3114 -0
- data/lib/revox/models/campaign_get_rows_response.rb +11 -1
- data/lib/revox/models/campaign_launch_params.rb +20 -0
- data/lib/revox/models/campaign_launch_response.rb +2030 -0
- data/lib/revox/models/campaign_pause_params.rb +20 -0
- data/lib/revox/models/campaign_pause_response.rb +16 -0
- data/lib/revox/models/campaign_resume_params.rb +20 -0
- data/lib/revox/models/campaign_resume_response.rb +16 -0
- data/lib/revox/models/campaign_statistics_params.rb +20 -0
- data/lib/revox/models/campaign_statistics_response.rb +486 -0
- data/lib/revox/models/campaign_update_params.rb +234 -0
- data/lib/revox/models/campaign_update_response.rb +2030 -0
- data/lib/revox/models/phone_number_delete_params.rb +20 -0
- data/lib/revox/models/phone_number_delete_response.rb +16 -0
- data/lib/revox/models/phone_number_list_params.rb +14 -0
- data/lib/revox/models/phone_number_list_response.rb +1777 -0
- data/lib/revox/models/phone_number_update_params.rb +32 -0
- data/lib/revox/models/phone_number_update_response.rb +1777 -0
- data/lib/revox/models/user_retrieve_params.rb +14 -0
- data/lib/revox/models/user_retrieve_response.rb +99 -0
- data/lib/revox/models/voice_clone_params.rb +78 -0
- data/lib/revox/models/voice_clone_response.rb +40 -0
- data/lib/revox/models/voice_delete_params.rb +20 -0
- data/lib/revox/models/voice_delete_response.rb +16 -0
- data/lib/revox/models.rb +37 -1
- data/lib/revox/resources/assistants.rb +21 -0
- data/lib/revox/resources/auth_status.rb +32 -0
- data/lib/revox/resources/call.rb +145 -0
- data/lib/revox/resources/campaigns.rb +131 -0
- data/lib/revox/resources/phone_numbers.rb +74 -0
- data/lib/revox/resources/users.rb +17 -3
- data/lib/revox/resources/voices.rb +50 -0
- data/lib/revox/version.rb +1 -1
- data/lib/revox.rb +40 -5
- data/rbi/revox/client.rbi +6 -0
- data/rbi/revox/models/assistant_clone_params.rbi +33 -0
- data/rbi/revox/models/assistant_clone_response.rbi +3341 -0
- data/rbi/revox/models/auth_status_retrieve_params.rbi +27 -0
- data/rbi/revox/models/auth_status_retrieve_response.rbi +30 -0
- data/rbi/revox/models/call_cancel_params.rbi +33 -0
- data/rbi/revox/models/call_cancel_response.rbi +23 -0
- data/rbi/revox/models/call_create_response.rbi +12 -0
- data/rbi/revox/models/call_export_params.rbi +456 -0
- data/rbi/revox/models/call_export_response.rbi +26 -0
- data/rbi/revox/models/call_pause_params.rbi +31 -0
- data/rbi/revox/models/call_pause_response.rbi +23 -0
- data/rbi/revox/models/call_phone_history_params.rbi +27 -0
- data/rbi/revox/models/call_phone_history_response.rbi +224 -0
- data/rbi/revox/models/call_resume_params.rbi +33 -0
- data/rbi/revox/models/call_resume_response.rbi +23 -0
- data/rbi/revox/models/call_retrieve_response.rbi +12 -0
- data/rbi/revox/models/call_search_params.rbi +288 -0
- data/rbi/revox/models/call_search_response.rbi +6593 -0
- data/rbi/revox/models/campaign_get_rows_response.rbi +12 -0
- data/rbi/revox/models/campaign_launch_params.rbi +33 -0
- data/rbi/revox/models/campaign_launch_response.rbi +4170 -0
- data/rbi/revox/models/campaign_pause_params.rbi +33 -0
- data/rbi/revox/models/campaign_pause_response.rbi +23 -0
- data/rbi/revox/models/campaign_resume_params.rbi +33 -0
- data/rbi/revox/models/campaign_resume_response.rbi +23 -0
- data/rbi/revox/models/campaign_statistics_params.rbi +33 -0
- data/rbi/revox/models/campaign_statistics_response.rbi +1011 -0
- data/rbi/revox/models/campaign_update_params.rbi +431 -0
- data/rbi/revox/models/campaign_update_response.rbi +4170 -0
- data/rbi/revox/models/phone_number_delete_params.rbi +33 -0
- data/rbi/revox/models/phone_number_delete_response.rbi +26 -0
- data/rbi/revox/models/phone_number_list_params.rbi +27 -0
- data/rbi/revox/models/phone_number_list_response.rbi +3680 -0
- data/rbi/revox/models/phone_number_update_params.rbi +53 -0
- data/rbi/revox/models/phone_number_update_response.rbi +3683 -0
- data/rbi/revox/models/user_retrieve_params.rbi +27 -0
- data/rbi/revox/models/user_retrieve_response.rbi +140 -0
- data/rbi/revox/models/voice_clone_params.rbi +141 -0
- data/rbi/revox/models/voice_clone_response.rbi +53 -0
- data/rbi/revox/models/voice_delete_params.rbi +33 -0
- data/rbi/revox/models/voice_delete_response.rbi +23 -0
- data/rbi/revox/models.rbi +37 -1
- data/rbi/revox/resources/assistants.rbi +12 -0
- data/rbi/revox/resources/auth_status.rbi +21 -0
- data/rbi/revox/resources/call.rbi +107 -0
- data/rbi/revox/resources/campaigns.rbi +94 -0
- data/rbi/revox/resources/phone_numbers.rbi +43 -0
- data/rbi/revox/resources/users.rbi +8 -2
- data/rbi/revox/resources/voices.rbi +39 -0
- data/sig/revox/client.rbs +4 -0
- data/sig/revox/models/assistant_clone_params.rbs +20 -0
- data/sig/revox/models/assistant_clone_response.rbs +1318 -0
- data/sig/revox/models/auth_status_retrieve_params.rbs +15 -0
- data/sig/revox/models/auth_status_retrieve_response.rbs +13 -0
- data/sig/revox/models/call_cancel_params.rbs +20 -0
- data/sig/revox/models/call_cancel_response.rbs +13 -0
- data/sig/revox/models/call_create_response.rbs +5 -0
- data/sig/revox/models/call_export_params.rbs +234 -0
- data/sig/revox/models/call_export_response.rbs +15 -0
- data/sig/revox/models/call_pause_params.rbs +20 -0
- data/sig/revox/models/call_pause_response.rbs +13 -0
- data/sig/revox/models/call_phone_history_params.rbs +15 -0
- data/sig/revox/models/call_phone_history_response.rbs +102 -0
- data/sig/revox/models/call_resume_params.rbs +20 -0
- data/sig/revox/models/call_resume_response.rbs +13 -0
- data/sig/revox/models/call_retrieve_response.rbs +5 -0
- data/sig/revox/models/call_search_params.rbs +198 -0
- data/sig/revox/models/call_search_response.rbs +2654 -0
- data/sig/revox/models/campaign_get_rows_response.rbs +5 -0
- data/sig/revox/models/campaign_launch_params.rbs +20 -0
- data/sig/revox/models/campaign_launch_response.rbs +1694 -0
- data/sig/revox/models/campaign_pause_params.rbs +20 -0
- data/sig/revox/models/campaign_pause_response.rbs +13 -0
- data/sig/revox/models/campaign_resume_params.rbs +20 -0
- data/sig/revox/models/campaign_resume_response.rbs +13 -0
- data/sig/revox/models/campaign_statistics_params.rbs +20 -0
- data/sig/revox/models/campaign_statistics_response.rbs +458 -0
- data/sig/revox/models/campaign_update_params.rbs +203 -0
- data/sig/revox/models/campaign_update_response.rbs +1694 -0
- data/sig/revox/models/phone_number_delete_params.rbs +20 -0
- data/sig/revox/models/phone_number_delete_response.rbs +13 -0
- data/sig/revox/models/phone_number_list_params.rbs +15 -0
- data/sig/revox/models/phone_number_list_response.rbs +1462 -0
- data/sig/revox/models/phone_number_update_params.rbs +32 -0
- data/sig/revox/models/phone_number_update_response.rbs +1460 -0
- data/sig/revox/models/user_retrieve_params.rbs +14 -0
- data/sig/revox/models/user_retrieve_response.rbs +71 -0
- data/sig/revox/models/voice_clone_params.rbs +79 -0
- data/sig/revox/models/voice_clone_response.rbs +40 -0
- data/sig/revox/models/voice_delete_params.rbs +20 -0
- data/sig/revox/models/voice_delete_response.rbs +13 -0
- data/sig/revox/models.rbs +37 -1
- data/sig/revox/resources/assistants.rbs +5 -0
- data/sig/revox/resources/auth_status.rbs +11 -0
- data/sig/revox/resources/call.rbs +45 -0
- data/sig/revox/resources/campaigns.rbs +33 -0
- data/sig/revox/resources/phone_numbers.rbs +23 -0
- data/sig/revox/resources/users.rbs +3 -1
- data/sig/revox/resources/voices.rbs +13 -0
- metadata +121 -16
- data/lib/revox/models/users/me_retrieve_params.rb +0 -16
- data/lib/revox/models/users/me_retrieve_response.rb +0 -101
- data/lib/revox/models/users/me_update_params.rb +0 -22
- data/lib/revox/models/users/me_update_response.rb +0 -101
- data/lib/revox/resources/users/me.rb +0 -55
- data/rbi/revox/models/users/me_retrieve_params.rbi +0 -29
- data/rbi/revox/models/users/me_retrieve_response.rbi +0 -149
- data/rbi/revox/models/users/me_update_params.rbi +0 -43
- data/rbi/revox/models/users/me_update_response.rbi +0 -149
- data/rbi/revox/resources/users/me.rbi +0 -33
- data/sig/revox/models/users/me_retrieve_params.rbs +0 -16
- data/sig/revox/models/users/me_retrieve_response.rbs +0 -75
- data/sig/revox/models/users/me_update_params.rbs +0 -28
- data/sig/revox/models/users/me_update_response.rbs +0 -75
- data/sig/revox/resources/users/me.rbs +0 -18
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Revox
|
|
4
|
+
module Models
|
|
5
|
+
class CampaignUpdateParams < Revox::Internal::Type::BaseModel
|
|
6
|
+
extend Revox::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Revox::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(Revox::CampaignUpdateParams, Revox::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(String) }
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
17
|
+
# The ID of the assistant to use (draft only)
|
|
18
|
+
sig { returns(T.nilable(String)) }
|
|
19
|
+
attr_reader :assistant_id
|
|
20
|
+
|
|
21
|
+
sig { params(assistant_id: String).void }
|
|
22
|
+
attr_writer :assistant_id
|
|
23
|
+
|
|
24
|
+
# Configuration for call retry behavior including time windows, delays, and max
|
|
25
|
+
# iterations. If not provided, defaults will be used.
|
|
26
|
+
sig { returns(T.nilable(Revox::CampaignUpdateParams::CallRetryConfig)) }
|
|
27
|
+
attr_reader :call_retry_config
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
call_retry_config:
|
|
32
|
+
T.nilable(Revox::CampaignUpdateParams::CallRetryConfig::OrHash)
|
|
33
|
+
).void
|
|
34
|
+
end
|
|
35
|
+
attr_writer :call_retry_config
|
|
36
|
+
|
|
37
|
+
# Replace contact list (draft only)
|
|
38
|
+
sig { returns(T.nilable(T::Array[Revox::CampaignUpdateParams::Contact])) }
|
|
39
|
+
attr_reader :contacts
|
|
40
|
+
|
|
41
|
+
sig do
|
|
42
|
+
params(
|
|
43
|
+
contacts: T::Array[Revox::CampaignUpdateParams::Contact::OrHash]
|
|
44
|
+
).void
|
|
45
|
+
end
|
|
46
|
+
attr_writer :contacts
|
|
47
|
+
|
|
48
|
+
# The phone number to use for outbound calls (draft only)
|
|
49
|
+
sig { returns(T.nilable(String)) }
|
|
50
|
+
attr_accessor :from_phone_number
|
|
51
|
+
|
|
52
|
+
# Maximum concurrent calls (draft only)
|
|
53
|
+
sig { returns(T.nilable(Float)) }
|
|
54
|
+
attr_accessor :max_concurrent_calls
|
|
55
|
+
|
|
56
|
+
# Campaign display name
|
|
57
|
+
sig { returns(T.nilable(String)) }
|
|
58
|
+
attr_reader :name
|
|
59
|
+
|
|
60
|
+
sig { params(name: String).void }
|
|
61
|
+
attr_writer :name
|
|
62
|
+
|
|
63
|
+
# Scheduled start time (draft only)
|
|
64
|
+
sig do
|
|
65
|
+
returns(T.nilable(Revox::CampaignUpdateParams::ScheduledAt::Variants))
|
|
66
|
+
end
|
|
67
|
+
attr_accessor :scheduled_at
|
|
68
|
+
|
|
69
|
+
# Campaign type (draft only)
|
|
70
|
+
sig { returns(T.nilable(Revox::CampaignUpdateParams::Type::OrSymbol)) }
|
|
71
|
+
attr_reader :type
|
|
72
|
+
|
|
73
|
+
sig { params(type: Revox::CampaignUpdateParams::Type::OrSymbol).void }
|
|
74
|
+
attr_writer :type
|
|
75
|
+
|
|
76
|
+
sig do
|
|
77
|
+
params(
|
|
78
|
+
id: String,
|
|
79
|
+
assistant_id: String,
|
|
80
|
+
call_retry_config:
|
|
81
|
+
T.nilable(Revox::CampaignUpdateParams::CallRetryConfig::OrHash),
|
|
82
|
+
contacts: T::Array[Revox::CampaignUpdateParams::Contact::OrHash],
|
|
83
|
+
from_phone_number: T.nilable(String),
|
|
84
|
+
max_concurrent_calls: T.nilable(Float),
|
|
85
|
+
name: String,
|
|
86
|
+
scheduled_at:
|
|
87
|
+
T.nilable(Revox::CampaignUpdateParams::ScheduledAt::Variants),
|
|
88
|
+
type: Revox::CampaignUpdateParams::Type::OrSymbol,
|
|
89
|
+
request_options: Revox::RequestOptions::OrHash
|
|
90
|
+
).returns(T.attached_class)
|
|
91
|
+
end
|
|
92
|
+
def self.new(
|
|
93
|
+
id:,
|
|
94
|
+
# The ID of the assistant to use (draft only)
|
|
95
|
+
assistant_id: nil,
|
|
96
|
+
# Configuration for call retry behavior including time windows, delays, and max
|
|
97
|
+
# iterations. If not provided, defaults will be used.
|
|
98
|
+
call_retry_config: nil,
|
|
99
|
+
# Replace contact list (draft only)
|
|
100
|
+
contacts: nil,
|
|
101
|
+
# The phone number to use for outbound calls (draft only)
|
|
102
|
+
from_phone_number: nil,
|
|
103
|
+
# Maximum concurrent calls (draft only)
|
|
104
|
+
max_concurrent_calls: nil,
|
|
105
|
+
# Campaign display name
|
|
106
|
+
name: nil,
|
|
107
|
+
# Scheduled start time (draft only)
|
|
108
|
+
scheduled_at: nil,
|
|
109
|
+
# Campaign type (draft only)
|
|
110
|
+
type: nil,
|
|
111
|
+
request_options: {}
|
|
112
|
+
)
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
sig do
|
|
116
|
+
override.returns(
|
|
117
|
+
{
|
|
118
|
+
id: String,
|
|
119
|
+
assistant_id: String,
|
|
120
|
+
call_retry_config:
|
|
121
|
+
T.nilable(Revox::CampaignUpdateParams::CallRetryConfig),
|
|
122
|
+
contacts: T::Array[Revox::CampaignUpdateParams::Contact],
|
|
123
|
+
from_phone_number: T.nilable(String),
|
|
124
|
+
max_concurrent_calls: T.nilable(Float),
|
|
125
|
+
name: String,
|
|
126
|
+
scheduled_at:
|
|
127
|
+
T.nilable(Revox::CampaignUpdateParams::ScheduledAt::Variants),
|
|
128
|
+
type: Revox::CampaignUpdateParams::Type::OrSymbol,
|
|
129
|
+
request_options: Revox::RequestOptions
|
|
130
|
+
}
|
|
131
|
+
)
|
|
132
|
+
end
|
|
133
|
+
def to_hash
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
class CallRetryConfig < Revox::Internal::Type::BaseModel
|
|
137
|
+
OrHash =
|
|
138
|
+
T.type_alias do
|
|
139
|
+
T.any(
|
|
140
|
+
Revox::CampaignUpdateParams::CallRetryConfig,
|
|
141
|
+
Revox::Internal::AnyHash
|
|
142
|
+
)
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
# Days of the week when calls are allowed, in the recipient's timezone. Default:
|
|
146
|
+
# Monday through Friday.
|
|
147
|
+
sig do
|
|
148
|
+
returns(
|
|
149
|
+
T::Array[
|
|
150
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::OrSymbol
|
|
151
|
+
]
|
|
152
|
+
)
|
|
153
|
+
end
|
|
154
|
+
attr_accessor :allowed_days
|
|
155
|
+
|
|
156
|
+
# If true and max_retry_attempts >= 2, attempt #2 fires immediately (skipping
|
|
157
|
+
# retry_delay_seconds) when attempt #1 didn't reach a human.
|
|
158
|
+
# Calling-window/allowed-days checks still apply. Only affects the 1→2 transition.
|
|
159
|
+
# Default: false.
|
|
160
|
+
sig { returns(T::Boolean) }
|
|
161
|
+
attr_accessor :call_twice_in_a_row
|
|
162
|
+
|
|
163
|
+
sig do
|
|
164
|
+
returns(
|
|
165
|
+
T::Array[
|
|
166
|
+
Revox::CampaignUpdateParams::CallRetryConfig::CallingWindow
|
|
167
|
+
]
|
|
168
|
+
)
|
|
169
|
+
end
|
|
170
|
+
attr_accessor :calling_windows
|
|
171
|
+
|
|
172
|
+
# Maximum number of call retry attempts. Default: 3.
|
|
173
|
+
sig { returns(Integer) }
|
|
174
|
+
attr_accessor :max_retry_attempts
|
|
175
|
+
|
|
176
|
+
# Optional IANA timezone identifier to override the automatic timezone detection
|
|
177
|
+
# from phone number. If not provided, timezone is determined from the recipient's
|
|
178
|
+
# phone number country code. Examples: 'America/New_York', 'Europe/Paris'.
|
|
179
|
+
sig { returns(T.nilable(String)) }
|
|
180
|
+
attr_accessor :timezone
|
|
181
|
+
|
|
182
|
+
# Configuration for call retry behavior including time windows, delays, and max
|
|
183
|
+
# iterations. If not provided, defaults will be used.
|
|
184
|
+
sig do
|
|
185
|
+
params(
|
|
186
|
+
allowed_days:
|
|
187
|
+
T::Array[
|
|
188
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::OrSymbol
|
|
189
|
+
],
|
|
190
|
+
call_twice_in_a_row: T::Boolean,
|
|
191
|
+
calling_windows:
|
|
192
|
+
T::Array[
|
|
193
|
+
Revox::CampaignUpdateParams::CallRetryConfig::CallingWindow::OrHash
|
|
194
|
+
],
|
|
195
|
+
max_retry_attempts: Integer,
|
|
196
|
+
timezone: T.nilable(String)
|
|
197
|
+
).returns(T.attached_class)
|
|
198
|
+
end
|
|
199
|
+
def self.new(
|
|
200
|
+
# Days of the week when calls are allowed, in the recipient's timezone. Default:
|
|
201
|
+
# Monday through Friday.
|
|
202
|
+
allowed_days:,
|
|
203
|
+
# If true and max_retry_attempts >= 2, attempt #2 fires immediately (skipping
|
|
204
|
+
# retry_delay_seconds) when attempt #1 didn't reach a human.
|
|
205
|
+
# Calling-window/allowed-days checks still apply. Only affects the 1→2 transition.
|
|
206
|
+
# Default: false.
|
|
207
|
+
call_twice_in_a_row:,
|
|
208
|
+
calling_windows:,
|
|
209
|
+
# Maximum number of call retry attempts. Default: 3.
|
|
210
|
+
max_retry_attempts:,
|
|
211
|
+
# Optional IANA timezone identifier to override the automatic timezone detection
|
|
212
|
+
# from phone number. If not provided, timezone is determined from the recipient's
|
|
213
|
+
# phone number country code. Examples: 'America/New_York', 'Europe/Paris'.
|
|
214
|
+
timezone: nil
|
|
215
|
+
)
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
sig do
|
|
219
|
+
override.returns(
|
|
220
|
+
{
|
|
221
|
+
allowed_days:
|
|
222
|
+
T::Array[
|
|
223
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::OrSymbol
|
|
224
|
+
],
|
|
225
|
+
call_twice_in_a_row: T::Boolean,
|
|
226
|
+
calling_windows:
|
|
227
|
+
T::Array[
|
|
228
|
+
Revox::CampaignUpdateParams::CallRetryConfig::CallingWindow
|
|
229
|
+
],
|
|
230
|
+
max_retry_attempts: Integer,
|
|
231
|
+
timezone: T.nilable(String)
|
|
232
|
+
}
|
|
233
|
+
)
|
|
234
|
+
end
|
|
235
|
+
def to_hash
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
module AllowedDay
|
|
239
|
+
extend Revox::Internal::Type::Enum
|
|
240
|
+
|
|
241
|
+
TaggedSymbol =
|
|
242
|
+
T.type_alias do
|
|
243
|
+
T.all(
|
|
244
|
+
Symbol,
|
|
245
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay
|
|
246
|
+
)
|
|
247
|
+
end
|
|
248
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
249
|
+
|
|
250
|
+
MONDAY =
|
|
251
|
+
T.let(
|
|
252
|
+
:monday,
|
|
253
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
254
|
+
)
|
|
255
|
+
TUESDAY =
|
|
256
|
+
T.let(
|
|
257
|
+
:tuesday,
|
|
258
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
259
|
+
)
|
|
260
|
+
WEDNESDAY =
|
|
261
|
+
T.let(
|
|
262
|
+
:wednesday,
|
|
263
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
264
|
+
)
|
|
265
|
+
THURSDAY =
|
|
266
|
+
T.let(
|
|
267
|
+
:thursday,
|
|
268
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
269
|
+
)
|
|
270
|
+
FRIDAY =
|
|
271
|
+
T.let(
|
|
272
|
+
:friday,
|
|
273
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
274
|
+
)
|
|
275
|
+
SATURDAY =
|
|
276
|
+
T.let(
|
|
277
|
+
:saturday,
|
|
278
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
279
|
+
)
|
|
280
|
+
SUNDAY =
|
|
281
|
+
T.let(
|
|
282
|
+
:sunday,
|
|
283
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
284
|
+
)
|
|
285
|
+
|
|
286
|
+
sig do
|
|
287
|
+
override.returns(
|
|
288
|
+
T::Array[
|
|
289
|
+
Revox::CampaignUpdateParams::CallRetryConfig::AllowedDay::TaggedSymbol
|
|
290
|
+
]
|
|
291
|
+
)
|
|
292
|
+
end
|
|
293
|
+
def self.values
|
|
294
|
+
end
|
|
295
|
+
end
|
|
296
|
+
|
|
297
|
+
class CallingWindow < Revox::Internal::Type::BaseModel
|
|
298
|
+
OrHash =
|
|
299
|
+
T.type_alias do
|
|
300
|
+
T.any(
|
|
301
|
+
Revox::CampaignUpdateParams::CallRetryConfig::CallingWindow,
|
|
302
|
+
Revox::Internal::AnyHash
|
|
303
|
+
)
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
# End time for the calling window in the recipient's timezone (or
|
|
307
|
+
# timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
|
|
308
|
+
# Examples: '17:00', '6pm'. Default: '18:00'.
|
|
309
|
+
sig { returns(String) }
|
|
310
|
+
attr_accessor :calling_window_end_time
|
|
311
|
+
|
|
312
|
+
# Start time for the calling window in the recipient's timezone (or
|
|
313
|
+
# timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
|
|
314
|
+
# Examples: '09:00', '10am'. Default: '10:00'.
|
|
315
|
+
sig { returns(String) }
|
|
316
|
+
attr_accessor :calling_window_start_time
|
|
317
|
+
|
|
318
|
+
# Delay between retry attempts in seconds. Default: 7200 (2 hours).
|
|
319
|
+
sig { returns(Integer) }
|
|
320
|
+
attr_accessor :retry_delay_seconds
|
|
321
|
+
|
|
322
|
+
sig do
|
|
323
|
+
params(
|
|
324
|
+
calling_window_end_time: String,
|
|
325
|
+
calling_window_start_time: String,
|
|
326
|
+
retry_delay_seconds: Integer
|
|
327
|
+
).returns(T.attached_class)
|
|
328
|
+
end
|
|
329
|
+
def self.new(
|
|
330
|
+
# End time for the calling window in the recipient's timezone (or
|
|
331
|
+
# timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
|
|
332
|
+
# Examples: '17:00', '6pm'. Default: '18:00'.
|
|
333
|
+
calling_window_end_time:,
|
|
334
|
+
# Start time for the calling window in the recipient's timezone (or
|
|
335
|
+
# timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
|
|
336
|
+
# Examples: '09:00', '10am'. Default: '10:00'.
|
|
337
|
+
calling_window_start_time:,
|
|
338
|
+
# Delay between retry attempts in seconds. Default: 7200 (2 hours).
|
|
339
|
+
retry_delay_seconds:
|
|
340
|
+
)
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
sig do
|
|
344
|
+
override.returns(
|
|
345
|
+
{
|
|
346
|
+
calling_window_end_time: String,
|
|
347
|
+
calling_window_start_time: String,
|
|
348
|
+
retry_delay_seconds: Integer
|
|
349
|
+
}
|
|
350
|
+
)
|
|
351
|
+
end
|
|
352
|
+
def to_hash
|
|
353
|
+
end
|
|
354
|
+
end
|
|
355
|
+
end
|
|
356
|
+
|
|
357
|
+
class Contact < Revox::Internal::Type::BaseModel
|
|
358
|
+
OrHash =
|
|
359
|
+
T.type_alias do
|
|
360
|
+
T.any(
|
|
361
|
+
Revox::CampaignUpdateParams::Contact,
|
|
362
|
+
Revox::Internal::AnyHash
|
|
363
|
+
)
|
|
364
|
+
end
|
|
365
|
+
|
|
366
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
367
|
+
attr_accessor :prompt_variables
|
|
368
|
+
|
|
369
|
+
sig { returns(String) }
|
|
370
|
+
attr_accessor :to_phone_number
|
|
371
|
+
|
|
372
|
+
sig do
|
|
373
|
+
params(
|
|
374
|
+
prompt_variables: T::Hash[Symbol, String],
|
|
375
|
+
to_phone_number: String
|
|
376
|
+
).returns(T.attached_class)
|
|
377
|
+
end
|
|
378
|
+
def self.new(prompt_variables:, to_phone_number:)
|
|
379
|
+
end
|
|
380
|
+
|
|
381
|
+
sig do
|
|
382
|
+
override.returns(
|
|
383
|
+
{
|
|
384
|
+
prompt_variables: T::Hash[Symbol, String],
|
|
385
|
+
to_phone_number: String
|
|
386
|
+
}
|
|
387
|
+
)
|
|
388
|
+
end
|
|
389
|
+
def to_hash
|
|
390
|
+
end
|
|
391
|
+
end
|
|
392
|
+
|
|
393
|
+
# Scheduled start time (draft only)
|
|
394
|
+
module ScheduledAt
|
|
395
|
+
extend Revox::Internal::Type::Union
|
|
396
|
+
|
|
397
|
+
Variants = T.type_alias { T.any(Time, T.anything) }
|
|
398
|
+
|
|
399
|
+
sig do
|
|
400
|
+
override.returns(
|
|
401
|
+
T::Array[Revox::CampaignUpdateParams::ScheduledAt::Variants]
|
|
402
|
+
)
|
|
403
|
+
end
|
|
404
|
+
def self.variants
|
|
405
|
+
end
|
|
406
|
+
end
|
|
407
|
+
|
|
408
|
+
# Campaign type (draft only)
|
|
409
|
+
module Type
|
|
410
|
+
extend Revox::Internal::Type::Enum
|
|
411
|
+
|
|
412
|
+
TaggedSymbol =
|
|
413
|
+
T.type_alias { T.all(Symbol, Revox::CampaignUpdateParams::Type) }
|
|
414
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
415
|
+
|
|
416
|
+
REGULAR =
|
|
417
|
+
T.let(:regular, Revox::CampaignUpdateParams::Type::TaggedSymbol)
|
|
418
|
+
JUMP_IN =
|
|
419
|
+
T.let(:jump_in, Revox::CampaignUpdateParams::Type::TaggedSymbol)
|
|
420
|
+
|
|
421
|
+
sig do
|
|
422
|
+
override.returns(
|
|
423
|
+
T::Array[Revox::CampaignUpdateParams::Type::TaggedSymbol]
|
|
424
|
+
)
|
|
425
|
+
end
|
|
426
|
+
def self.values
|
|
427
|
+
end
|
|
428
|
+
end
|
|
429
|
+
end
|
|
430
|
+
end
|
|
431
|
+
end
|