revox 0.0.2 → 0.1.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 (106) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/README.md +63 -22
  4. data/lib/revox/client.rb +4 -0
  5. data/lib/revox/internal/type/base_model.rb +3 -3
  6. data/lib/revox/internal/util.rb +31 -0
  7. data/lib/revox/models/assistant_create_params.rb +2 -2
  8. data/lib/revox/models/assistant_delete_params.rb +7 -1
  9. data/lib/revox/models/assistant_retrieve_params.rb +7 -1
  10. data/lib/revox/models/assistant_update_params.rb +10 -3
  11. data/lib/revox/models/call_create_params.rb +2 -2
  12. data/lib/revox/models/call_create_response.rb +720 -12
  13. data/lib/revox/models/call_list_params.rb +30 -7
  14. data/lib/revox/models/call_list_response.rb +63 -1
  15. data/lib/revox/models/call_retrieve_params.rb +7 -1
  16. data/lib/revox/models/call_retrieve_response.rb +723 -12
  17. data/lib/revox/models/campaign_cancel_params.rb +20 -0
  18. data/lib/revox/models/campaign_cancel_response.rb +16 -0
  19. data/lib/revox/models/campaign_create_params.rb +174 -0
  20. data/lib/revox/models/campaign_create_response.rb +775 -0
  21. data/lib/revox/models/campaign_delete_params.rb +20 -0
  22. data/lib/revox/models/campaign_delete_response.rb +16 -0
  23. data/lib/revox/models/campaign_export_rows_params.rb +20 -0
  24. data/lib/revox/models/campaign_export_rows_response.rb +22 -0
  25. data/lib/revox/models/campaign_get_rows_params.rb +65 -0
  26. data/lib/revox/models/campaign_get_rows_response.rb +1468 -0
  27. data/lib/revox/models/campaign_list_params.rb +14 -0
  28. data/lib/revox/models/campaign_list_response.rb +771 -0
  29. data/lib/revox/models/campaign_retrieve_params.rb +20 -0
  30. data/lib/revox/models/campaign_retrieve_response.rb +776 -0
  31. data/lib/revox/models/voice_preview_params.rb +1 -9
  32. data/lib/revox/models/voice_retrieve_params.rb +7 -1
  33. data/lib/revox/models.rb +14 -0
  34. data/lib/revox/resources/assistants.rb +26 -2
  35. data/lib/revox/resources/call.rb +20 -8
  36. data/lib/revox/resources/campaigns.rb +181 -0
  37. data/lib/revox/resources/voices.rb +12 -8
  38. data/lib/revox/version.rb +1 -1
  39. data/lib/revox.rb +15 -0
  40. data/rbi/revox/client.rbi +3 -0
  41. data/rbi/revox/internal/util.rbi +20 -0
  42. data/rbi/revox/models/assistant_create_params.rbi +3 -5
  43. data/rbi/revox/models/assistant_delete_params.rbi +11 -5
  44. data/rbi/revox/models/assistant_retrieve_params.rbi +11 -5
  45. data/rbi/revox/models/assistant_update_params.rbi +9 -5
  46. data/rbi/revox/models/call_create_params.rbi +3 -5
  47. data/rbi/revox/models/call_create_response.rbi +1537 -11
  48. data/rbi/revox/models/call_list_params.rbi +53 -6
  49. data/rbi/revox/models/call_list_response.rbi +162 -0
  50. data/rbi/revox/models/call_retrieve_params.rbi +11 -5
  51. data/rbi/revox/models/call_retrieve_response.rbi +1543 -11
  52. data/rbi/revox/models/campaign_cancel_params.rbi +33 -0
  53. data/rbi/revox/models/campaign_cancel_response.rbi +23 -0
  54. data/rbi/revox/models/campaign_create_params.rbi +297 -0
  55. data/rbi/revox/models/campaign_create_response.rbi +1490 -0
  56. data/rbi/revox/models/campaign_delete_params.rbi +33 -0
  57. data/rbi/revox/models/campaign_delete_response.rbi +23 -0
  58. data/rbi/revox/models/campaign_export_rows_params.rbi +33 -0
  59. data/rbi/revox/models/campaign_export_rows_response.rbi +29 -0
  60. data/rbi/revox/models/campaign_get_rows_params.rbi +113 -0
  61. data/rbi/revox/models/campaign_get_rows_response.rbi +2981 -0
  62. data/rbi/revox/models/campaign_list_params.rbi +27 -0
  63. data/rbi/revox/models/campaign_list_response.rbi +1482 -0
  64. data/rbi/revox/models/campaign_retrieve_params.rbi +33 -0
  65. data/rbi/revox/models/campaign_retrieve_response.rbi +1495 -0
  66. data/rbi/revox/models/voice_preview_params.rbi +0 -11
  67. data/rbi/revox/models/voice_retrieve_params.rbi +6 -1
  68. data/rbi/revox/models.rbi +14 -0
  69. data/rbi/revox/resources/assistants.rbi +21 -2
  70. data/rbi/revox/resources/call.rbi +18 -6
  71. data/rbi/revox/resources/campaigns.rbi +128 -0
  72. data/rbi/revox/resources/voices.rbi +9 -7
  73. data/sig/revox/client.rbs +2 -0
  74. data/sig/revox/internal/util.rbs +10 -0
  75. data/sig/revox/models/assistant_create_params.rbs +8 -4
  76. data/sig/revox/models/assistant_delete_params.rbs +8 -3
  77. data/sig/revox/models/assistant_retrieve_params.rbs +8 -3
  78. data/sig/revox/models/assistant_update_params.rbs +13 -4
  79. data/sig/revox/models/call_create_params.rbs +8 -4
  80. data/sig/revox/models/call_create_response.rbs +615 -8
  81. data/sig/revox/models/call_list_params.rbs +42 -7
  82. data/sig/revox/models/call_list_response.rbs +57 -2
  83. data/sig/revox/models/call_retrieve_params.rbs +9 -3
  84. data/sig/revox/models/call_retrieve_response.rbs +615 -8
  85. data/sig/revox/models/campaign_cancel_params.rbs +20 -0
  86. data/sig/revox/models/campaign_cancel_response.rbs +13 -0
  87. data/sig/revox/models/campaign_create_params.rbs +149 -0
  88. data/sig/revox/models/campaign_create_response.rbs +666 -0
  89. data/sig/revox/models/campaign_delete_params.rbs +20 -0
  90. data/sig/revox/models/campaign_delete_response.rbs +13 -0
  91. data/sig/revox/models/campaign_export_rows_params.rbs +20 -0
  92. data/sig/revox/models/campaign_export_rows_response.rbs +15 -0
  93. data/sig/revox/models/campaign_get_rows_params.rbs +82 -0
  94. data/sig/revox/models/campaign_get_rows_response.rbs +1220 -0
  95. data/sig/revox/models/campaign_list_params.rbs +14 -0
  96. data/sig/revox/models/campaign_list_response.rbs +666 -0
  97. data/sig/revox/models/campaign_retrieve_params.rbs +20 -0
  98. data/sig/revox/models/campaign_retrieve_response.rbs +666 -0
  99. data/sig/revox/models/voice_preview_params.rbs +1 -8
  100. data/sig/revox/models/voice_retrieve_params.rbs +5 -1
  101. data/sig/revox/models.rbs +14 -0
  102. data/sig/revox/resources/assistants.rbs +2 -2
  103. data/sig/revox/resources/call.rbs +3 -2
  104. data/sig/revox/resources/campaigns.rbs +52 -0
  105. data/sig/revox/resources/voices.rbs +0 -1
  106. metadata +47 -2
