revox 0.3.0 → 0.5.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 (101) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -0
  3. data/README.md +40 -40
  4. data/lib/revox/models/assistant_clone_response.rb +87 -65
  5. data/lib/revox/models/assistant_create_params.rb +90 -66
  6. data/lib/revox/models/assistant_create_response.rb +87 -65
  7. data/lib/revox/models/assistant_list_response.rb +87 -65
  8. data/lib/revox/models/assistant_retrieve_response.rb +86 -65
  9. data/lib/revox/models/assistant_update_params.rb +90 -66
  10. data/lib/revox/models/assistant_update_response.rb +87 -65
  11. data/lib/revox/models/call_create_params.rb +117 -90
  12. data/lib/revox/models/call_create_response.rb +670 -90
  13. data/lib/revox/models/call_export_params.rb +1 -3
  14. data/lib/revox/models/call_phone_history_response.rb +0 -3
  15. data/lib/revox/models/call_retrieve_response.rb +671 -90
  16. data/lib/revox/models/call_search_params.rb +1 -3
  17. data/lib/revox/models/call_search_response.rb +670 -90
  18. data/lib/revox/models/campaign_create_params.rb +7 -57
  19. data/lib/revox/models/campaign_create_response.rb +108 -119
  20. data/lib/revox/models/campaign_get_rows_response.rb +672 -90
  21. data/lib/revox/models/campaign_launch_params.rb +182 -1
  22. data/lib/revox/models/campaign_launch_response.rb +3447 -1574
  23. data/lib/revox/models/campaign_list_response.rb +108 -119
  24. data/lib/revox/models/campaign_retrieve_response.rb +108 -119
  25. data/lib/revox/models/campaign_statistics_response.rb +51 -23
  26. data/lib/revox/models/campaign_update_params.rb +9 -78
  27. data/lib/revox/models/campaign_update_response.rb +108 -119
  28. data/lib/revox/models/phone_number_list_response.rb +87 -65
  29. data/lib/revox/models/phone_number_update_response.rb +87 -65
  30. data/lib/revox/models/voice_list_response.rb +1 -0
  31. data/lib/revox/models/voice_preview_params.rb +1 -0
  32. data/lib/revox/models/voice_retrieve_params.rb +1 -0
  33. data/lib/revox/resources/assistants.rb +10 -10
  34. data/lib/revox/resources/call.rb +4 -4
  35. data/lib/revox/resources/campaigns.rb +35 -31
  36. data/lib/revox/version.rb +1 -1
  37. data/rbi/revox/models/assistant_clone_response.rbi +157 -147
  38. data/rbi/revox/models/assistant_create_params.rbi +148 -162
  39. data/rbi/revox/models/assistant_create_response.rbi +157 -147
  40. data/rbi/revox/models/assistant_list_response.rbi +157 -147
  41. data/rbi/revox/models/assistant_retrieve_response.rbi +153 -147
  42. data/rbi/revox/models/assistant_update_params.rbi +148 -162
  43. data/rbi/revox/models/assistant_update_response.rbi +157 -147
  44. data/rbi/revox/models/call_create_params.rbi +190 -187
  45. data/rbi/revox/models/call_create_response.rbi +1138 -227
  46. data/rbi/revox/models/call_export_params.rbi +5 -15
  47. data/rbi/revox/models/call_phone_history_response.rbi +0 -15
  48. data/rbi/revox/models/call_retrieve_response.rbi +1138 -227
  49. data/rbi/revox/models/call_search_params.rbi +2 -9
  50. data/rbi/revox/models/call_search_response.rbi +1138 -227
  51. data/rbi/revox/models/campaign_create_params.rbi +9 -87
  52. data/rbi/revox/models/campaign_create_response.rbi +188 -266
  53. data/rbi/revox/models/campaign_get_rows_response.rbi +1138 -225
  54. data/rbi/revox/models/campaign_launch_params.rbi +511 -2
  55. data/rbi/revox/models/campaign_launch_response.rbi +6882 -3163
  56. data/rbi/revox/models/campaign_list_response.rbi +188 -262
  57. data/rbi/revox/models/campaign_retrieve_response.rbi +188 -266
  58. data/rbi/revox/models/campaign_statistics_response.rbi +94 -36
  59. data/rbi/revox/models/campaign_update_params.rbi +10 -128
  60. data/rbi/revox/models/campaign_update_response.rbi +188 -266
  61. data/rbi/revox/models/phone_number_list_response.rbi +157 -147
  62. data/rbi/revox/models/phone_number_update_response.rbi +157 -147
  63. data/rbi/revox/models/voice_list_response.rbi +5 -0
  64. data/rbi/revox/models/voice_preview_params.rbi +2 -0
  65. data/rbi/revox/models/voice_retrieve_params.rbi +2 -0
  66. data/rbi/revox/resources/assistants.rbi +40 -22
  67. data/rbi/revox/resources/call.rbi +7 -4
  68. data/rbi/revox/resources/campaigns.rbi +30 -36
  69. data/sig/revox/models/assistant_clone_response.rbs +46 -54
  70. data/sig/revox/models/assistant_create_params.rbs +39 -58
  71. data/sig/revox/models/assistant_create_response.rbs +46 -54
  72. data/sig/revox/models/assistant_list_response.rbs +46 -54
  73. data/sig/revox/models/assistant_retrieve_response.rbs +46 -54
  74. data/sig/revox/models/assistant_update_params.rbs +39 -58
  75. data/sig/revox/models/assistant_update_response.rbs +46 -54
  76. data/sig/revox/models/call_create_params.rbs +50 -71
  77. data/sig/revox/models/call_create_response.rbs +468 -77
  78. data/sig/revox/models/call_export_params.rbs +2 -6
  79. data/sig/revox/models/call_phone_history_response.rbs +1 -10
  80. data/sig/revox/models/call_retrieve_response.rbs +468 -77
  81. data/sig/revox/models/call_search_params.rbs +2 -6
  82. data/sig/revox/models/call_search_response.rbs +468 -77
  83. data/sig/revox/models/campaign_create_params.rbs +5 -50
  84. data/sig/revox/models/campaign_create_response.rbs +62 -98
  85. data/sig/revox/models/campaign_get_rows_response.rbs +467 -73
  86. data/sig/revox/models/campaign_launch_params.rbs +215 -2
  87. data/sig/revox/models/campaign_launch_response.rbs +2721 -1219
  88. data/sig/revox/models/campaign_list_response.rbs +62 -98
  89. data/sig/revox/models/campaign_retrieve_response.rbs +62 -98
  90. data/sig/revox/models/campaign_statistics_response.rbs +55 -24
  91. data/sig/revox/models/campaign_update_params.rbs +1 -69
  92. data/sig/revox/models/campaign_update_response.rbs +62 -98
  93. data/sig/revox/models/phone_number_list_response.rbs +46 -54
  94. data/sig/revox/models/phone_number_update_response.rbs +46 -54
  95. data/sig/revox/models/voice_list_response.rbs +2 -1
  96. data/sig/revox/models/voice_preview_params.rbs +2 -1
  97. data/sig/revox/models/voice_retrieve_params.rbs +2 -1
  98. data/sig/revox/resources/assistants.rbs +4 -4
  99. data/sig/revox/resources/call.rbs +1 -1
  100. data/sig/revox/resources/campaigns.rbs +3 -7
  101. metadata +2 -2
