telnyx 5.60.0 → 5.62.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 +37 -0
- data/README.md +1 -1
- data/lib/telnyx/client.rb +10 -5
- data/lib/telnyx/errors.rb +0 -10
- data/lib/telnyx/lib/webhook_verification.rb +172 -0
- data/lib/telnyx/models/ai/assistants/{tag_delete_params.rb → tag_add_params.rb} +2 -2
- data/lib/telnyx/models/ai/assistants/{tag_delete_response.rb → tag_add_response.rb} +2 -2
- data/lib/telnyx/models/ai/assistants/{tag_create_params.rb → tag_remove_params.rb} +2 -2
- data/lib/telnyx/models/ai/assistants/{tag_create_response.rb → tag_remove_response.rb} +2 -2
- data/lib/telnyx/models/call_cost_webhook_event.rb +242 -0
- data/lib/telnyx/models/calls/action_start_noise_suppression_params.rb +135 -8
- data/lib/telnyx/models/text_to_speech_generate_params.rb +3 -3
- data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +3 -1
- data/lib/telnyx/models/unwrap_webhook_event.rb +3 -1
- data/lib/telnyx/models/voice_clone_create_from_design_params.rb +27 -6
- data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +23 -2
- data/lib/telnyx/models/voice_clone_create_params.rb +79 -0
- data/lib/telnyx/models/voice_clone_create_response.rb +19 -0
- data/lib/telnyx/models/voice_clone_data.rb +41 -1
- data/lib/telnyx/models/voice_clone_list_params.rb +22 -1
- data/lib/telnyx/models/voice_design_create_params.rb +24 -1
- data/lib/telnyx/models/voice_design_data.rb +45 -1
- data/lib/telnyx/models/voice_design_list_response.rb +32 -1
- data/lib/telnyx/models/{voice_design_update_params.rb → voice_design_rename_params.rb} +2 -2
- data/lib/telnyx/models/{voice_design_update_response.rb → voice_design_rename_response.rb} +42 -11
- data/lib/telnyx/models/whatsapp/business_accounts/{phone_number_create_verification_params.rb → phone_number_initialize_verification_params.rb} +5 -5
- data/lib/telnyx/models/whatsapp/template_create_params.rb +530 -0
- data/lib/telnyx/models/whatsapp/{message_template_create_response.rb → template_create_response.rb} +2 -2
- data/lib/telnyx/models/whatsapp/{message_template_list_params.rb → template_list_params.rb} +5 -5
- data/lib/telnyx/models/whatsapp_message_template_delete_params.rb +20 -0
- data/lib/telnyx/models/whatsapp_message_template_retrieve_params.rb +20 -0
- data/lib/telnyx/models/whatsapp_message_template_retrieve_response.rb +16 -0
- data/lib/telnyx/models/whatsapp_message_template_update_params.rb +504 -0
- data/lib/telnyx/models/whatsapp_message_template_update_response.rb +16 -0
- data/lib/telnyx/models/whatsapp_template_data.rb +10 -3
- data/lib/telnyx/models/x402/{credit_account_create_payment_quote_params.rb → credit_account_create_quote_params.rb} +2 -2
- data/lib/telnyx/models/x402/{credit_account_create_payment_quote_response.rb → credit_account_create_quote_response.rb} +31 -32
- data/lib/telnyx/models/x402/{credit_account_settle_payment_params.rb → credit_account_settle_params.rb} +3 -3
- data/lib/telnyx/models/x402/{credit_account_settle_payment_response.rb → credit_account_settle_response.rb} +14 -15
- data/lib/telnyx/models.rb +12 -4
- data/lib/telnyx/resources/ai/assistants/tags.rb +28 -28
- data/lib/telnyx/resources/calls/actions.rb +1 -1
- data/lib/telnyx/resources/voice_clones.rb +38 -31
- data/lib/telnyx/resources/voice_designs.rb +27 -25
- data/lib/telnyx/resources/webhooks.rb +10 -183
- data/lib/telnyx/resources/whatsapp/business_accounts/phone_numbers.rb +5 -5
- data/lib/telnyx/resources/whatsapp/phone_numbers/profile.rb +0 -4
- data/lib/telnyx/resources/whatsapp/templates.rb +91 -0
- data/lib/telnyx/resources/whatsapp.rb +3 -3
- data/lib/telnyx/resources/whatsapp_message_templates.rb +81 -0
- data/lib/telnyx/resources/x402/credit_account.rb +13 -13
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +25 -24
- data/rbi/telnyx/client.rbi +8 -4
- data/rbi/telnyx/models/ai/assistants/{tag_create_params.rbi → tag_add_params.rbi} +2 -2
- data/rbi/telnyx/models/ai/assistants/{tag_delete_response.rbi → tag_add_response.rbi} +2 -2
- data/rbi/telnyx/models/ai/assistants/{tag_delete_params.rbi → tag_remove_params.rbi} +2 -2
- data/rbi/telnyx/models/ai/assistants/{tag_create_response.rbi → tag_remove_response.rbi} +2 -2
- data/rbi/telnyx/models/call_cost_webhook_event.rbi +485 -0
- data/rbi/telnyx/models/calls/action_start_noise_suppression_params.rbi +338 -12
- data/rbi/telnyx/models/text_to_speech_generate_params.rbi +2 -1
- data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +1 -0
- data/rbi/telnyx/models/unwrap_webhook_event.rbi +1 -0
- data/rbi/telnyx/models/voice_clone_create_from_design_params.rbi +51 -0
- data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +67 -2
- data/rbi/telnyx/models/voice_clone_create_params.rbi +142 -0
- data/rbi/telnyx/models/voice_clone_create_response.rbi +36 -0
- data/rbi/telnyx/models/voice_clone_data.rbi +57 -0
- data/rbi/telnyx/models/voice_clone_list_params.rbi +62 -0
- data/rbi/telnyx/models/voice_design_create_params.rbi +60 -0
- data/rbi/telnyx/models/voice_design_data.rbi +59 -0
- data/rbi/telnyx/models/voice_design_list_response.rbi +73 -0
- data/rbi/telnyx/models/{voice_design_update_params.rbi → voice_design_rename_params.rbi} +2 -2
- data/rbi/telnyx/models/{voice_design_update_response.rbi → voice_design_rename_response.rbi} +90 -14
- data/rbi/telnyx/models/whatsapp/business_accounts/{phone_number_create_verification_params.rbi → phone_number_initialize_verification_params.rbi} +10 -10
- data/rbi/telnyx/models/whatsapp/template_create_params.rbi +1177 -0
- data/rbi/telnyx/models/whatsapp/{message_template_create_response.rbi → template_create_response.rbi} +2 -2
- data/rbi/telnyx/models/whatsapp/{message_template_list_params.rbi → template_list_params.rbi} +11 -11
- data/rbi/telnyx/models/whatsapp_message_template_delete_params.rbi +38 -0
- data/rbi/telnyx/models/whatsapp_message_template_retrieve_params.rbi +38 -0
- data/rbi/telnyx/models/whatsapp_message_template_retrieve_response.rbi +33 -0
- data/rbi/telnyx/models/whatsapp_message_template_update_params.rbi +1178 -0
- data/rbi/telnyx/models/whatsapp_message_template_update_response.rbi +33 -0
- data/rbi/telnyx/models/whatsapp_template_data.rbi +10 -2
- data/rbi/telnyx/models/x402/{credit_account_create_payment_quote_params.rbi → credit_account_create_quote_params.rbi} +2 -2
- data/rbi/telnyx/models/x402/{credit_account_create_payment_quote_response.rbi → credit_account_create_quote_response.rbi} +41 -42
- data/rbi/telnyx/models/x402/{credit_account_settle_payment_params.rbi → credit_account_settle_params.rbi} +2 -2
- data/rbi/telnyx/models/x402/{credit_account_settle_payment_response.rbi → credit_account_settle_response.rbi} +21 -26
- data/rbi/telnyx/models.rbi +29 -3
- data/rbi/telnyx/resources/ai/assistants/tags.rbi +13 -13
- data/rbi/telnyx/resources/calls/actions.rbi +4 -3
- data/rbi/telnyx/resources/voice_clones.rbi +36 -25
- data/rbi/telnyx/resources/voice_designs.rbi +21 -17
- data/rbi/telnyx/resources/webhooks.rbi +12 -2
- data/rbi/telnyx/resources/whatsapp/business_accounts/phone_numbers.rbi +2 -2
- data/rbi/telnyx/resources/whatsapp/phone_numbers/profile.rbi +0 -5
- data/rbi/telnyx/resources/whatsapp/templates.rbi +85 -0
- data/rbi/telnyx/resources/whatsapp.rbi +2 -2
- data/rbi/telnyx/resources/whatsapp_message_templates.rbi +67 -0
- data/rbi/telnyx/resources/x402/credit_account.rbi +4 -6
- data/sig/telnyx/client.rbs +4 -2
- data/sig/telnyx/models/ai/assistants/{tag_delete_params.rbs → tag_add_params.rbs} +2 -2
- data/sig/telnyx/models/ai/assistants/{tag_delete_response.rbs → tag_add_response.rbs} +2 -2
- data/sig/telnyx/models/ai/assistants/{tag_create_params.rbs → tag_remove_params.rbs} +2 -2
- data/sig/telnyx/models/ai/assistants/{tag_create_response.rbs → tag_remove_response.rbs} +2 -2
- data/sig/telnyx/models/call_cost_webhook_event.rbs +235 -0
- data/sig/telnyx/models/calls/action_start_noise_suppression_params.rbs +124 -4
- data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +1 -0
- data/sig/telnyx/models/unwrap_webhook_event.rbs +1 -0
- data/sig/telnyx/models/voice_clone_create_from_design_params.rbs +23 -1
- data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +22 -0
- data/sig/telnyx/models/voice_clone_create_params.rbs +75 -0
- data/sig/telnyx/models/voice_clone_create_response.rbs +15 -0
- data/sig/telnyx/models/voice_clone_data.rbs +34 -0
- data/sig/telnyx/models/voice_clone_list_params.rbs +22 -0
- data/sig/telnyx/models/voice_design_create_params.rbs +22 -0
- data/sig/telnyx/models/voice_design_data.rbs +30 -0
- data/sig/telnyx/models/voice_design_list_response.rbs +25 -0
- data/sig/telnyx/models/{voice_design_update_params.rbs → voice_design_rename_params.rbs} +2 -2
- data/sig/telnyx/models/voice_design_rename_response.rbs +104 -0
- data/sig/telnyx/models/whatsapp/business_accounts/{phone_number_create_verification_params.rbs → phone_number_initialize_verification_params.rbs} +9 -9
- data/sig/telnyx/models/whatsapp/template_create_params.rbs +479 -0
- data/sig/telnyx/models/whatsapp/{message_template_update_response.rbs → template_create_response.rbs} +2 -3
- data/sig/telnyx/models/whatsapp/{message_template_list_params.rbs → template_list_params.rbs} +9 -9
- data/sig/telnyx/models/whatsapp_message_template_delete_params.rbs +20 -0
- data/sig/telnyx/models/whatsapp_message_template_retrieve_params.rbs +20 -0
- data/sig/telnyx/models/whatsapp_message_template_retrieve_response.rbs +16 -0
- data/sig/telnyx/models/whatsapp_message_template_update_params.rbs +473 -0
- data/sig/telnyx/models/whatsapp_message_template_update_response.rbs +16 -0
- data/sig/telnyx/models/x402/{credit_account_create_payment_quote_params.rbs → credit_account_create_quote_params.rbs} +2 -2
- data/sig/telnyx/models/x402/{credit_account_create_payment_quote_response.rbs → credit_account_create_quote_response.rbs} +46 -48
- data/sig/telnyx/models/x402/{credit_account_settle_payment_params.rbs → credit_account_settle_params.rbs} +2 -2
- data/sig/telnyx/models/x402/{credit_account_settle_payment_response.rbs → credit_account_settle_response.rbs} +22 -22
- data/sig/telnyx/models.rbs +12 -4
- data/sig/telnyx/resources/ai/assistants/tags.rbs +8 -8
- data/sig/telnyx/resources/voice_clones.rbs +11 -8
- data/sig/telnyx/resources/voice_designs.rbs +7 -6
- data/sig/telnyx/resources/webhooks.rbs +5 -1
- data/sig/telnyx/resources/whatsapp/business_accounts/phone_numbers.rbs +2 -2
- data/sig/telnyx/resources/whatsapp/phone_numbers/profile.rbs +0 -2
- data/sig/telnyx/resources/whatsapp/templates.rbs +28 -0
- data/sig/telnyx/resources/whatsapp.rbs +1 -1
- data/sig/telnyx/resources/whatsapp_message_templates.rbs +21 -0
- data/sig/telnyx/resources/x402/credit_account.rbs +4 -4
- metadata +75 -65
- data/lib/telnyx/models/whatsapp/message_template_create_params.rb +0 -58
- data/lib/telnyx/models/whatsapp/message_template_delete_params.rb +0 -22
- data/lib/telnyx/models/whatsapp/message_template_retrieve_params.rb +0 -22
- data/lib/telnyx/models/whatsapp/message_template_retrieve_response.rb +0 -18
- data/lib/telnyx/models/whatsapp/message_template_update_params.rb +0 -46
- data/lib/telnyx/models/whatsapp/message_template_update_response.rb +0 -18
- data/lib/telnyx/resources/whatsapp/message_templates.rb +0 -149
- data/lib/telnyx/resources/whatsapp/phone_numbers/profile/models.rb +0 -20
- data/rbi/telnyx/models/whatsapp/message_template_create_params.rbi +0 -115
- data/rbi/telnyx/models/whatsapp/message_template_delete_params.rbi +0 -40
- data/rbi/telnyx/models/whatsapp/message_template_retrieve_params.rbi +0 -40
- data/rbi/telnyx/models/whatsapp/message_template_retrieve_response.rbi +0 -35
- data/rbi/telnyx/models/whatsapp/message_template_update_params.rbi +0 -111
- data/rbi/telnyx/models/whatsapp/message_template_update_response.rbi +0 -35
- data/rbi/telnyx/resources/whatsapp/message_templates.rbi +0 -116
- data/rbi/telnyx/resources/whatsapp/phone_numbers/profile/models.rbi +0 -18
- data/sig/telnyx/models/voice_design_update_response.rbs +0 -79
- data/sig/telnyx/models/whatsapp/message_template_create_params.rbs +0 -60
- data/sig/telnyx/models/whatsapp/message_template_create_response.rbs +0 -20
- data/sig/telnyx/models/whatsapp/message_template_delete_params.rbs +0 -22
- data/sig/telnyx/models/whatsapp/message_template_retrieve_params.rbs +0 -22
- data/sig/telnyx/models/whatsapp/message_template_retrieve_response.rbs +0 -20
- data/sig/telnyx/models/whatsapp/message_template_update_params.rbs +0 -58
- data/sig/telnyx/resources/whatsapp/message_templates.rbs +0 -42
- data/sig/telnyx/resources/whatsapp/phone_numbers/profile/models.rbs +0 -13
|
@@ -6,17 +6,6 @@ module Telnyx
|
|
|
6
6
|
class Assistants
|
|
7
7
|
# Configure AI assistant specifications
|
|
8
8
|
class Tags
|
|
9
|
-
# Add Assistant Tag
|
|
10
|
-
sig do
|
|
11
|
-
params(
|
|
12
|
-
assistant_id: String,
|
|
13
|
-
tag: String,
|
|
14
|
-
request_options: Telnyx::RequestOptions::OrHash
|
|
15
|
-
).returns(Telnyx::Models::AI::Assistants::TagCreateResponse)
|
|
16
|
-
end
|
|
17
|
-
def create(assistant_id, tag:, request_options: {})
|
|
18
|
-
end
|
|
19
|
-
|
|
20
9
|
# Get All Tags
|
|
21
10
|
sig do
|
|
22
11
|
params(request_options: Telnyx::RequestOptions::OrHash).returns(
|
|
@@ -26,15 +15,26 @@ module Telnyx
|
|
|
26
15
|
def list(request_options: {})
|
|
27
16
|
end
|
|
28
17
|
|
|
18
|
+
# Add Assistant Tag
|
|
19
|
+
sig do
|
|
20
|
+
params(
|
|
21
|
+
assistant_id: String,
|
|
22
|
+
tag: String,
|
|
23
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
24
|
+
).returns(Telnyx::Models::AI::Assistants::TagAddResponse)
|
|
25
|
+
end
|
|
26
|
+
def add(assistant_id, tag:, request_options: {})
|
|
27
|
+
end
|
|
28
|
+
|
|
29
29
|
# Remove Assistant Tag
|
|
30
30
|
sig do
|
|
31
31
|
params(
|
|
32
32
|
tag: String,
|
|
33
33
|
assistant_id: String,
|
|
34
34
|
request_options: Telnyx::RequestOptions::OrHash
|
|
35
|
-
).returns(Telnyx::Models::AI::Assistants::
|
|
35
|
+
).returns(Telnyx::Models::AI::Assistants::TagRemoveResponse)
|
|
36
36
|
end
|
|
37
|
-
def
|
|
37
|
+
def remove(tag, assistant_id:, request_options: {})
|
|
38
38
|
end
|
|
39
39
|
|
|
40
40
|
# @api private
|
|
@@ -1313,10 +1313,11 @@ module Telnyx
|
|
|
1313
1313
|
# The direction of the audio stream to be noise suppressed.
|
|
1314
1314
|
direction: nil,
|
|
1315
1315
|
# The engine to use for noise suppression. For backward compatibility, engines A,
|
|
1316
|
-
# B, and
|
|
1317
|
-
# C - Krisp
|
|
1316
|
+
# B, C, and D are also supported, but are deprecated: A - Denoiser B -
|
|
1317
|
+
# DeepFilterNet C - Krisp D - AiCoustics
|
|
1318
1318
|
noise_suppression_engine: nil,
|
|
1319
|
-
# Configuration parameters for noise suppression engines.
|
|
1319
|
+
# Configuration parameters for noise suppression engines. Different engines
|
|
1320
|
+
# support different parameters.
|
|
1320
1321
|
noise_suppression_engine_config: nil,
|
|
1321
1322
|
request_options: {}
|
|
1322
1323
|
)
|
|
@@ -5,6 +5,33 @@ module Telnyx
|
|
|
5
5
|
# Capture and manage voice identities as clones for use in text-to-speech
|
|
6
6
|
# synthesis.
|
|
7
7
|
class VoiceClones
|
|
8
|
+
# Creates a new voice clone by capturing the voice identity of an existing voice
|
|
9
|
+
# design. The clone can then be used for text-to-speech synthesis.
|
|
10
|
+
sig do
|
|
11
|
+
params(
|
|
12
|
+
gender: Telnyx::VoiceCloneCreateParams::Gender::OrSymbol,
|
|
13
|
+
language: String,
|
|
14
|
+
name: String,
|
|
15
|
+
voice_design_id: String,
|
|
16
|
+
provider: Telnyx::VoiceCloneCreateParams::Provider::OrSymbol,
|
|
17
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
18
|
+
).returns(Telnyx::Models::VoiceCloneCreateResponse)
|
|
19
|
+
end
|
|
20
|
+
def create(
|
|
21
|
+
# Gender of the voice clone.
|
|
22
|
+
gender:,
|
|
23
|
+
# ISO 639-1 language code for the clone (e.g. `en`, `fr`, `de`).
|
|
24
|
+
language:,
|
|
25
|
+
# Name for the voice clone.
|
|
26
|
+
name:,
|
|
27
|
+
# UUID of the source voice design to clone.
|
|
28
|
+
voice_design_id:,
|
|
29
|
+
# Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
|
|
30
|
+
provider: nil,
|
|
31
|
+
request_options: {}
|
|
32
|
+
)
|
|
33
|
+
end
|
|
34
|
+
|
|
8
35
|
# Updates the name, language, or gender of a voice clone.
|
|
9
36
|
sig do
|
|
10
37
|
params(
|
|
@@ -32,6 +59,8 @@ module Telnyx
|
|
|
32
59
|
sig do
|
|
33
60
|
params(
|
|
34
61
|
filter_name: String,
|
|
62
|
+
filter_provider:
|
|
63
|
+
Telnyx::VoiceCloneListParams::FilterProvider::OrSymbol,
|
|
35
64
|
page_number: Integer,
|
|
36
65
|
page_size: Integer,
|
|
37
66
|
sort: Telnyx::VoiceCloneListParams::Sort::OrSymbol,
|
|
@@ -43,6 +72,8 @@ module Telnyx
|
|
|
43
72
|
def list(
|
|
44
73
|
# Case-insensitive substring filter on the name field.
|
|
45
74
|
filter_name: nil,
|
|
75
|
+
# Filter by voice synthesis provider. Case-insensitive.
|
|
76
|
+
filter_provider: nil,
|
|
46
77
|
# Page number for pagination (1-based).
|
|
47
78
|
page_number: nil,
|
|
48
79
|
# Number of results per page.
|
|
@@ -64,30 +95,6 @@ module Telnyx
|
|
|
64
95
|
)
|
|
65
96
|
end
|
|
66
97
|
|
|
67
|
-
# Creates a new voice clone by capturing the voice identity of an existing voice
|
|
68
|
-
# design. The clone can then be used for text-to-speech synthesis.
|
|
69
|
-
sig do
|
|
70
|
-
params(
|
|
71
|
-
gender: Telnyx::VoiceCloneCreateFromDesignParams::Gender::OrSymbol,
|
|
72
|
-
language: String,
|
|
73
|
-
name: String,
|
|
74
|
-
voice_design_id: String,
|
|
75
|
-
request_options: Telnyx::RequestOptions::OrHash
|
|
76
|
-
).returns(Telnyx::Models::VoiceCloneCreateFromDesignResponse)
|
|
77
|
-
end
|
|
78
|
-
def create_from_design(
|
|
79
|
-
# Gender of the voice clone.
|
|
80
|
-
gender:,
|
|
81
|
-
# ISO 639-1 language code for the clone (e.g. `en`, `fr`, `de`).
|
|
82
|
-
language:,
|
|
83
|
-
# Name for the voice clone.
|
|
84
|
-
name:,
|
|
85
|
-
# UUID of the source voice design to clone.
|
|
86
|
-
voice_design_id:,
|
|
87
|
-
request_options: {}
|
|
88
|
-
)
|
|
89
|
-
end
|
|
90
|
-
|
|
91
98
|
# Creates a new voice clone by uploading an audio file directly. Supported
|
|
92
99
|
# formats: WAV, MP3, FLAC, OGG, M4A. For best results, provide 5–10 seconds of
|
|
93
100
|
# clear speech. Maximum file size: 2MB.
|
|
@@ -98,6 +105,8 @@ module Telnyx
|
|
|
98
105
|
name: String,
|
|
99
106
|
gender: Telnyx::VoiceCloneCreateFromUploadParams::Gender::OrSymbol,
|
|
100
107
|
label: String,
|
|
108
|
+
provider:
|
|
109
|
+
Telnyx::VoiceCloneCreateFromUploadParams::Provider::OrSymbol,
|
|
101
110
|
ref_text: String,
|
|
102
111
|
request_options: Telnyx::RequestOptions::OrHash
|
|
103
112
|
).returns(Telnyx::Models::VoiceCloneCreateFromUploadResponse)
|
|
@@ -105,7 +114,7 @@ module Telnyx
|
|
|
105
114
|
def create_from_upload(
|
|
106
115
|
# Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
|
|
107
116
|
# For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
|
|
108
|
-
# size:
|
|
117
|
+
# size: 5MB for Telnyx, 20MB for Minimax.
|
|
109
118
|
audio_file:,
|
|
110
119
|
# ISO 639-1 language code (e.g. `en`, `fr`) or `auto` for automatic detection.
|
|
111
120
|
language:,
|
|
@@ -116,6 +125,8 @@ module Telnyx
|
|
|
116
125
|
# Optional custom label describing the voice style. If omitted, falls back to the
|
|
117
126
|
# source design's prompt text.
|
|
118
127
|
label: nil,
|
|
128
|
+
# Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
|
|
129
|
+
provider: nil,
|
|
119
130
|
# Optional transcript of the audio file. Providing this improves clone quality.
|
|
120
131
|
ref_text: nil,
|
|
121
132
|
request_options: {}
|
|
@@ -14,6 +14,7 @@ module Telnyx
|
|
|
14
14
|
language: String,
|
|
15
15
|
max_new_tokens: Integer,
|
|
16
16
|
name: String,
|
|
17
|
+
provider: Telnyx::VoiceDesignCreateParams::Provider::OrSymbol,
|
|
17
18
|
repetition_penalty: Float,
|
|
18
19
|
temperature: Float,
|
|
19
20
|
top_k: Integer,
|
|
@@ -37,6 +38,9 @@ module Telnyx
|
|
|
37
38
|
# (`voice_design_id` is not provided); ignored when adding a version. Cannot be a
|
|
38
39
|
# UUID.
|
|
39
40
|
name: nil,
|
|
41
|
+
# Voice synthesis provider. `telnyx` uses the Qwen3TTS model; `minimax` uses the
|
|
42
|
+
# Minimax speech models. Case-insensitive. Defaults to `telnyx`.
|
|
43
|
+
provider: nil,
|
|
40
44
|
# Repetition penalty to reduce repeated patterns in generated audio. Default:
|
|
41
45
|
# 1.05.
|
|
42
46
|
repetition_penalty: nil,
|
|
@@ -75,23 +79,6 @@ module Telnyx
|
|
|
75
79
|
)
|
|
76
80
|
end
|
|
77
81
|
|
|
78
|
-
# Updates the name of a voice design. All versions retain their other properties.
|
|
79
|
-
sig do
|
|
80
|
-
params(
|
|
81
|
-
id: String,
|
|
82
|
-
name: String,
|
|
83
|
-
request_options: Telnyx::RequestOptions::OrHash
|
|
84
|
-
).returns(Telnyx::Models::VoiceDesignUpdateResponse)
|
|
85
|
-
end
|
|
86
|
-
def update(
|
|
87
|
-
# The voice design UUID or name.
|
|
88
|
-
id,
|
|
89
|
-
# New name for the voice design.
|
|
90
|
-
name:,
|
|
91
|
-
request_options: {}
|
|
92
|
-
)
|
|
93
|
-
end
|
|
94
|
-
|
|
95
82
|
# Returns a paginated list of voice designs belonging to the authenticated
|
|
96
83
|
# account.
|
|
97
84
|
sig do
|
|
@@ -170,6 +157,23 @@ module Telnyx
|
|
|
170
157
|
)
|
|
171
158
|
end
|
|
172
159
|
|
|
160
|
+
# Updates the name of a voice design. All versions retain their other properties.
|
|
161
|
+
sig do
|
|
162
|
+
params(
|
|
163
|
+
id: String,
|
|
164
|
+
name: String,
|
|
165
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
166
|
+
).returns(Telnyx::Models::VoiceDesignRenameResponse)
|
|
167
|
+
end
|
|
168
|
+
def rename(
|
|
169
|
+
# The voice design UUID or name.
|
|
170
|
+
id,
|
|
171
|
+
# New name for the voice design.
|
|
172
|
+
name:,
|
|
173
|
+
request_options: {}
|
|
174
|
+
)
|
|
175
|
+
end
|
|
176
|
+
|
|
173
177
|
# @api private
|
|
174
178
|
sig { params(client: Telnyx::Client).returns(T.attached_class) }
|
|
175
179
|
def self.new(client:)
|
|
@@ -13,6 +13,7 @@ module Telnyx
|
|
|
13
13
|
Telnyx::CallBridgedWebhookEvent,
|
|
14
14
|
Telnyx::CallConversationEndedWebhookEvent,
|
|
15
15
|
Telnyx::CallConversationInsightsGeneratedWebhookEvent,
|
|
16
|
+
Telnyx::CallCostWebhookEvent,
|
|
16
17
|
Telnyx::CallDtmfReceivedWebhookEvent,
|
|
17
18
|
Telnyx::CallEnqueuedWebhookEvent,
|
|
18
19
|
Telnyx::CallForkStartedWebhookEvent,
|
|
@@ -76,7 +77,11 @@ module Telnyx
|
|
|
76
77
|
end
|
|
77
78
|
|
|
78
79
|
sig do
|
|
79
|
-
params(
|
|
80
|
+
params(
|
|
81
|
+
payload: String,
|
|
82
|
+
headers: T::Hash[String, String],
|
|
83
|
+
key: T.nilable(String)
|
|
84
|
+
).returns(
|
|
80
85
|
T.any(
|
|
81
86
|
Telnyx::CallAIGatherEndedWebhookEvent,
|
|
82
87
|
Telnyx::CallAIGatherMessageHistoryUpdatedWebhookEvent,
|
|
@@ -85,6 +90,7 @@ module Telnyx
|
|
|
85
90
|
Telnyx::CallBridgedWebhookEvent,
|
|
86
91
|
Telnyx::CallConversationEndedWebhookEvent,
|
|
87
92
|
Telnyx::CallConversationInsightsGeneratedWebhookEvent,
|
|
93
|
+
Telnyx::CallCostWebhookEvent,
|
|
88
94
|
Telnyx::CallDtmfReceivedWebhookEvent,
|
|
89
95
|
Telnyx::CallEnqueuedWebhookEvent,
|
|
90
96
|
Telnyx::CallForkStartedWebhookEvent,
|
|
@@ -143,7 +149,11 @@ module Telnyx
|
|
|
143
149
|
end
|
|
144
150
|
def unwrap(
|
|
145
151
|
# The raw webhook payload as a string
|
|
146
|
-
payload
|
|
152
|
+
payload,
|
|
153
|
+
# The raw HTTP headers that came with the payload
|
|
154
|
+
headers:,
|
|
155
|
+
# The webhook signing key
|
|
156
|
+
key: @client.public_key
|
|
147
157
|
)
|
|
148
158
|
end
|
|
149
159
|
|
|
@@ -35,11 +35,11 @@ module Telnyx
|
|
|
35
35
|
phone_number: String,
|
|
36
36
|
language: String,
|
|
37
37
|
verification_method:
|
|
38
|
-
Telnyx::Whatsapp::BusinessAccounts::
|
|
38
|
+
Telnyx::Whatsapp::BusinessAccounts::PhoneNumberInitializeVerificationParams::VerificationMethod::OrSymbol,
|
|
39
39
|
request_options: Telnyx::RequestOptions::OrHash
|
|
40
40
|
).void
|
|
41
41
|
end
|
|
42
|
-
def
|
|
42
|
+
def initialize_verification(
|
|
43
43
|
# Whatsapp Business Account ID
|
|
44
44
|
id,
|
|
45
45
|
display_name:,
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Resources
|
|
5
|
+
class Whatsapp
|
|
6
|
+
# Manage Whatsapp message templates
|
|
7
|
+
class Templates
|
|
8
|
+
# Create a Whatsapp message template
|
|
9
|
+
sig do
|
|
10
|
+
params(
|
|
11
|
+
category:
|
|
12
|
+
Telnyx::Whatsapp::TemplateCreateParams::Category::OrSymbol,
|
|
13
|
+
components:
|
|
14
|
+
T::Array[
|
|
15
|
+
T.any(
|
|
16
|
+
Telnyx::Whatsapp::TemplateCreateParams::Component::WhatsappTemplateHeaderComponent::OrHash,
|
|
17
|
+
Telnyx::Whatsapp::TemplateCreateParams::Component::WhatsappTemplateBodyComponent::OrHash,
|
|
18
|
+
Telnyx::Whatsapp::TemplateCreateParams::Component::WhatsappTemplateFooterComponent::OrHash,
|
|
19
|
+
Telnyx::Whatsapp::TemplateCreateParams::Component::WhatsappTemplateButtonsComponent::OrHash,
|
|
20
|
+
Telnyx::Whatsapp::TemplateCreateParams::Component::WhatsappTemplateCarouselComponent::OrHash
|
|
21
|
+
)
|
|
22
|
+
],
|
|
23
|
+
language: String,
|
|
24
|
+
name: String,
|
|
25
|
+
waba_id: String,
|
|
26
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
27
|
+
).returns(Telnyx::Models::Whatsapp::TemplateCreateResponse)
|
|
28
|
+
end
|
|
29
|
+
def create(
|
|
30
|
+
# Template category: AUTHENTICATION, UTILITY, or MARKETING.
|
|
31
|
+
category:,
|
|
32
|
+
# Template components defining message structure. Passed through to Meta Graph
|
|
33
|
+
# API. Templates with variables must include example values. Supports HEADER,
|
|
34
|
+
# BODY, FOOTER, BUTTONS, CAROUSEL and any future Meta component types.
|
|
35
|
+
components:,
|
|
36
|
+
# Template language code (e.g. en_US, es, pt_BR).
|
|
37
|
+
language:,
|
|
38
|
+
# Template name. Lowercase letters, numbers, and underscores only.
|
|
39
|
+
name:,
|
|
40
|
+
# The WhatsApp Business Account ID.
|
|
41
|
+
waba_id:,
|
|
42
|
+
request_options: {}
|
|
43
|
+
)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# List Whatsapp message templates
|
|
47
|
+
sig do
|
|
48
|
+
params(
|
|
49
|
+
filter_category:
|
|
50
|
+
Telnyx::Whatsapp::TemplateListParams::FilterCategory::OrSymbol,
|
|
51
|
+
filter_search: String,
|
|
52
|
+
filter_status: String,
|
|
53
|
+
filter_waba_id: String,
|
|
54
|
+
page_number: Integer,
|
|
55
|
+
page_size: Integer,
|
|
56
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
57
|
+
).returns(
|
|
58
|
+
Telnyx::Internal::DefaultFlatPagination[
|
|
59
|
+
Telnyx::WhatsappTemplateData
|
|
60
|
+
]
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
def list(
|
|
64
|
+
# Filter by category
|
|
65
|
+
filter_category: nil,
|
|
66
|
+
# Search templates by name
|
|
67
|
+
filter_search: nil,
|
|
68
|
+
# Filter by template status
|
|
69
|
+
filter_status: nil,
|
|
70
|
+
# Filter by WABA ID
|
|
71
|
+
filter_waba_id: nil,
|
|
72
|
+
page_number: nil,
|
|
73
|
+
page_size: nil,
|
|
74
|
+
request_options: {}
|
|
75
|
+
)
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# @api private
|
|
79
|
+
sig { params(client: Telnyx::Client).returns(T.attached_class) }
|
|
80
|
+
def self.new(client:)
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -8,8 +8,8 @@ module Telnyx
|
|
|
8
8
|
attr_reader :business_accounts
|
|
9
9
|
|
|
10
10
|
# Manage Whatsapp message templates
|
|
11
|
-
sig { returns(Telnyx::Resources::Whatsapp::
|
|
12
|
-
attr_reader :
|
|
11
|
+
sig { returns(Telnyx::Resources::Whatsapp::Templates) }
|
|
12
|
+
attr_reader :templates
|
|
13
13
|
|
|
14
14
|
# Manage Whatsapp phone numbers
|
|
15
15
|
sig { returns(Telnyx::Resources::Whatsapp::PhoneNumbers) }
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Resources
|
|
5
|
+
# Manage Whatsapp message templates
|
|
6
|
+
class WhatsappMessageTemplates
|
|
7
|
+
# Get a Whatsapp message template by ID
|
|
8
|
+
sig do
|
|
9
|
+
params(
|
|
10
|
+
id: String,
|
|
11
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
12
|
+
).returns(Telnyx::Models::WhatsappMessageTemplateRetrieveResponse)
|
|
13
|
+
end
|
|
14
|
+
def retrieve(
|
|
15
|
+
# Whatsapp message template ID
|
|
16
|
+
id,
|
|
17
|
+
request_options: {}
|
|
18
|
+
)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# Update a Whatsapp message template
|
|
22
|
+
sig do
|
|
23
|
+
params(
|
|
24
|
+
id: String,
|
|
25
|
+
category:
|
|
26
|
+
Telnyx::WhatsappMessageTemplateUpdateParams::Category::OrSymbol,
|
|
27
|
+
components:
|
|
28
|
+
T::Array[
|
|
29
|
+
T.any(
|
|
30
|
+
Telnyx::WhatsappMessageTemplateUpdateParams::Component::WhatsappTemplateHeaderComponent::OrHash,
|
|
31
|
+
Telnyx::WhatsappMessageTemplateUpdateParams::Component::WhatsappTemplateBodyComponent::OrHash,
|
|
32
|
+
Telnyx::WhatsappMessageTemplateUpdateParams::Component::WhatsappTemplateFooterComponent::OrHash,
|
|
33
|
+
Telnyx::WhatsappMessageTemplateUpdateParams::Component::WhatsappTemplateButtonsComponent::OrHash,
|
|
34
|
+
Telnyx::WhatsappMessageTemplateUpdateParams::Component::WhatsappTemplateCarouselComponent::OrHash
|
|
35
|
+
)
|
|
36
|
+
],
|
|
37
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
38
|
+
).returns(Telnyx::Models::WhatsappMessageTemplateUpdateResponse)
|
|
39
|
+
end
|
|
40
|
+
def update(
|
|
41
|
+
# Whatsapp message template ID
|
|
42
|
+
id,
|
|
43
|
+
category: nil,
|
|
44
|
+
# Updated template components. Same structure as the create request.
|
|
45
|
+
components: nil,
|
|
46
|
+
request_options: {}
|
|
47
|
+
)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Delete a Whatsapp message template
|
|
51
|
+
sig do
|
|
52
|
+
params(id: String, request_options: Telnyx::RequestOptions::OrHash).void
|
|
53
|
+
end
|
|
54
|
+
def delete(
|
|
55
|
+
# Whatsapp message template ID
|
|
56
|
+
id,
|
|
57
|
+
request_options: {}
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# @api private
|
|
62
|
+
sig { params(client: Telnyx::Client).returns(T.attached_class) }
|
|
63
|
+
def self.new(client:)
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
@@ -13,11 +13,9 @@ module Telnyx
|
|
|
13
13
|
params(
|
|
14
14
|
amount_usd: String,
|
|
15
15
|
request_options: Telnyx::RequestOptions::OrHash
|
|
16
|
-
).returns(
|
|
17
|
-
Telnyx::Models::X402::CreditAccountCreatePaymentQuoteResponse
|
|
18
|
-
)
|
|
16
|
+
).returns(Telnyx::Models::X402::CreditAccountCreateQuoteResponse)
|
|
19
17
|
end
|
|
20
|
-
def
|
|
18
|
+
def create_quote(
|
|
21
19
|
# Amount in USD to fund (minimum 5.00, maximum 10000.00).
|
|
22
20
|
amount_usd:,
|
|
23
21
|
request_options: {}
|
|
@@ -34,9 +32,9 @@ module Telnyx
|
|
|
34
32
|
body_payment_signature: String,
|
|
35
33
|
header_payment_signature: String,
|
|
36
34
|
request_options: Telnyx::RequestOptions::OrHash
|
|
37
|
-
).returns(Telnyx::Models::X402::
|
|
35
|
+
).returns(Telnyx::Models::X402::CreditAccountSettleResponse)
|
|
38
36
|
end
|
|
39
|
-
def
|
|
37
|
+
def settle(
|
|
40
38
|
# Body param: The quote ID to settle.
|
|
41
39
|
id:,
|
|
42
40
|
# Body param: Base64-encoded signed payment authorization (x402 PaymentPayload).
|
data/sig/telnyx/client.rbs
CHANGED
|
@@ -322,16 +322,18 @@ module Telnyx
|
|
|
322
322
|
|
|
323
323
|
attr_reader session_analysis: Telnyx::Resources::SessionAnalysis
|
|
324
324
|
|
|
325
|
-
attr_reader traffic_policy_profiles: Telnyx::Resources::TrafficPolicyProfiles
|
|
326
|
-
|
|
327
325
|
attr_reader whatsapp: Telnyx::Resources::Whatsapp
|
|
328
326
|
|
|
327
|
+
attr_reader whatsapp_message_templates: Telnyx::Resources::WhatsappMessageTemplates
|
|
328
|
+
|
|
329
329
|
attr_reader x402: Telnyx::Resources::X402
|
|
330
330
|
|
|
331
331
|
attr_reader voice_clones: Telnyx::Resources::VoiceClones
|
|
332
332
|
|
|
333
333
|
attr_reader voice_designs: Telnyx::Resources::VoiceDesigns
|
|
334
334
|
|
|
335
|
+
attr_reader traffic_policy_profiles: Telnyx::Resources::TrafficPolicyProfiles
|
|
336
|
+
|
|
335
337
|
private def auth_headers: -> ::Hash[String, String]
|
|
336
338
|
|
|
337
339
|
private def bearer_auth: -> ::Hash[String, String]
|
|
@@ -2,11 +2,11 @@ module Telnyx
|
|
|
2
2
|
module Models
|
|
3
3
|
module AI
|
|
4
4
|
module Assistants
|
|
5
|
-
type
|
|
5
|
+
type tag_add_params =
|
|
6
6
|
{ assistant_id: String, tag: String }
|
|
7
7
|
& Telnyx::Internal::Type::request_parameters
|
|
8
8
|
|
|
9
|
-
class
|
|
9
|
+
class TagAddParams < Telnyx::Internal::Type::BaseModel
|
|
10
10
|
extend Telnyx::Internal::Type::RequestParameters::Converter
|
|
11
11
|
include Telnyx::Internal::Type::RequestParameters
|
|
12
12
|
|
|
@@ -2,9 +2,9 @@ module Telnyx
|
|
|
2
2
|
module Models
|
|
3
3
|
module AI
|
|
4
4
|
module Assistants
|
|
5
|
-
type
|
|
5
|
+
type tag_add_response = { tags: ::Array[String] }
|
|
6
6
|
|
|
7
|
-
class
|
|
7
|
+
class TagAddResponse < Telnyx::Internal::Type::BaseModel
|
|
8
8
|
attr_accessor tags: ::Array[String]
|
|
9
9
|
|
|
10
10
|
def initialize: (tags: ::Array[String]) -> void
|
|
@@ -2,11 +2,11 @@ module Telnyx
|
|
|
2
2
|
module Models
|
|
3
3
|
module AI
|
|
4
4
|
module Assistants
|
|
5
|
-
type
|
|
5
|
+
type tag_remove_params =
|
|
6
6
|
{ assistant_id: String, tag: String }
|
|
7
7
|
& Telnyx::Internal::Type::request_parameters
|
|
8
8
|
|
|
9
|
-
class
|
|
9
|
+
class TagRemoveParams < Telnyx::Internal::Type::BaseModel
|
|
10
10
|
extend Telnyx::Internal::Type::RequestParameters::Converter
|
|
11
11
|
include Telnyx::Internal::Type::RequestParameters
|
|
12
12
|
|
|
@@ -2,9 +2,9 @@ module Telnyx
|
|
|
2
2
|
module Models
|
|
3
3
|
module AI
|
|
4
4
|
module Assistants
|
|
5
|
-
type
|
|
5
|
+
type tag_remove_response = { tags: ::Array[String] }
|
|
6
6
|
|
|
7
|
-
class
|
|
7
|
+
class TagRemoveResponse < Telnyx::Internal::Type::BaseModel
|
|
8
8
|
attr_accessor tags: ::Array[String]
|
|
9
9
|
|
|
10
10
|
def initialize: (tags: ::Array[String]) -> void
|