@@ -0,0 +1,20 @@
1
+ module Revox
2
+ module Models
3
+ type campaign_cancel_params =
4
+ { id: String } & Revox::Internal::Type::request_parameters
5
+
6
+ class CampaignCancelParams < Revox::Internal::Type::BaseModel
7
+ extend Revox::Internal::Type::RequestParameters::Converter
8
+ include Revox::Internal::Type::RequestParameters
9
+
10
+ attr_accessor id: String
11
+
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: Revox::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: Revox::RequestOptions }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,13 @@
1
+ module Revox
2
+ module Models
3
+ type campaign_cancel_response = { success: bool }
4
+
5
+ class CampaignCancelResponse < Revox::Internal::Type::BaseModel
6
+ attr_accessor success: bool
7
+
8
+ def initialize: (success: bool) -> void
9
+
10
+ def to_hash: -> { success: bool }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,149 @@
1
+ module Revox
2
+ module Models
3
+ type campaign_create_params =
4
+ {
5
+ assistant_id: String,
6
+ contacts: ::Array[Revox::CampaignCreateParams::Contact],
7
+ name: String,
8
+ call_retry_config: Revox::CampaignCreateParams::CallRetryConfig,
9
+ from_phone_number: String,
10
+ max_concurrent_calls: Float,
11
+ scheduled_at: Revox::Models::CampaignCreateParams::scheduled_at
12
+ }
13
+ & Revox::Internal::Type::request_parameters
14
+
15
+ class CampaignCreateParams < Revox::Internal::Type::BaseModel
16
+ extend Revox::Internal::Type::RequestParameters::Converter
17
+ include Revox::Internal::Type::RequestParameters
18
+
19
+ attr_accessor assistant_id: String
20
+
21
+ attr_accessor contacts: ::Array[Revox::CampaignCreateParams::Contact]
22
+
23
+ attr_accessor name: String
24
+
25
+ attr_reader call_retry_config: Revox::CampaignCreateParams::CallRetryConfig?
26
+
27
+ def call_retry_config=: (
28
+ Revox::CampaignCreateParams::CallRetryConfig
29
+ ) -> Revox::CampaignCreateParams::CallRetryConfig
30
+
31
+ attr_reader from_phone_number: String?
32
+
33
+ def from_phone_number=: (String) -> String
34
+
35
+ attr_reader max_concurrent_calls: Float?
36
+
37
+ def max_concurrent_calls=: (Float) -> Float
38
+
39
+ attr_reader scheduled_at: Revox::Models::CampaignCreateParams::scheduled_at?
40
+
41
+ def scheduled_at=: (
42
+ Revox::Models::CampaignCreateParams::scheduled_at
43
+ ) -> Revox::Models::CampaignCreateParams::scheduled_at
44
+
45
+ def initialize: (
46
+ assistant_id: String,
47
+ contacts: ::Array[Revox::CampaignCreateParams::Contact],
48
+ name: String,
49
+ ?call_retry_config: Revox::CampaignCreateParams::CallRetryConfig,
50
+ ?from_phone_number: String,
51
+ ?max_concurrent_calls: Float,
52
+ ?scheduled_at: Revox::Models::CampaignCreateParams::scheduled_at,
53
+ ?request_options: Revox::request_opts
54
+ ) -> void
55
+
56
+ def to_hash: -> {
57
+ assistant_id: String,
58
+ contacts: ::Array[Revox::CampaignCreateParams::Contact],
59
+ name: String,
60
+ call_retry_config: Revox::CampaignCreateParams::CallRetryConfig,
61
+ from_phone_number: String,
62
+ max_concurrent_calls: Float,
63
+ scheduled_at: Revox::Models::CampaignCreateParams::scheduled_at,
64
+ request_options: Revox::RequestOptions
65
+ }
66
+
67
+ type contact =
68
+ { prompt_variables: ::Hash[Symbol, String], to_phone_number: String }
69
+
70
+ class Contact < Revox::Internal::Type::BaseModel
71
+ attr_accessor prompt_variables: ::Hash[Symbol, String]
72
+
73
+ attr_accessor to_phone_number: String
74
+
75
+ def initialize: (
76
+ prompt_variables: ::Hash[Symbol, String],
77
+ to_phone_number: String
78
+ ) -> void
79
+
80
+ def to_hash: -> {
81
+ prompt_variables: ::Hash[Symbol, String],
82
+ to_phone_number: String
83
+ }
84
+ end
85
+
86
+ type call_retry_config =
87
+ {
88
+ calling_windows: ::Array[Revox::CampaignCreateParams::CallRetryConfig::CallingWindow],
89
+ max_retry_attempts: Integer,
90
+ timezone: String?
91
+ }
92
+
93
+ class CallRetryConfig < Revox::Internal::Type::BaseModel
94
+ attr_accessor calling_windows: ::Array[Revox::CampaignCreateParams::CallRetryConfig::CallingWindow]
95
+
96
+ attr_accessor max_retry_attempts: Integer
97
+
98
+ attr_accessor timezone: String?
99
+
100
+ def initialize: (
101
+ calling_windows: ::Array[Revox::CampaignCreateParams::CallRetryConfig::CallingWindow],
102
+ max_retry_attempts: Integer,
103
+ ?timezone: String?
104
+ ) -> void
105
+
106
+ def to_hash: -> {
107
+ calling_windows: ::Array[Revox::CampaignCreateParams::CallRetryConfig::CallingWindow],
108
+ max_retry_attempts: Integer,
109
+ timezone: String?
110
+ }
111
+
112
+ type calling_window =
113
+ {
114
+ calling_window_end_time: String,
115
+ calling_window_start_time: String,
116
+ retry_delay_seconds: Integer
117
+ }
118
+
119
+ class CallingWindow < Revox::Internal::Type::BaseModel
120
+ attr_accessor calling_window_end_time: String
121
+
122
+ attr_accessor calling_window_start_time: String
123
+
124
+ attr_accessor retry_delay_seconds: Integer
125
+
126
+ def initialize: (
127
+ calling_window_end_time: String,
128
+ calling_window_start_time: String,
129
+ retry_delay_seconds: Integer
130
+ ) -> void
131
+
132
+ def to_hash: -> {
133
+ calling_window_end_time: String,
134
+ calling_window_start_time: String,
135
+ retry_delay_seconds: Integer
136
+ }
137
+ end
138
+ end
139
+
140
+ type scheduled_at = Time | top
141
+
142
+ module ScheduledAt
143
+ extend Revox::Internal::Type::Union
144
+
145
+ def self?.variants: -> ::Array[Revox::Models::CampaignCreateParams::scheduled_at]
146
+ end
147
+ end
148
+ end
149
+ end