@@ -19,19 +19,10 @@ module Revox
19
19
  sig { returns(T::Array[Revox::CampaignCreateParams::Contact]) }
20
20
  attr_accessor :contacts
21
21
 
22
- # Whether to launch the campaign immediately. Set to false to save as a draft.
23
- sig { returns(T::Boolean) }
24
- attr_accessor :launch
25
-
26
22
  # The name of the campaign
27
23
  sig { returns(String) }
28
24
  attr_accessor :name
29
25
 
30
- # Campaign type. 'jump_in' campaigns only dial while someone is on the campaign
31
- # page and auto-pause when unattended.
32
- sig { returns(Revox::CampaignCreateParams::Type::OrSymbol) }
33
- attr_accessor :type
34
-
35
26
  # Override retry configuration for calls in this campaign. If not provided, uses
36
27
  # the assistant's retry config.
37
28
  sig { returns(T.nilable(Revox::CampaignCreateParams::CallRetryConfig)) }
@@ -59,32 +50,15 @@ module Revox
59
50
  sig { params(max_concurrent_calls: Float).void }
60
51
  attr_writer :max_concurrent_calls
61
52
 
62
- # Schedule all calls in this campaign to start at a specific date and time (ISO
63
- # 8601 format)
64
- sig do
65
- returns(T.nilable(Revox::CampaignCreateParams::ScheduledAt::Variants))
66
- end
67
- attr_reader :scheduled_at
68
-
69
- sig do
70
- params(
71
- scheduled_at: Revox::CampaignCreateParams::ScheduledAt::Variants
72
- ).void
73
- end
74
- attr_writer :scheduled_at
75
-
76
53
  sig do
77
54
  params(
78
55
  assistant_id: String,
79
56
  contacts: T::Array[Revox::CampaignCreateParams::Contact::OrHash],
80
- launch: T::Boolean,
81
57
  name: String,
82
- type: Revox::CampaignCreateParams::Type::OrSymbol,
83
58
  call_retry_config:
84
59
  Revox::CampaignCreateParams::CallRetryConfig::OrHash,
85
60
  from_phone_number: String,
86
61
  max_concurrent_calls: Float,
87
- scheduled_at: Revox::CampaignCreateParams::ScheduledAt::Variants,
88
62
  request_options: Revox::RequestOptions::OrHash
89
63
  ).returns(T.attached_class)
90
64
  end
@@ -93,13 +67,8 @@ module Revox
93
67
  assistant_id:,
94
68
  # The list of contacts to call
95
69
  contacts:,
96
- # Whether to launch the campaign immediately. Set to false to save as a draft.
97
- launch:,
98
70
  # The name of the campaign
99
71
  name:,
100
- # Campaign type. 'jump_in' campaigns only dial while someone is on the campaign
101
- # page and auto-pause when unattended.
102
- type:,
103
72
  # Override retry configuration for calls in this campaign. If not provided, uses
