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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +25 -0
- data/README.md +63 -22
- data/lib/revox/client.rb +4 -0
- data/lib/revox/internal/type/base_model.rb +3 -3
- data/lib/revox/internal/util.rb +31 -0
- data/lib/revox/models/assistant_create_params.rb +2 -2
- data/lib/revox/models/assistant_delete_params.rb +7 -1
- data/lib/revox/models/assistant_retrieve_params.rb +7 -1
- data/lib/revox/models/assistant_update_params.rb +10 -3
- data/lib/revox/models/call_create_params.rb +2 -2
- data/lib/revox/models/call_create_response.rb +720 -12
- data/lib/revox/models/call_list_params.rb +30 -7
- data/lib/revox/models/call_list_response.rb +63 -1
- data/lib/revox/models/call_retrieve_params.rb +7 -1
- data/lib/revox/models/call_retrieve_response.rb +723 -12
- data/lib/revox/models/campaign_cancel_params.rb +20 -0
- data/lib/revox/models/campaign_cancel_response.rb +16 -0
- data/lib/revox/models/campaign_create_params.rb +174 -0
- data/lib/revox/models/campaign_create_response.rb +775 -0
- data/lib/revox/models/campaign_delete_params.rb +20 -0
- data/lib/revox/models/campaign_delete_response.rb +16 -0
- data/lib/revox/models/campaign_export_rows_params.rb +20 -0
- data/lib/revox/models/campaign_export_rows_response.rb +22 -0
- data/lib/revox/models/campaign_get_rows_params.rb +65 -0
- data/lib/revox/models/campaign_get_rows_response.rb +1468 -0
- data/lib/revox/models/campaign_list_params.rb +14 -0
- data/lib/revox/models/campaign_list_response.rb +771 -0
- data/lib/revox/models/campaign_retrieve_params.rb +20 -0
- data/lib/revox/models/campaign_retrieve_response.rb +776 -0
- data/lib/revox/models/voice_preview_params.rb +1 -9
- data/lib/revox/models/voice_retrieve_params.rb +7 -1
- data/lib/revox/models.rb +14 -0
- data/lib/revox/resources/assistants.rb +26 -2
- data/lib/revox/resources/call.rb +20 -8
- data/lib/revox/resources/campaigns.rb +181 -0
- data/lib/revox/resources/voices.rb +12 -8
- data/lib/revox/version.rb +1 -1
- data/lib/revox.rb +15 -0
- data/rbi/revox/client.rbi +3 -0
- data/rbi/revox/internal/util.rbi +20 -0
- data/rbi/revox/models/assistant_create_params.rbi +3 -5
- data/rbi/revox/models/assistant_delete_params.rbi +11 -5
- data/rbi/revox/models/assistant_retrieve_params.rbi +11 -5
- data/rbi/revox/models/assistant_update_params.rbi +9 -5
- data/rbi/revox/models/call_create_params.rbi +3 -5
- data/rbi/revox/models/call_create_response.rbi +1537 -11
- data/rbi/revox/models/call_list_params.rbi +53 -6
- data/rbi/revox/models/call_list_response.rbi +162 -0
- data/rbi/revox/models/call_retrieve_params.rbi +11 -5
- data/rbi/revox/models/call_retrieve_response.rbi +1543 -11
- data/rbi/revox/models/campaign_cancel_params.rbi +33 -0
- data/rbi/revox/models/campaign_cancel_response.rbi +23 -0
- data/rbi/revox/models/campaign_create_params.rbi +297 -0
- data/rbi/revox/models/campaign_create_response.rbi +1490 -0
- data/rbi/revox/models/campaign_delete_params.rbi +33 -0
- data/rbi/revox/models/campaign_delete_response.rbi +23 -0
- data/rbi/revox/models/campaign_export_rows_params.rbi +33 -0
- data/rbi/revox/models/campaign_export_rows_response.rbi +29 -0
- data/rbi/revox/models/campaign_get_rows_params.rbi +113 -0
- data/rbi/revox/models/campaign_get_rows_response.rbi +2981 -0
- data/rbi/revox/models/campaign_list_params.rbi +27 -0
- data/rbi/revox/models/campaign_list_response.rbi +1482 -0
- data/rbi/revox/models/campaign_retrieve_params.rbi +33 -0
- data/rbi/revox/models/campaign_retrieve_response.rbi +1495 -0
- data/rbi/revox/models/voice_preview_params.rbi +0 -11
- data/rbi/revox/models/voice_retrieve_params.rbi +6 -1
- data/rbi/revox/models.rbi +14 -0
- data/rbi/revox/resources/assistants.rbi +21 -2
- data/rbi/revox/resources/call.rbi +18 -6
- data/rbi/revox/resources/campaigns.rbi +128 -0
- data/rbi/revox/resources/voices.rbi +9 -7
- data/sig/revox/client.rbs +2 -0
- data/sig/revox/internal/util.rbs +10 -0
- data/sig/revox/models/assistant_create_params.rbs +8 -4
- data/sig/revox/models/assistant_delete_params.rbs +8 -3
- data/sig/revox/models/assistant_retrieve_params.rbs +8 -3
- data/sig/revox/models/assistant_update_params.rbs +13 -4
- data/sig/revox/models/call_create_params.rbs +8 -4
- data/sig/revox/models/call_create_response.rbs +615 -8
- data/sig/revox/models/call_list_params.rbs +42 -7
- data/sig/revox/models/call_list_response.rbs +57 -2
- data/sig/revox/models/call_retrieve_params.rbs +9 -3
- data/sig/revox/models/call_retrieve_response.rbs +615 -8
- data/sig/revox/models/campaign_cancel_params.rbs +20 -0
- data/sig/revox/models/campaign_cancel_response.rbs +13 -0
- data/sig/revox/models/campaign_create_params.rbs +149 -0
- data/sig/revox/models/campaign_create_response.rbs +666 -0
- data/sig/revox/models/campaign_delete_params.rbs +20 -0
- data/sig/revox/models/campaign_delete_response.rbs +13 -0
- data/sig/revox/models/campaign_export_rows_params.rbs +20 -0
- data/sig/revox/models/campaign_export_rows_response.rbs +15 -0
- data/sig/revox/models/campaign_get_rows_params.rbs +82 -0
- data/sig/revox/models/campaign_get_rows_response.rbs +1220 -0
- data/sig/revox/models/campaign_list_params.rbs +14 -0
- data/sig/revox/models/campaign_list_response.rbs +666 -0
- data/sig/revox/models/campaign_retrieve_params.rbs +20 -0
- data/sig/revox/models/campaign_retrieve_response.rbs +666 -0
- data/sig/revox/models/voice_preview_params.rbs +1 -8
- data/sig/revox/models/voice_retrieve_params.rbs +5 -1
- data/sig/revox/models.rbs +14 -0
- data/sig/revox/resources/assistants.rbs +2 -2
- data/sig/revox/resources/call.rbs +3 -2
- data/sig/revox/resources/campaigns.rbs +52 -0
- data/sig/revox/resources/voices.rbs +0 -1
- metadata +47 -2
|
@@ -19,18 +19,10 @@ module Revox
|
|
|
19
19
|
sig { returns(String) }
|
|
20
20
|
attr_accessor :voice_id
|
|
21
21
|
|
|
22
|
-
# The text to generate a preview for.
|
|
23
|
-
sig { returns(T.nilable(String)) }
|
|
24
|
-
attr_reader :text
|
|
25
|
-
|
|
26
|
-
sig { params(text: String).void }
|
|
27
|
-
attr_writer :text
|
|
28
|
-
|
|
29
22
|
sig do
|
|
30
23
|
params(
|
|
31
24
|
provider: Revox::VoicePreviewParams::Provider::OrSymbol,
|
|
32
25
|
voice_id: String,
|
|
33
|
-
text: String,
|
|
34
26
|
request_options: Revox::RequestOptions::OrHash
|
|
35
27
|
).returns(T.attached_class)
|
|
36
28
|
end
|
|
@@ -39,8 +31,6 @@ module Revox
|
|
|
39
31
|
provider:,
|
|
40
32
|
# The voice ID to generate a preview for.
|
|
41
33
|
voice_id:,
|
|
42
|
-
# The text to generate a preview for.
|
|
43
|
-
text: nil,
|
|
44
34
|
request_options: {}
|
|
45
35
|
)
|
|
46
36
|
end
|
|
@@ -50,7 +40,6 @@ module Revox
|
|
|
50
40
|
{
|
|
51
41
|
provider: Revox::VoicePreviewParams::Provider::OrSymbol,
|
|
52
42
|
voice_id: String,
|
|
53
|
-
text: String,
|
|
54
43
|
request_options: Revox::RequestOptions
|
|
55
44
|
}
|
|
56
45
|
)
|
|
@@ -11,21 +11,26 @@ module Revox
|
|
|
11
11
|
T.any(Revox::VoiceRetrieveParams, Revox::Internal::AnyHash)
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
+
sig { returns(String) }
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
14
17
|
sig { returns(Revox::VoiceRetrieveParams::Provider::OrSymbol) }
|
|
15
18
|
attr_accessor :provider
|
|
16
19
|
|
|
17
20
|
sig do
|
|
18
21
|
params(
|
|
22
|
+
id: String,
|
|
19
23
|
provider: Revox::VoiceRetrieveParams::Provider::OrSymbol,
|
|
20
24
|
request_options: Revox::RequestOptions::OrHash
|
|
21
25
|
).returns(T.attached_class)
|
|
22
26
|
end
|
|
23
|
-
def self.new(provider:, request_options: {})
|
|
27
|
+
def self.new(id:, provider:, request_options: {})
|
|
24
28
|
end
|
|
25
29
|
|
|
26
30
|
sig do
|
|
27
31
|
override.returns(
|
|
28
32
|
{
|
|
33
|
+
id: String,
|
|
29
34
|
provider: Revox::VoiceRetrieveParams::Provider::OrSymbol,
|
|
30
35
|
request_options: Revox::RequestOptions
|
|
31
36
|
}
|
data/rbi/revox/models.rbi
CHANGED
|
@@ -17,6 +17,20 @@ module Revox
|
|
|
17
17
|
|
|
18
18
|
CallRetrieveParams = Revox::Models::CallRetrieveParams
|
|
19
19
|
|
|
20
|
+
CampaignCancelParams = Revox::Models::CampaignCancelParams
|
|
21
|
+
|
|
22
|
+
CampaignCreateParams = Revox::Models::CampaignCreateParams
|
|
23
|
+
|
|
24
|
+
CampaignDeleteParams = Revox::Models::CampaignDeleteParams
|
|
25
|
+
|
|
26
|
+
CampaignExportRowsParams = Revox::Models::CampaignExportRowsParams
|
|
27
|
+
|
|
28
|
+
CampaignGetRowsParams = Revox::Models::CampaignGetRowsParams
|
|
29
|
+
|
|
30
|
+
CampaignListParams = Revox::Models::CampaignListParams
|
|
31
|
+
|
|
32
|
+
CampaignRetrieveParams = Revox::Models::CampaignRetrieveParams
|
|
33
|
+
|
|
20
34
|
Users = Revox::Models::Users
|
|
21
35
|
|
|
22
36
|
VoiceListParams = Revox::Models::VoiceListParams
|
|
@@ -3,13 +3,18 @@
|
|
|
3
3
|
module Revox
|
|
4
4
|
module Resources
|
|
5
5
|
class Assistants
|
|
6
|
+
# Create a new AI assistant with a custom prompt, voice, and behavior
|
|
7
|
+
# configuration. Assistants define how the AI agent behaves during calls,
|
|
8
|
+
# including the system prompt given to the LLM, the first sentence spoken, the
|
|
9
|
+
# voice provider and voice ID (Cartesia or ElevenLabs), and end-of-call behavior.
|
|
10
|
+
# Once created, reference the assistant by its ID when placing calls.
|
|
6
11
|
sig do
|
|
7
12
|
params(
|
|
8
13
|
name: String,
|
|
9
14
|
prompt: String,
|
|
10
15
|
background_sound:
|
|
11
16
|
T.nilable(Revox::AssistantCreateParams::BackgroundSound::OrSymbol),
|
|
12
|
-
calendly:
|
|
17
|
+
calendly: Revox::AssistantCreateParams::Calendly::OrHash,
|
|
13
18
|
call_retry_config:
|
|
14
19
|
Revox::AssistantCreateParams::CallRetryConfig::OrHash,
|
|
15
20
|
end_of_call_sentence: String,
|
|
@@ -86,6 +91,10 @@ module Revox
|
|
|
86
91
|
)
|
|
87
92
|
end
|
|
88
93
|
|
|
94
|
+
# Retrieve a single assistant by its unique ID. Returns the full assistant
|
|
95
|
+
# configuration including prompt, voice settings, and first sentence mode. Useful
|
|
96
|
+
# for inspecting an assistant's current setup before updating it or placing a
|
|
97
|
+
# call.
|
|
89
98
|
sig do
|
|
90
99
|
params(
|
|
91
100
|
id: String,
|
|
@@ -95,12 +104,16 @@ module Revox
|
|
|
95
104
|
def retrieve(id, request_options: {})
|
|
96
105
|
end
|
|
97
106
|
|
|
107
|
+
# Update one or more fields on an existing assistant. Supports partial updates —
|
|
108
|
+
# only the fields you include in the request body will be changed. You can update
|
|
109
|
+
# the prompt, voice, first sentence, name, or any other assistant property without
|
|
110
|
+
# affecting the rest of the configuration.
|
|
98
111
|
sig do
|
|
99
112
|
params(
|
|
100
113
|
id: String,
|
|
101
114
|
background_sound:
|
|
102
115
|
T.nilable(Revox::AssistantUpdateParams::BackgroundSound::OrSymbol),
|
|
103
|
-
calendly:
|
|
116
|
+
calendly: Revox::AssistantUpdateParams::Calendly::OrHash,
|
|
104
117
|
call_retry_config:
|
|
105
118
|
Revox::AssistantUpdateParams::CallRetryConfig::OrHash,
|
|
106
119
|
end_of_call_sentence: String,
|
|
@@ -180,6 +193,9 @@ module Revox
|
|
|
180
193
|
)
|
|
181
194
|
end
|
|
182
195
|
|
|
196
|
+
# Retrieve all assistants associated with your account. Each assistant in the
|
|
197
|
+
# response includes its full configuration: prompt, voice settings, and first
|
|
198
|
+
# sentence. Use this endpoint to list available assistants before placing calls.
|
|
183
199
|
sig do
|
|
184
200
|
params(request_options: Revox::RequestOptions::OrHash).returns(
|
|
185
201
|
Revox::Models::AssistantListResponse
|
|
@@ -188,6 +204,9 @@ module Revox
|
|
|
188
204
|
def list(request_options: {})
|
|
189
205
|
end
|
|
190
206
|
|
|
207
|
+
# Permanently delete an assistant by its ID. Any future calls referencing this
|
|
208
|
+
# assistant ID will fail. Existing call records that used this assistant are not
|
|
209
|
+
# affected.
|
|
191
210
|
sig do
|
|
192
211
|
params(
|
|
193
212
|
id: String,
|
|
@@ -3,8 +3,12 @@
|
|
|
3
3
|
module Revox
|
|
4
4
|
module Resources
|
|
5
5
|
class Call
|
|
6
|
-
# Place a new call order.
|
|
7
|
-
#
|
|
6
|
+
# Place a new outbound call order. Provide either an existing assistant ID or a
|
|
7
|
+
# custom assistant configuration. The call can be scheduled for a specific time or
|
|
8
|
+
# started immediately. A single call order may be resolved over multiple call
|
|
9
|
+
# attempts spanning up to a few days, with automatic retries when voicemail is
|
|
10
|
+
# detected. You can also set concurrency limits and pass prompt variables for
|
|
11
|
+
# dynamic personalization.
|
|
8
12
|
sig do
|
|
9
13
|
params(
|
|
10
14
|
phone_number: String,
|
|
@@ -47,7 +51,10 @@ module Revox
|
|
|
47
51
|
)
|
|
48
52
|
end
|
|
49
53
|
|
|
50
|
-
#
|
|
54
|
+
# Retrieve the full details of a call order by its unique ID. The response
|
|
55
|
+
# includes the call status, call attempts, transcript, recording URL, timestamps,
|
|
56
|
+
# and metadata. Use this endpoint to poll for call completion or inspect results
|
|
57
|
+
# after a call has finished.
|
|
51
58
|
sig do
|
|
52
59
|
params(
|
|
53
60
|
id: String,
|
|
@@ -61,18 +68,23 @@ module Revox
|
|
|
61
68
|
)
|
|
62
69
|
end
|
|
63
70
|
|
|
64
|
-
#
|
|
71
|
+
# Retrieve a paginated list of call attempts. Each entry includes the call status,
|
|
72
|
+
# phone number, assistant used, transcript, and timestamps. Use the page and
|
|
73
|
+
# page_size query parameters to navigate through results.
|
|
65
74
|
sig do
|
|
66
75
|
params(
|
|
67
|
-
page:
|
|
68
|
-
page_size:
|
|
76
|
+
page: Integer,
|
|
77
|
+
page_size: Integer,
|
|
78
|
+
statuses: T::Array[Revox::CallListParams::Status::OrSymbol],
|
|
69
79
|
request_options: Revox::RequestOptions::OrHash
|
|
70
80
|
).returns(Revox::Models::CallListResponse)
|
|
71
81
|
end
|
|
72
82
|
def list(
|
|
73
83
|
# The page number you want to get. Starting at 0.
|
|
74
84
|
page:,
|
|
85
|
+
# The number of calls to return per page.
|
|
75
86
|
page_size:,
|
|
87
|
+
statuses: nil,
|
|
76
88
|
request_options: {}
|
|
77
89
|
)
|
|
78
90
|
end
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Revox
|
|
4
|
+
module Resources
|
|
5
|
+
class Campaigns
|
|
6
|
+
# Create a new outbound calling campaign and launch it immediately. If
|
|
7
|
+
# scheduled_at is set, all calls will be queued until the specified time instead
|
|
8
|
+
# of starting right away.
|
|
9
|
+
sig do
|
|
10
|
+
params(
|
|
11
|
+
assistant_id: String,
|
|
12
|
+
contacts: T::Array[Revox::CampaignCreateParams::Contact::OrHash],
|
|
13
|
+
name: String,
|
|
14
|
+
call_retry_config:
|
|
15
|
+
Revox::CampaignCreateParams::CallRetryConfig::OrHash,
|
|
16
|
+
from_phone_number: String,
|
|
17
|
+
max_concurrent_calls: Float,
|
|
18
|
+
scheduled_at: Revox::CampaignCreateParams::ScheduledAt::Variants,
|
|
19
|
+
request_options: Revox::RequestOptions::OrHash
|
|
20
|
+
).returns(Revox::Models::CampaignCreateResponse)
|
|
21
|
+
end
|
|
22
|
+
def create(
|
|
23
|
+
# The ID of the assistant to use
|
|
24
|
+
assistant_id:,
|
|
25
|
+
# The list of contacts to call
|
|
26
|
+
contacts:,
|
|
27
|
+
# The name of the campaign
|
|
28
|
+
name:,
|
|
29
|
+
# Override retry configuration for calls in this campaign. If not provided, uses
|
|
30
|
+
# the assistant's retry config.
|
|
31
|
+
call_retry_config: nil,
|
|
32
|
+
# The phone number to use for outbound calls (E.164 format, e.g., +1234567890)
|
|
33
|
+
from_phone_number: nil,
|
|
34
|
+
# Maximum number of concurrent calls allowed for this campaign
|
|
35
|
+
max_concurrent_calls: nil,
|
|
36
|
+
# Schedule all calls in this campaign to start at a specific date and time (ISO
|
|
37
|
+
# 8601 format)
|
|
38
|
+
scheduled_at: nil,
|
|
39
|
+
request_options: {}
|
|
40
|
+
)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Retrieve the full details of a single campaign by its unique ID. Can be used to
|
|
44
|
+
# poll for campaign completion.
|
|
45
|
+
sig do
|
|
46
|
+
params(
|
|
47
|
+
id: String,
|
|
48
|
+
request_options: Revox::RequestOptions::OrHash
|
|
49
|
+
).returns(Revox::Models::CampaignRetrieveResponse)
|
|
50
|
+
end
|
|
51
|
+
def retrieve(id, request_options: {})
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
# Retrieve all campaigns for your organization, including both active and
|
|
55
|
+
# completed ones.
|
|
56
|
+
sig do
|
|
57
|
+
params(request_options: Revox::RequestOptions::OrHash).returns(
|
|
58
|
+
Revox::Models::CampaignListResponse
|
|
59
|
+
)
|
|
60
|
+
end
|
|
61
|
+
def list(request_options: {})
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Permanently delete a campaign and all its associated rows. This action is
|
|
65
|
+
# irreversible. In-progress calls will not be affected, but no new calls will be
|
|
66
|
+
# placed.
|
|
67
|
+
sig do
|
|
68
|
+
params(
|
|
69
|
+
id: String,
|
|
70
|
+
request_options: Revox::RequestOptions::OrHash
|
|
71
|
+
).returns(Revox::Models::CampaignDeleteResponse)
|
|
72
|
+
end
|
|
73
|
+
def delete(id, request_options: {})
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
# Cancel a running or scheduled campaign. Pending and queued calls will be
|
|
77
|
+
# aborted, while in-progress calls will be allowed to finish. Unlike deletion, the
|
|
78
|
+
# campaign and its rows are preserved for historical reference.
|
|
79
|
+
sig do
|
|
80
|
+
params(
|
|
81
|
+
id: String,
|
|
82
|
+
request_options: Revox::RequestOptions::OrHash
|
|
83
|
+
).returns(Revox::Models::CampaignCancelResponse)
|
|
84
|
+
end
|
|
85
|
+
def cancel(id, request_options: {})
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# Export all rows of a campaign as a CSV file for offline analysis or reporting.
|
|
89
|
+
sig do
|
|
90
|
+
params(
|
|
91
|
+
id: String,
|
|
92
|
+
request_options: Revox::RequestOptions::OrHash
|
|
93
|
+
).returns(Revox::Models::CampaignExportRowsResponse)
|
|
94
|
+
end
|
|
95
|
+
def export_rows(id, request_options: {})
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# Retrieve a paginated list of rows (contacts) for a given campaign. Supports
|
|
99
|
+
# filtering by text query, call statuses, and call result.
|
|
100
|
+
sig do
|
|
101
|
+
params(
|
|
102
|
+
id: String,
|
|
103
|
+
page: Float,
|
|
104
|
+
page_size: Float,
|
|
105
|
+
query: String,
|
|
106
|
+
result: Revox::CampaignGetRowsParams::Result::OrSymbol,
|
|
107
|
+
statuses: String,
|
|
108
|
+
request_options: Revox::RequestOptions::OrHash
|
|
109
|
+
).returns(Revox::Models::CampaignGetRowsResponse)
|
|
110
|
+
end
|
|
111
|
+
def get_rows(
|
|
112
|
+
id,
|
|
113
|
+
page:,
|
|
114
|
+
page_size:,
|
|
115
|
+
query: nil,
|
|
116
|
+
result: nil,
|
|
117
|
+
statuses: nil,
|
|
118
|
+
request_options: {}
|
|
119
|
+
)
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# @api private
|
|
123
|
+
sig { params(client: Revox::Client).returns(T.attached_class) }
|
|
124
|
+
def self.new(client:)
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
end
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
module Revox
|
|
4
4
|
module Resources
|
|
5
5
|
class Voices
|
|
6
|
-
#
|
|
6
|
+
# Retrieve details for a single voice by its unique ID and provider. Returns the
|
|
7
|
+
# voice name, description, and provider metadata.
|
|
7
8
|
sig do
|
|
8
9
|
params(
|
|
9
10
|
id: String,
|
|
@@ -19,8 +20,10 @@ module Revox
|
|
|
19
20
|
)
|
|
20
21
|
end
|
|
21
22
|
|
|
22
|
-
#
|
|
23
|
-
#
|
|
23
|
+
# Retrieve the full catalog of voices available for AI calls. The list includes
|
|
24
|
+
# voices from Cartesia and ElevenLabs, each with a name, language, accent, and
|
|
25
|
+
# provider-specific ID. Use this endpoint to browse voices before assigning one to
|
|
26
|
+
# an assistant or a call.
|
|
24
27
|
sig do
|
|
25
28
|
params(request_options: Revox::RequestOptions::OrHash).returns(
|
|
26
29
|
Revox::Models::VoiceListResponse
|
|
@@ -29,12 +32,13 @@ module Revox
|
|
|
29
32
|
def list(request_options: {})
|
|
30
33
|
end
|
|
31
34
|
|
|
32
|
-
# Generate a
|
|
35
|
+
# Generate a short audio preview for a given voice. Provide the voice ID and
|
|
36
|
+
# provider, and the API returns an audio/mpeg stream you can play back to hear how
|
|
37
|
+
# the voice sounds before assigning it to an assistant.
|
|
33
38
|
sig do
|
|
34
39
|
params(
|
|
35
40
|
provider: Revox::VoicePreviewParams::Provider::OrSymbol,
|
|
36
41
|
voice_id: String,
|
|
37
|
-
text: String,
|
|
38
42
|
request_options: Revox::RequestOptions::OrHash
|
|
39
43
|
).void
|
|
40
44
|
end
|
|
@@ -43,8 +47,6 @@ module Revox
|
|
|
43
47
|
provider:,
|
|
44
48
|
# The voice ID to generate a preview for.
|
|
45
49
|
voice_id:,
|
|
46
|
-
# The text to generate a preview for.
|
|
47
|
-
text: nil,
|
|
48
50
|
request_options: {}
|
|
49
51
|
)
|
|
50
52
|
end
|
data/sig/revox/client.rbs
CHANGED
data/sig/revox/internal/util.rbs
CHANGED
|
@@ -106,6 +106,16 @@ module Revox
|
|
|
106
106
|
JSON_CONTENT: Regexp
|
|
107
107
|
JSONL_CONTENT: Regexp
|
|
108
108
|
|
|
109
|
+
def encode_query_params: (
|
|
110
|
+
::Hash[Symbol, top] query
|
|
111
|
+
) -> ::Hash[Symbol, top]
|
|
112
|
+
|
|
113
|
+
private def write_query_param_element!: (
|
|
114
|
+
::Hash[Symbol, top] collection,
|
|
115
|
+
String key,
|
|
116
|
+
top element
|
|
117
|
+
) -> nil
|
|
118
|
+
|
|
109
119
|
def self?.write_multipart_content: (
|
|
110
120
|
Enumerator::Yielder y,
|
|
111
121
|
val: top,
|
|
@@ -5,7 +5,7 @@ module Revox
|
|
|
5
5
|
name: String,
|
|
6
6
|
prompt: String,
|
|
7
7
|
background_sound: Revox::Models::AssistantCreateParams::background_sound?,
|
|
8
|
-
calendly: Revox::AssistantCreateParams::Calendly
|
|
8
|
+
calendly: Revox::AssistantCreateParams::Calendly,
|
|
9
9
|
call_retry_config: Revox::AssistantCreateParams::CallRetryConfig,
|
|
10
10
|
end_of_call_sentence: String,
|
|
11
11
|
faq_items: ::Array[Revox::AssistantCreateParams::FaqItem],
|
|
@@ -33,7 +33,11 @@ module Revox
|
|
|
33
33
|
|
|
34
34
|
attr_accessor background_sound: Revox::Models::AssistantCreateParams::background_sound?
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
attr_reader calendly: Revox::AssistantCreateParams::Calendly?
|
|
37
|
+
|
|
38
|
+
def calendly=: (
|
|
39
|
+
Revox::AssistantCreateParams::Calendly
|
|
40
|
+
) -> Revox::AssistantCreateParams::Calendly
|
|
37
41
|
|
|
38
42
|
attr_reader call_retry_config: Revox::AssistantCreateParams::CallRetryConfig?
|
|
39
43
|
|
|
@@ -103,7 +107,7 @@ module Revox
|
|
|
103
107
|
name: String,
|
|
104
108
|
prompt: String,
|
|
105
109
|
?background_sound: Revox::Models::AssistantCreateParams::background_sound?,
|
|
106
|
-
?calendly: Revox::AssistantCreateParams::Calendly
|
|
110
|
+
?calendly: Revox::AssistantCreateParams::Calendly,
|
|
107
111
|
?call_retry_config: Revox::AssistantCreateParams::CallRetryConfig,
|
|
108
112
|
?end_of_call_sentence: String,
|
|
109
113
|
?faq_items: ::Array[Revox::AssistantCreateParams::FaqItem],
|
|
@@ -125,7 +129,7 @@ module Revox
|
|
|
125
129
|
name: String,
|
|
126
130
|
prompt: String,
|
|
127
131
|
background_sound: Revox::Models::AssistantCreateParams::background_sound?,
|
|
128
|
-
calendly: Revox::AssistantCreateParams::Calendly
|
|
132
|
+
calendly: Revox::AssistantCreateParams::Calendly,
|
|
129
133
|
call_retry_config: Revox::AssistantCreateParams::CallRetryConfig,
|
|
130
134
|
end_of_call_sentence: String,
|
|
131
135
|
faq_items: ::Array[Revox::AssistantCreateParams::FaqItem],
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
module Revox
|
|
2
2
|
module Models
|
|
3
3
|
type assistant_delete_params =
|
|
4
|
-
{
|
|
4
|
+
{ id: String } & Revox::Internal::Type::request_parameters
|
|
5
5
|
|
|
6
6
|
class AssistantDeleteParams < Revox::Internal::Type::BaseModel
|
|
7
7
|
extend Revox::Internal::Type::RequestParameters::Converter
|
|
8
8
|
include Revox::Internal::Type::RequestParameters
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
attr_accessor id: String
|
|
11
11
|
|
|
12
|
-
def
|
|
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 }
|
|
13
18
|
end
|
|
14
19
|
end
|
|
15
20
|
end
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
module Revox
|
|
2
2
|
module Models
|
|
3
3
|
type assistant_retrieve_params =
|
|
4
|
-
{
|
|
4
|
+
{ id: String } & Revox::Internal::Type::request_parameters
|
|
5
5
|
|
|
6
6
|
class AssistantRetrieveParams < Revox::Internal::Type::BaseModel
|
|
7
7
|
extend Revox::Internal::Type::RequestParameters::Converter
|
|
8
8
|
include Revox::Internal::Type::RequestParameters
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
attr_accessor id: String
|
|
11
11
|
|
|
12
|
-
def
|
|
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 }
|
|
13
18
|
end
|
|
14
19
|
end
|
|
15
20
|
end
|
|
@@ -2,8 +2,9 @@ module Revox
|
|
|
2
2
|
module Models
|
|
3
3
|
type assistant_update_params =
|
|
4
4
|
{
|
|
5
|
+
id: String,
|
|
5
6
|
background_sound: Revox::Models::AssistantUpdateParams::background_sound?,
|
|
6
|
-
calendly: Revox::AssistantUpdateParams::Calendly
|
|
7
|
+
calendly: Revox::AssistantUpdateParams::Calendly,
|
|
7
8
|
call_retry_config: Revox::AssistantUpdateParams::CallRetryConfig,
|
|
8
9
|
end_of_call_sentence: String,
|
|
9
10
|
faq_items: ::Array[Revox::AssistantUpdateParams::FaqItem],
|
|
@@ -27,9 +28,15 @@ module Revox
|
|
|
27
28
|
extend Revox::Internal::Type::RequestParameters::Converter
|
|
28
29
|
include Revox::Internal::Type::RequestParameters
|
|
29
30
|
|
|
31
|
+
attr_accessor id: String
|
|
32
|
+
|
|
30
33
|
attr_accessor background_sound: Revox::Models::AssistantUpdateParams::background_sound?
|
|
31
34
|
|
|
32
|
-
|
|
35
|
+
attr_reader calendly: Revox::AssistantUpdateParams::Calendly?
|
|
36
|
+
|
|
37
|
+
def calendly=: (
|
|
38
|
+
Revox::AssistantUpdateParams::Calendly
|
|
39
|
+
) -> Revox::AssistantUpdateParams::Calendly
|
|
33
40
|
|
|
34
41
|
attr_reader call_retry_config: Revox::AssistantUpdateParams::CallRetryConfig?
|
|
35
42
|
|
|
@@ -104,8 +111,9 @@ module Revox
|
|
|
104
111
|
def webhook_url=: (String) -> String
|
|
105
112
|
|
|
106
113
|
def initialize: (
|
|
114
|
+
id: String,
|
|
107
115
|
?background_sound: Revox::Models::AssistantUpdateParams::background_sound?,
|
|
108
|
-
?calendly: Revox::AssistantUpdateParams::Calendly
|
|
116
|
+
?calendly: Revox::AssistantUpdateParams::Calendly,
|
|
109
117
|
?call_retry_config: Revox::AssistantUpdateParams::CallRetryConfig,
|
|
110
118
|
?end_of_call_sentence: String,
|
|
111
119
|
?faq_items: ::Array[Revox::AssistantUpdateParams::FaqItem],
|
|
@@ -126,8 +134,9 @@ module Revox
|
|
|
126
134
|
) -> void
|
|
127
135
|
|
|
128
136
|
def to_hash: -> {
|
|
137
|
+
id: String,
|
|
129
138
|
background_sound: Revox::Models::AssistantUpdateParams::background_sound?,
|
|
130
|
-
calendly: Revox::AssistantUpdateParams::Calendly
|
|
139
|
+
calendly: Revox::AssistantUpdateParams::Calendly,
|
|
131
140
|
call_retry_config: Revox::AssistantUpdateParams::CallRetryConfig,
|
|
132
141
|
end_of_call_sentence: String,
|
|
133
142
|
faq_items: ::Array[Revox::AssistantUpdateParams::FaqItem],
|
|
@@ -88,7 +88,7 @@ module Revox
|
|
|
88
88
|
{
|
|
89
89
|
prompt: String,
|
|
90
90
|
background_sound: Revox::Models::CallCreateParams::Assistant::background_sound?,
|
|
91
|
-
calendly: Revox::CallCreateParams::Assistant::Calendly
|
|
91
|
+
calendly: Revox::CallCreateParams::Assistant::Calendly,
|
|
92
92
|
call_retry_config: Revox::CallCreateParams::Assistant::CallRetryConfig,
|
|
93
93
|
end_of_call_sentence: String,
|
|
94
94
|
faq_items: ::Array[Revox::CallCreateParams::Assistant::FaqItem],
|
|
@@ -110,7 +110,11 @@ module Revox
|
|
|
110
110
|
|
|
111
111
|
attr_accessor background_sound: Revox::Models::CallCreateParams::Assistant::background_sound?
|
|
112
112
|
|
|
113
|
-
|
|
113
|
+
attr_reader calendly: Revox::CallCreateParams::Assistant::Calendly?
|
|
114
|
+
|
|
115
|
+
def calendly=: (
|
|
116
|
+
Revox::CallCreateParams::Assistant::Calendly
|
|
117
|
+
) -> Revox::CallCreateParams::Assistant::Calendly
|
|
114
118
|
|
|
115
119
|
attr_reader call_retry_config: Revox::CallCreateParams::Assistant::CallRetryConfig?
|
|
116
120
|
|
|
@@ -179,7 +183,7 @@ module Revox
|
|
|
179
183
|
def initialize: (
|
|
180
184
|
prompt: String,
|
|
181
185
|
?background_sound: Revox::Models::CallCreateParams::Assistant::background_sound?,
|
|
182
|
-
?calendly: Revox::CallCreateParams::Assistant::Calendly
|
|
186
|
+
?calendly: Revox::CallCreateParams::Assistant::Calendly,
|
|
183
187
|
?call_retry_config: Revox::CallCreateParams::Assistant::CallRetryConfig,
|
|
184
188
|
?end_of_call_sentence: String,
|
|
185
189
|
?faq_items: ::Array[Revox::CallCreateParams::Assistant::FaqItem],
|
|
@@ -199,7 +203,7 @@ module Revox
|
|
|
199
203
|
def to_hash: -> {
|
|
200
204
|
prompt: String,
|
|
201
205
|
background_sound: Revox::Models::CallCreateParams::Assistant::background_sound?,
|
|
202
|
-
calendly: Revox::CallCreateParams::Assistant::Calendly
|
|
206
|
+
calendly: Revox::CallCreateParams::Assistant::Calendly,
|
|
203
207
|
call_retry_config: Revox::CallCreateParams::Assistant::CallRetryConfig,
|
|
204
208
|
end_of_call_sentence: String,
|
|
205
209
|
faq_items: ::Array[Revox::CallCreateParams::Assistant::FaqItem],
|