104
73
  # the assistant's retry config.
105
74
  call_retry_config: nil,
@@ -107,9 +76,6 @@ module Revox
107
76
  from_phone_number: nil,
108
77
  # Maximum number of concurrent calls allowed for this campaign
109
78
  max_concurrent_calls: nil,
110
- # Schedule all calls in this campaign to start at a specific date and time (ISO
111
- # 8601 format)
112
- scheduled_at: nil,
113
79
  request_options: {}
114
80
  )
115
81
  end
@@ -119,13 +85,10 @@ module Revox
119
85
  {
120
86
  assistant_id: String,
121
87
  contacts: T::Array[Revox::CampaignCreateParams::Contact],
122
- launch: T::Boolean,
123
88
  name: String,
124
- type: Revox::CampaignCreateParams::Type::OrSymbol,
125
89
  call_retry_config: Revox::CampaignCreateParams::CallRetryConfig,
126
90
  from_phone_number: String,
127
91
  max_concurrent_calls: Float,
128
- scheduled_at: Revox::CampaignCreateParams::ScheduledAt::Variants,
129
92
  request_options: Revox::RequestOptions
130
93
  }
131
94
  )
@@ -142,56 +105,29 @@ module Revox
142
105
  )
143
106
  end
144
107
 
145
- sig { returns(T::Hash[Symbol, String]) }
108
+ sig { returns(T.anything) }
146
109
  attr_accessor :prompt_variables
147
110
 
148
111
  sig { returns(String) }
149
112
  attr_accessor :to_phone_number
150
113
 
151
114
  sig do
152
- params(
153
- prompt_variables: T::Hash[Symbol, String],
154
- to_phone_number: String
155
- ).returns(T.attached_class)
115
+ params(prompt_variables: T.anything, to_phone_number: String).returns(
116
+ T.attached_class
117
+ )
156
118
  end
157
119
  def self.new(prompt_variables:, to_phone_number:)
158
120
  end
159
121
 
160
122
  sig do
161
123
  override.returns(
162
- {
163
- prompt_variables: T::Hash[Symbol, String],
164
- to_phone_number: String
165
- }
124
+ { prompt_variables: T.anything, to_phone_number: String }
166
125
  )
167
126
  end
168
127
  def to_hash
169
128
  end
170
129
  end
171
130
 
172
- # Campaign type. 'jump_in' campaigns only dial while someone is on the campaign
173
- # page and auto-pause when unattended.
174
- module Type
175
- extend Revox::Internal::Type::Enum
176
-
177
- TaggedSymbol =
178
- T.type_alias { T.all(Symbol, Revox::CampaignCreateParams::Type) }
179
- OrSymbol = T.type_alias { T.any(Symbol, String) }
180
-
181
- REGULAR =
182
- T.let(:regular, Revox::CampaignCreateParams::Type::TaggedSymbol)
183
- JUMP_IN =
184
- T.let(:jump_in, Revox::CampaignCreateParams::Type::TaggedSymbol)
185
-
186
- sig do
187
- override.returns(
188
- T::Array[Revox::CampaignCreateParams::Type::TaggedSymbol]
189
- )
190
- end
191
- def self.values
192
- end
193
- end
194
-
195
131
  class CallRetryConfig < Revox::Internal::Type::BaseModel
196
132
  OrHash =
197
133
  T.type_alias do
@@ -374,7 +310,8 @@ module Revox
374
310
  sig { returns(String) }
375
311
  attr_accessor :calling_window_start_time
376
312
 
377
- # Delay between retry attempts in seconds. Default: 7200 (2 hours).
313
+ # Delay between retry attempts in seconds. 0 retries as soon as the calling window
314
+ # allows. Default: 7200 (2 hours).
378
315
  sig { returns(Integer) }
379
316
  attr_accessor :retry_delay_seconds
380
317
 
@@ -394,7 +331,8 @@ module Revox
394
331
  # timezone_override if provided). Format: 'HH:mm' (24-hour) or 'H:mma' (12-hour).
395
332
  # Examples: '09:00', '10am'. Default: '10:00'.
396
333
  calling_window_start_time:,
397
- # Delay between retry attempts in seconds. Default: 7200 (2 hours).
334
+ # Delay between retry attempts in seconds. 0 retries as soon as the calling window
335
+ # allows. Default: 7200 (2 hours).
398
336
  retry_delay_seconds:
399
337
  )
400
338
  end
@@ -412,22 +350,6 @@ module Revox
412
350
  end
413
351
  end
414
352
  end
415
-
416
- # Schedule all calls in this campaign to start at a specific date and time (ISO
417
- # 8601 format)
418
- module ScheduledAt
419
- extend Revox::Internal::Type::Union
420
-
421
- Variants = T.type_alias { T.any(Time, T.anything) }
422
-
423
- sig do
424
- override.returns(
425
- T::Array[Revox::CampaignCreateParams::ScheduledAt::Variants]
426
- )
427
- end
428
- def self.variants
429
- end
430
- end
431
353
  end
432
354
  end
433
355
  end