telnyx 5.155.0 → 5.157.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 +16 -0
- data/README.md +1 -1
- data/lib/telnyx/client.rb +1 -0
- data/lib/telnyx/internal/type/union.rb +4 -4
- data/lib/telnyx/models/ai/anthropic/v1_messages_params.rb +209 -0
- data/lib/telnyx/models/ai/anthropic/v1_messages_response.rb +12 -0
- data/lib/telnyx/models/ai/assistant_create_params.rb +2 -2
- data/lib/telnyx/models/ai/assistant_tool.rb +118 -1
- data/lib/telnyx/models/ai/assistant_update_params.rb +2 -2
- data/lib/telnyx/models/ai/assistants/update_assistant.rb +2 -2
- data/lib/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rb +103 -0
- data/lib/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rb +54 -0
- data/lib/telnyx/models/ai/inference_embedding.rb +6 -6
- data/lib/telnyx/models/ai/pay_tool_params.rb +46 -0
- data/lib/telnyx/models/ai/tool_create_params.rb +13 -1
- data/lib/telnyx/models/ai/tool_update_params.rb +13 -1
- data/lib/telnyx/models/ai/transcription_settings.rb +3 -3
- data/lib/telnyx/models/call_dial_params.rb +13 -1
- data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +3 -0
- data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +6 -0
- data/lib/telnyx/models/calls/action_speak_params.rb +6 -0
- data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +3 -0
- data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +3 -0
- data/lib/telnyx/models/calls/telnyx_voice_settings.rb +2 -1
- data/lib/telnyx/models/calls/transcription_config.rb +8 -4
- data/lib/telnyx/models/calls/transcription_engine_parakeet_config.rb +1 -1
- data/lib/telnyx/models/conferences/action_speak_params.rb +6 -0
- data/lib/telnyx/models/conversation_relay_embedded_config.rb +3 -0
- data/lib/telnyx/models/doc_reqs_requirement.rb +29 -4
- data/lib/telnyx/models/inbound_message.rb +278 -28
- data/lib/telnyx/models/inbound_message_webhook_event.rb +70 -3
- data/lib/telnyx/models/managed_account_list_params.rb +45 -3
- data/lib/telnyx/models/models_response.rb +0 -1
- data/lib/telnyx/models/phone_number_delete_response.rb +12 -1
- data/lib/telnyx/models/phone_number_detailed.rb +12 -1
- data/lib/telnyx/models/phone_number_slim_list_response.rb +12 -1
- data/lib/telnyx/models/requirement_list_params.rb +10 -1
- data/lib/telnyx/models/requirement_retrieve_params.rb +14 -1
- data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +1 -1
- data/lib/telnyx/models/storage/cloudf_create_params.rb +56 -0
- data/lib/telnyx/models/storage/cloudf_delete_params.rb +22 -0
- data/lib/telnyx/models/storage/cloudf_list_params.rb +109 -0
- data/lib/telnyx/models/storage/cloudf_list_response.rb +165 -0
- data/lib/telnyx/models/storage/cloudf_retrieve_params.rb +22 -0
- data/lib/telnyx/models/storage/cloudf_update_params.rb +36 -0
- data/lib/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rb +30 -0
- data/lib/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rb +129 -0
- data/lib/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rb +129 -0
- data/lib/telnyx/models/storage/cloudfs_filesystem_status.rb +28 -0
- data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +13 -8
- data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +4 -4
- data/lib/telnyx/models/verify_profile.rb +2 -2
- data/lib/telnyx/models/verify_profile_create_params.rb +2 -2
- data/lib/telnyx/models/verify_profile_update_params.rb +2 -2
- data/lib/telnyx/models.rb +0 -6
- data/lib/telnyx/resources/ai/anthropic/v1.rb +91 -0
- data/lib/telnyx/resources/ai/anthropic.rb +20 -0
- data/lib/telnyx/resources/ai/assistants/versions.rb +1 -1
- data/lib/telnyx/resources/ai/assistants.rb +2 -2
- data/lib/telnyx/resources/ai/chat.rb +0 -81
- data/lib/telnyx/resources/ai/conversations/conversation_insights.rb +55 -0
- data/lib/telnyx/resources/ai/conversations.rb +5 -0
- data/lib/telnyx/resources/ai/tools.rb +8 -2
- data/lib/telnyx/resources/ai.rb +3 -56
- data/lib/telnyx/resources/calls.rb +3 -1
- data/lib/telnyx/resources/messages.rb +1 -32
- data/lib/telnyx/resources/requirements.rb +13 -3
- data/lib/telnyx/resources/storage/cloudfs/actions.rb +54 -0
- data/lib/telnyx/resources/storage/cloudfs.rb +187 -0
- data/lib/telnyx/resources/storage.rb +6 -0
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +20 -7
- data/rbi/telnyx/client.rbi +1 -0
- data/rbi/telnyx/models/ai/anthropic/v1_messages_params.rbi +314 -0
- data/rbi/telnyx/models/ai/anthropic/v1_messages_response.rbi +15 -0
- data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -4
- data/rbi/telnyx/models/ai/assistant_tool.rbi +258 -1
- data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -4
- data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -4
- data/rbi/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rbi +188 -0
- data/rbi/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rbi +94 -0
- data/rbi/telnyx/models/ai/inference_embedding.rbi +18 -6
- data/rbi/telnyx/models/ai/pay_tool_params.rbi +71 -0
- data/rbi/telnyx/models/ai/tool_create_params.rbi +18 -0
- data/rbi/telnyx/models/ai/tool_update_params.rbi +18 -0
- data/rbi/telnyx/models/ai/transcription_settings.rbi +5 -5
- data/rbi/telnyx/models/call_dial_params.rbi +19 -0
- data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +6 -0
- data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +12 -0
- data/rbi/telnyx/models/calls/action_speak_params.rbi +12 -0
- data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +6 -0
- data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +6 -0
- data/rbi/telnyx/models/calls/telnyx_voice_settings.rbi +4 -2
- data/rbi/telnyx/models/calls/transcription_config.rbi +15 -7
- data/rbi/telnyx/models/calls/transcription_engine_parakeet_config.rbi +2 -2
- data/rbi/telnyx/models/conferences/action_speak_params.rbi +12 -0
- data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +6 -0
- data/rbi/telnyx/models/doc_reqs_requirement.rbi +38 -9
- data/rbi/telnyx/models/inbound_message.rbi +324 -58
- data/rbi/telnyx/models/inbound_message_webhook_event.rbi +173 -4
- data/rbi/telnyx/models/managed_account_list_params.rbi +130 -6
- data/rbi/telnyx/models/phone_number_delete_response.rbi +14 -0
- data/rbi/telnyx/models/phone_number_detailed.rbi +14 -0
- data/rbi/telnyx/models/phone_number_slim_list_response.rbi +14 -0
- data/rbi/telnyx/models/requirement_list_params.rbi +13 -0
- data/rbi/telnyx/models/requirement_retrieve_params.rbi +21 -2
- data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +2 -2
- data/rbi/telnyx/models/storage/cloudf_create_params.rbi +103 -0
- data/rbi/telnyx/models/storage/cloudf_delete_params.rbi +40 -0
- data/rbi/telnyx/models/storage/cloudf_list_params.rbi +232 -0
- data/rbi/telnyx/models/storage/cloudf_list_response.rbi +327 -0
- data/rbi/telnyx/models/storage/cloudf_retrieve_params.rbi +40 -0
- data/rbi/telnyx/models/storage/cloudf_update_params.rbi +61 -0
- data/rbi/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rbi +50 -0
- data/rbi/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rbi +229 -0
- data/rbi/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rbi +227 -0
- data/rbi/telnyx/models/storage/cloudfs_filesystem_status.rbi +57 -0
- data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +21 -13
- data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +8 -8
- data/rbi/telnyx/models/verify_profile.rbi +2 -2
- data/rbi/telnyx/models/verify_profile_create_params.rbi +2 -2
- data/rbi/telnyx/models/verify_profile_update_params.rbi +2 -2
- data/rbi/telnyx/models.rbi +0 -7
- data/rbi/telnyx/resources/ai/anthropic/v1.rbi +106 -0
- data/rbi/telnyx/resources/ai/anthropic.rbi +17 -0
- data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -1
- data/rbi/telnyx/resources/ai/assistants.rbi +6 -2
- data/rbi/telnyx/resources/ai/chat.rbi +0 -129
- data/rbi/telnyx/resources/ai/conversations/conversation_insights.rbi +68 -0
- data/rbi/telnyx/resources/ai/conversations.rbi +6 -0
- data/rbi/telnyx/resources/ai/tools.rbi +8 -0
- data/rbi/telnyx/resources/ai.rbi +2 -32
- data/rbi/telnyx/resources/calls/actions.rbi +21 -0
- data/rbi/telnyx/resources/calls.rbi +7 -0
- data/rbi/telnyx/resources/conferences/actions.rbi +6 -0
- data/rbi/telnyx/resources/managed_accounts.rbi +1 -1
- data/rbi/telnyx/resources/messages.rbi +1 -28
- data/rbi/telnyx/resources/requirements.rbi +8 -0
- data/rbi/telnyx/resources/storage/cloudfs/actions.rbi +46 -0
- data/rbi/telnyx/resources/storage/cloudfs.rbi +152 -0
- data/rbi/telnyx/resources/storage.rbi +5 -0
- data/rbi/telnyx/resources/text_to_speech.rbi +11 -9
- data/sig/telnyx/models/ai/anthropic/v1_messages_params.rbs +175 -0
- data/sig/telnyx/models/ai/anthropic/v1_messages_response.rbs +11 -0
- data/sig/telnyx/models/ai/assistant_tool.rbs +108 -0
- data/sig/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rbs +74 -0
- data/sig/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rbs +34 -0
- data/sig/telnyx/models/ai/pay_tool_params.rbs +41 -0
- data/sig/telnyx/models/ai/tool_create_params.rbs +14 -0
- data/sig/telnyx/models/ai/tool_update_params.rbs +14 -0
- data/sig/telnyx/models/ai/transcription_settings.rbs +2 -2
- data/sig/telnyx/models/call_dial_params.rbs +7 -0
- data/sig/telnyx/models/calls/transcription_config.rbs +2 -2
- data/sig/telnyx/models/calls/transcription_engine_parakeet_config.rbs +2 -2
- data/sig/telnyx/models/doc_reqs_requirement.rbs +25 -8
- data/sig/telnyx/models/inbound_message.rbs +204 -35
- data/sig/telnyx/models/inbound_message_webhook_event.rbs +81 -5
- data/sig/telnyx/models/managed_account_list_params.rbs +47 -3
- data/sig/telnyx/models/phone_number_delete_response.rbs +5 -0
- data/sig/telnyx/models/phone_number_detailed.rbs +5 -0
- data/sig/telnyx/models/phone_number_slim_list_response.rbs +5 -0
- data/sig/telnyx/models/requirement_list_params.rbs +8 -1
- data/sig/telnyx/models/requirement_retrieve_params.rbs +12 -2
- data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +2 -2
- data/sig/telnyx/models/storage/cloudf_create_params.rbs +50 -0
- data/sig/telnyx/models/storage/cloudf_delete_params.rbs +22 -0
- data/sig/telnyx/models/storage/cloudf_list_params.rbs +112 -0
- data/sig/telnyx/models/storage/cloudf_list_response.rbs +163 -0
- data/sig/telnyx/models/storage/cloudf_retrieve_params.rbs +22 -0
- data/sig/telnyx/models/storage/cloudf_update_params.rbs +32 -0
- data/sig/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rbs +32 -0
- data/sig/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rbs +115 -0
- data/sig/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rbs +115 -0
- data/sig/telnyx/models/storage/cloudfs_filesystem_status.rbs +21 -0
- data/sig/telnyx/models.rbs +0 -6
- data/sig/telnyx/resources/ai/anthropic/v1.rbs +35 -0
- data/sig/telnyx/resources/ai/anthropic.rbs +11 -0
- data/sig/telnyx/resources/ai/chat.rbs +0 -30
- data/sig/telnyx/resources/ai/conversations/conversation_insights.rbs +20 -0
- data/sig/telnyx/resources/ai/conversations.rbs +2 -0
- data/sig/telnyx/resources/ai/tools.rbs +4 -0
- data/sig/telnyx/resources/ai.rbs +1 -8
- data/sig/telnyx/resources/calls.rbs +1 -0
- data/sig/telnyx/resources/messages.rbs +0 -10
- data/sig/telnyx/resources/requirements.rbs +2 -0
- data/sig/telnyx/resources/storage/cloudfs/actions.rbs +17 -0
- data/sig/telnyx/resources/storage/cloudfs.rbs +45 -0
- data/sig/telnyx/resources/storage.rbs +2 -0
- metadata +62 -23
- data/lib/telnyx/models/ai/chat_create_completion_params.rb +0 -16
- data/lib/telnyx/models/ai/chat_create_completion_response.rb +0 -10
- data/lib/telnyx/models/ai_create_response_deprecated_params.rb +0 -20
- data/lib/telnyx/models/ai_create_response_deprecated_response.rb +0 -8
- data/lib/telnyx/models/ai_retrieve_models_params.rb +0 -14
- data/lib/telnyx/models/message_send_whatsapp_params.rb +0 -71
- data/lib/telnyx/models/message_send_whatsapp_response.rb +0 -178
- data/rbi/telnyx/models/ai/chat_create_completion_params.rbi +0 -32
- data/rbi/telnyx/models/ai/chat_create_completion_response.rbi +0 -13
- data/rbi/telnyx/models/ai_create_response_deprecated_params.rbi +0 -41
- data/rbi/telnyx/models/ai_create_response_deprecated_response.rbi +0 -11
- data/rbi/telnyx/models/ai_retrieve_models_params.rbi +0 -27
- data/rbi/telnyx/models/message_send_whatsapp_params.rbi +0 -124
- data/rbi/telnyx/models/message_send_whatsapp_response.rbi +0 -379
- data/sig/telnyx/models/ai/chat_create_completion_params.rbs +0 -17
- data/sig/telnyx/models/ai/chat_create_completion_response.rbs +0 -9
- data/sig/telnyx/models/ai_create_response_deprecated_params.rbs +0 -24
- data/sig/telnyx/models/ai_create_response_deprecated_response.rbs +0 -7
- data/sig/telnyx/models/ai_retrieve_models_params.rbs +0 -15
- data/sig/telnyx/models/message_send_whatsapp_params.rbs +0 -69
- data/sig/telnyx/models/message_send_whatsapp_response.rbs +0 -191
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Models
|
|
5
|
+
module AI
|
|
6
|
+
module Anthropic
|
|
7
|
+
class V1MessagesParams < Telnyx::Internal::Type::BaseModel
|
|
8
|
+
extend Telnyx::Internal::Type::RequestParameters::Converter
|
|
9
|
+
include Telnyx::Internal::Type::RequestParameters
|
|
10
|
+
|
|
11
|
+
OrHash =
|
|
12
|
+
T.type_alias do
|
|
13
|
+
T.any(
|
|
14
|
+
Telnyx::AI::Anthropic::V1MessagesParams,
|
|
15
|
+
Telnyx::Internal::AnyHash
|
|
16
|
+
)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# The maximum number of tokens to generate in the response.
|
|
20
|
+
sig { returns(Integer) }
|
|
21
|
+
attr_accessor :max_tokens
|
|
22
|
+
|
|
23
|
+
# The messages to send to the model, following the
|
|
24
|
+
# [Anthropic Messages API](https://docs.anthropic.com/en/api/messages) format.
|
|
25
|
+
sig { returns(T::Array[T::Hash[Symbol, T.anything]]) }
|
|
26
|
+
attr_accessor :messages
|
|
27
|
+
|
|
28
|
+
# The model to use for generating the response, for example `zai-org/GLM-5.2` or
|
|
29
|
+
# another model available from the Telnyx models endpoint.
|
|
30
|
+
sig { returns(String) }
|
|
31
|
+
attr_accessor :model
|
|
32
|
+
|
|
33
|
+
# If you are using an external inference provider, this field allows you to pass
|
|
34
|
+
# along a reference to your API key. After creating an
|
|
35
|
+
# [integration secret](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
|
|
36
|
+
# for your API key, pass the secret's `identifier` in this field.
|
|
37
|
+
sig { returns(T.nilable(String)) }
|
|
38
|
+
attr_reader :api_key_ref
|
|
39
|
+
|
|
40
|
+
sig { params(api_key_ref: String).void }
|
|
41
|
+
attr_writer :api_key_ref
|
|
42
|
+
|
|
43
|
+
# The billing group ID to associate with this request.
|
|
44
|
+
sig { returns(T.nilable(String)) }
|
|
45
|
+
attr_reader :billing_group_id
|
|
46
|
+
|
|
47
|
+
sig { params(billing_group_id: String).void }
|
|
48
|
+
attr_writer :billing_group_id
|
|
49
|
+
|
|
50
|
+
# Configuration for model fallback behavior when the primary model is unavailable.
|
|
51
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
52
|
+
attr_reader :fallback_config
|
|
53
|
+
|
|
54
|
+
sig { params(fallback_config: T::Hash[Symbol, T.anything]).void }
|
|
55
|
+
attr_writer :fallback_config
|
|
56
|
+
|
|
57
|
+
# Maximum number of retries for the request.
|
|
58
|
+
sig { returns(T.nilable(Integer)) }
|
|
59
|
+
attr_reader :max_retries
|
|
60
|
+
|
|
61
|
+
sig { params(max_retries: Integer).void }
|
|
62
|
+
attr_writer :max_retries
|
|
63
|
+
|
|
64
|
+
# List of MCP (Model Context Protocol) servers to make available to the model.
|
|
65
|
+
sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) }
|
|
66
|
+
attr_reader :mcp_servers
|
|
67
|
+
|
|
68
|
+
sig do
|
|
69
|
+
params(mcp_servers: T::Array[T::Hash[Symbol, T.anything]]).void
|
|
70
|
+
end
|
|
71
|
+
attr_writer :mcp_servers
|
|
72
|
+
|
|
73
|
+
# An object describing metadata about the request.
|
|
74
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
75
|
+
attr_reader :metadata
|
|
76
|
+
|
|
77
|
+
sig { params(metadata: T::Hash[Symbol, T.anything]).void }
|
|
78
|
+
attr_writer :metadata
|
|
79
|
+
|
|
80
|
+
# Service tier for the request.
|
|
81
|
+
sig { returns(T.nilable(String)) }
|
|
82
|
+
attr_reader :service_tier
|
|
83
|
+
|
|
84
|
+
sig { params(service_tier: String).void }
|
|
85
|
+
attr_writer :service_tier
|
|
86
|
+
|
|
87
|
+
# Custom sequences that will cause the model to stop generating.
|
|
88
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
89
|
+
attr_reader :stop_sequences
|
|
90
|
+
|
|
91
|
+
sig { params(stop_sequences: T::Array[String]).void }
|
|
92
|
+
attr_writer :stop_sequences
|
|
93
|
+
|
|
94
|
+
# Whether to stream the response as Anthropic-format Server-Sent Events.
|
|
95
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
96
|
+
attr_reader :stream
|
|
97
|
+
|
|
98
|
+
sig { params(stream: T::Boolean).void }
|
|
99
|
+
attr_writer :stream
|
|
100
|
+
|
|
101
|
+
# System prompt. Can be a string or an array of content blocks following the
|
|
102
|
+
# Anthropic API format.
|
|
103
|
+
sig do
|
|
104
|
+
returns(
|
|
105
|
+
T.nilable(
|
|
106
|
+
Telnyx::AI::Anthropic::V1MessagesParams::System::Variants
|
|
107
|
+
)
|
|
108
|
+
)
|
|
109
|
+
end
|
|
110
|
+
attr_reader :system_
|
|
111
|
+
|
|
112
|
+
sig do
|
|
113
|
+
params(
|
|
114
|
+
system_: Telnyx::AI::Anthropic::V1MessagesParams::System::Variants
|
|
115
|
+
).void
|
|
116
|
+
end
|
|
117
|
+
attr_writer :system_
|
|
118
|
+
|
|
119
|
+
# Amount of randomness injected into the response. Ranges from 0 to 1.
|
|
120
|
+
sig { returns(T.nilable(Float)) }
|
|
121
|
+
attr_reader :temperature
|
|
122
|
+
|
|
123
|
+
sig { params(temperature: Float).void }
|
|
124
|
+
attr_writer :temperature
|
|
125
|
+
|
|
126
|
+
# Extended thinking configuration for models that support it. Set `type` to
|
|
127
|
+
# `enabled` to turn on extended thinking.
|
|
128
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
129
|
+
attr_reader :thinking
|
|
130
|
+
|
|
131
|
+
sig { params(thinking: T::Hash[Symbol, T.anything]).void }
|
|
132
|
+
attr_writer :thinking
|
|
133
|
+
|
|
134
|
+
# Request timeout in seconds.
|
|
135
|
+
sig { returns(T.nilable(Float)) }
|
|
136
|
+
attr_reader :timeout
|
|
137
|
+
|
|
138
|
+
sig { params(timeout: Float).void }
|
|
139
|
+
attr_writer :timeout
|
|
140
|
+
|
|
141
|
+
# Controls how the model uses tools, following the Anthropic API format.
|
|
142
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
143
|
+
attr_reader :tool_choice
|
|
144
|
+
|
|
145
|
+
sig { params(tool_choice: T::Hash[Symbol, T.anything]).void }
|
|
146
|
+
attr_writer :tool_choice
|
|
147
|
+
|
|
148
|
+
# Definitions of tools that the model may use, following the Anthropic API format.
|
|
149
|
+
sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) }
|
|
150
|
+
attr_reader :tools
|
|
151
|
+
|
|
152
|
+
sig { params(tools: T::Array[T::Hash[Symbol, T.anything]]).void }
|
|
153
|
+
attr_writer :tools
|
|
154
|
+
|
|
155
|
+
# Top-k sampling parameter. Only sample from the top K options for each subsequent
|
|
156
|
+
# token.
|
|
157
|
+
sig { returns(T.nilable(Integer)) }
|
|
158
|
+
attr_reader :top_k
|
|
159
|
+
|
|
160
|
+
sig { params(top_k: Integer).void }
|
|
161
|
+
attr_writer :top_k
|
|
162
|
+
|
|
163
|
+
# Nucleus sampling parameter. Use temperature or top_p, but not both.
|
|
164
|
+
sig { returns(T.nilable(Float)) }
|
|
165
|
+
attr_reader :top_p
|
|
166
|
+
|
|
167
|
+
sig { params(top_p: Float).void }
|
|
168
|
+
attr_writer :top_p
|
|
169
|
+
|
|
170
|
+
sig do
|
|
171
|
+
params(
|
|
172
|
+
max_tokens: Integer,
|
|
173
|
+
messages: T::Array[T::Hash[Symbol, T.anything]],
|
|
174
|
+
model: String,
|
|
175
|
+
api_key_ref: String,
|
|
176
|
+
billing_group_id: String,
|
|
177
|
+
fallback_config: T::Hash[Symbol, T.anything],
|
|
178
|
+
max_retries: Integer,
|
|
179
|
+
mcp_servers: T::Array[T::Hash[Symbol, T.anything]],
|
|
180
|
+
metadata: T::Hash[Symbol, T.anything],
|
|
181
|
+
service_tier: String,
|
|
182
|
+
stop_sequences: T::Array[String],
|
|
183
|
+
stream: T::Boolean,
|
|
184
|
+
system_:
|
|
185
|
+
Telnyx::AI::Anthropic::V1MessagesParams::System::Variants,
|
|
186
|
+
temperature: Float,
|
|
187
|
+
thinking: T::Hash[Symbol, T.anything],
|
|
188
|
+
timeout: Float,
|
|
189
|
+
tool_choice: T::Hash[Symbol, T.anything],
|
|
190
|
+
tools: T::Array[T::Hash[Symbol, T.anything]],
|
|
191
|
+
top_k: Integer,
|
|
192
|
+
top_p: Float,
|
|
193
|
+
request_options: Telnyx::RequestOptions::OrHash
|
|
194
|
+
).returns(T.attached_class)
|
|
195
|
+
end
|
|
196
|
+
def self.new(
|
|
197
|
+
# The maximum number of tokens to generate in the response.
|
|
198
|
+
max_tokens:,
|
|
199
|
+
# The messages to send to the model, following the
|
|
200
|
+
# [Anthropic Messages API](https://docs.anthropic.com/en/api/messages) format.
|
|
201
|
+
messages:,
|
|
202
|
+
# The model to use for generating the response, for example `zai-org/GLM-5.2` or
|
|
203
|
+
# another model available from the Telnyx models endpoint.
|
|
204
|
+
model:,
|
|
205
|
+
# If you are using an external inference provider, this field allows you to pass
|
|
206
|
+
# along a reference to your API key. After creating an
|
|
207
|
+
# [integration secret](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
|
|
208
|
+
# for your API key, pass the secret's `identifier` in this field.
|
|
209
|
+
api_key_ref: nil,
|
|
210
|
+
# The billing group ID to associate with this request.
|
|
211
|
+
billing_group_id: nil,
|
|
212
|
+
# Configuration for model fallback behavior when the primary model is unavailable.
|
|
213
|
+
fallback_config: nil,
|
|
214
|
+
# Maximum number of retries for the request.
|
|
215
|
+
max_retries: nil,
|
|
216
|
+
# List of MCP (Model Context Protocol) servers to make available to the model.
|
|
217
|
+
mcp_servers: nil,
|
|
218
|
+
# An object describing metadata about the request.
|
|
219
|
+
metadata: nil,
|
|
220
|
+
# Service tier for the request.
|
|
221
|
+
service_tier: nil,
|
|
222
|
+
# Custom sequences that will cause the model to stop generating.
|
|
223
|
+
stop_sequences: nil,
|
|
224
|
+
# Whether to stream the response as Anthropic-format Server-Sent Events.
|
|
225
|
+
stream: nil,
|
|
226
|
+
# System prompt. Can be a string or an array of content blocks following the
|
|
227
|
+
# Anthropic API format.
|
|
228
|
+
system_: nil,
|
|
229
|
+
# Amount of randomness injected into the response. Ranges from 0 to 1.
|
|
230
|
+
temperature: nil,
|
|
231
|
+
# Extended thinking configuration for models that support it. Set `type` to
|
|
232
|
+
# `enabled` to turn on extended thinking.
|
|
233
|
+
thinking: nil,
|
|
234
|
+
# Request timeout in seconds.
|
|
235
|
+
timeout: nil,
|
|
236
|
+
# Controls how the model uses tools, following the Anthropic API format.
|
|
237
|
+
tool_choice: nil,
|
|
238
|
+
# Definitions of tools that the model may use, following the Anthropic API format.
|
|
239
|
+
tools: nil,
|
|
240
|
+
# Top-k sampling parameter. Only sample from the top K options for each subsequent
|
|
241
|
+
# token.
|
|
242
|
+
top_k: nil,
|
|
243
|
+
# Nucleus sampling parameter. Use temperature or top_p, but not both.
|
|
244
|
+
top_p: nil,
|
|
245
|
+
request_options: {}
|
|
246
|
+
)
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
sig do
|
|
250
|
+
override.returns(
|
|
251
|
+
{
|
|
252
|
+
max_tokens: Integer,
|
|
253
|
+
messages: T::Array[T::Hash[Symbol, T.anything]],
|
|
254
|
+
model: String,
|
|
255
|
+
api_key_ref: String,
|
|
256
|
+
billing_group_id: String,
|
|
257
|
+
fallback_config: T::Hash[Symbol, T.anything],
|
|
258
|
+
max_retries: Integer,
|
|
259
|
+
mcp_servers: T::Array[T::Hash[Symbol, T.anything]],
|
|
260
|
+
metadata: T::Hash[Symbol, T.anything],
|
|
261
|
+
service_tier: String,
|
|
262
|
+
stop_sequences: T::Array[String],
|
|
263
|
+
stream: T::Boolean,
|
|
264
|
+
system_:
|
|
265
|
+
Telnyx::AI::Anthropic::V1MessagesParams::System::Variants,
|
|
266
|
+
temperature: Float,
|
|
267
|
+
thinking: T::Hash[Symbol, T.anything],
|
|
268
|
+
timeout: Float,
|
|
269
|
+
tool_choice: T::Hash[Symbol, T.anything],
|
|
270
|
+
tools: T::Array[T::Hash[Symbol, T.anything]],
|
|
271
|
+
top_k: Integer,
|
|
272
|
+
top_p: Float,
|
|
273
|
+
request_options: Telnyx::RequestOptions
|
|
274
|
+
}
|
|
275
|
+
)
|
|
276
|
+
end
|
|
277
|
+
def to_hash
|
|
278
|
+
end
|
|
279
|
+
|
|
280
|
+
# System prompt. Can be a string or an array of content blocks following the
|
|
281
|
+
# Anthropic API format.
|
|
282
|
+
module System
|
|
283
|
+
extend Telnyx::Internal::Type::Union
|
|
284
|
+
|
|
285
|
+
Variants =
|
|
286
|
+
T.type_alias do
|
|
287
|
+
T.any(String, T::Array[T::Hash[Symbol, T.anything]])
|
|
288
|
+
end
|
|
289
|
+
|
|
290
|
+
sig do
|
|
291
|
+
override.returns(
|
|
292
|
+
T::Array[
|
|
293
|
+
Telnyx::AI::Anthropic::V1MessagesParams::System::Variants
|
|
294
|
+
]
|
|
295
|
+
)
|
|
296
|
+
end
|
|
297
|
+
def self.variants
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
UnionMember1Array =
|
|
301
|
+
T.let(
|
|
302
|
+
Telnyx::Internal::Type::ArrayOf[
|
|
303
|
+
Telnyx::Internal::Type::HashOf[
|
|
304
|
+
Telnyx::Internal::Type::Unknown
|
|
305
|
+
]
|
|
306
|
+
],
|
|
307
|
+
Telnyx::Internal::Type::Converter
|
|
308
|
+
)
|
|
309
|
+
end
|
|
310
|
+
end
|
|
311
|
+
end
|
|
312
|
+
end
|
|
313
|
+
end
|
|
314
|
+
end
|
|
@@ -262,6 +262,7 @@ module Telnyx
|
|
|
262
262
|
T::Array[
|
|
263
263
|
T.any(
|
|
264
264
|
Telnyx::AI::InferenceEmbeddingWebhookToolParams,
|
|
265
|
+
Telnyx::AI::AssistantTool::ClientSideTool,
|
|
265
266
|
Telnyx::AI::RetrievalTool,
|
|
266
267
|
Telnyx::AI::AssistantTool::Handoff,
|
|
267
268
|
Telnyx::AI::HangupTool,
|
|
@@ -270,7 +271,8 @@ module Telnyx
|
|
|
270
271
|
Telnyx::AI::AssistantTool::Refer,
|
|
271
272
|
Telnyx::AI::AssistantTool::SendDtmf,
|
|
272
273
|
Telnyx::AI::AssistantTool::SendMessage,
|
|
273
|
-
Telnyx::AI::AssistantTool::SkipTurn
|
|
274
|
+
Telnyx::AI::AssistantTool::SkipTurn,
|
|
275
|
+
Telnyx::AI::AssistantTool::Pay
|
|
274
276
|
)
|
|
275
277
|
]
|
|
276
278
|
)
|
|
@@ -284,6 +286,7 @@ module Telnyx
|
|
|
284
286
|
T::Array[
|
|
285
287
|
T.any(
|
|
286
288
|
Telnyx::AI::InferenceEmbeddingWebhookToolParams::OrHash,
|
|
289
|
+
Telnyx::AI::AssistantTool::ClientSideTool::OrHash,
|
|
287
290
|
Telnyx::AI::RetrievalTool::OrHash,
|
|
288
291
|
Telnyx::AI::AssistantTool::Handoff::OrHash,
|
|
289
292
|
Telnyx::AI::HangupTool::OrHash,
|
|
@@ -292,7 +295,8 @@ module Telnyx
|
|
|
292
295
|
Telnyx::AI::AssistantTool::Refer::OrHash,
|
|
293
296
|
Telnyx::AI::AssistantTool::SendDtmf::OrHash,
|
|
294
297
|
Telnyx::AI::AssistantTool::SendMessage::OrHash,
|
|
295
|
-
Telnyx::AI::AssistantTool::SkipTurn::OrHash
|
|
298
|
+
Telnyx::AI::AssistantTool::SkipTurn::OrHash,
|
|
299
|
+
Telnyx::AI::AssistantTool::Pay::OrHash
|
|
296
300
|
)
|
|
297
301
|
]
|
|
298
302
|
).void
|
|
@@ -352,6 +356,7 @@ module Telnyx
|
|
|
352
356
|
T::Array[
|
|
353
357
|
T.any(
|
|
354
358
|
Telnyx::AI::InferenceEmbeddingWebhookToolParams::OrHash,
|
|
359
|
+
Telnyx::AI::AssistantTool::ClientSideTool::OrHash,
|
|
355
360
|
Telnyx::AI::RetrievalTool::OrHash,
|
|
356
361
|
Telnyx::AI::AssistantTool::Handoff::OrHash,
|
|
357
362
|
Telnyx::AI::HangupTool::OrHash,
|
|
@@ -360,7 +365,8 @@ module Telnyx
|
|
|
360
365
|
Telnyx::AI::AssistantTool::Refer::OrHash,
|
|
361
366
|
Telnyx::AI::AssistantTool::SendDtmf::OrHash,
|
|
362
367
|
Telnyx::AI::AssistantTool::SendMessage::OrHash,
|
|
363
|
-
Telnyx::AI::AssistantTool::SkipTurn::OrHash
|
|
368
|
+
Telnyx::AI::AssistantTool::SkipTurn::OrHash,
|
|
369
|
+
Telnyx::AI::AssistantTool::Pay::OrHash
|
|
364
370
|
)
|
|
365
371
|
],
|
|
366
372
|
transcription: Telnyx::AI::TranscriptionSettings::OrHash,
|
|
@@ -498,6 +504,7 @@ module Telnyx
|
|
|
498
504
|
T::Array[
|
|
499
505
|
T.any(
|
|
500
506
|
Telnyx::AI::InferenceEmbeddingWebhookToolParams,
|
|
507
|
+
Telnyx::AI::AssistantTool::ClientSideTool,
|
|
501
508
|
Telnyx::AI::RetrievalTool,
|
|
502
509
|
Telnyx::AI::AssistantTool::Handoff,
|
|
503
510
|
Telnyx::AI::HangupTool,
|
|
@@ -506,7 +513,8 @@ module Telnyx
|
|
|
506
513
|
Telnyx::AI::AssistantTool::Refer,
|
|
507
514
|
Telnyx::AI::AssistantTool::SendDtmf,
|
|
508
515
|
Telnyx::AI::AssistantTool::SendMessage,
|
|
509
|
-
Telnyx::AI::AssistantTool::SkipTurn
|
|
516
|
+
Telnyx::AI::AssistantTool::SkipTurn,
|
|
517
|
+
Telnyx::AI::AssistantTool::Pay
|
|
510
518
|
)
|
|
511
519
|
],
|
|
512
520
|
transcription: Telnyx::AI::TranscriptionSettings,
|
|
@@ -13,6 +13,7 @@ module Telnyx
|
|
|
13
13
|
T.type_alias do
|
|
14
14
|
T.any(
|
|
15
15
|
Telnyx::AI::InferenceEmbeddingWebhookToolParams,
|
|
16
|
+
Telnyx::AI::AssistantTool::ClientSideTool,
|
|
16
17
|
Telnyx::AI::RetrievalTool,
|
|
17
18
|
Telnyx::AI::AssistantTool::Handoff,
|
|
18
19
|
Telnyx::AI::HangupTool,
|
|
@@ -21,10 +22,231 @@ module Telnyx
|
|
|
21
22
|
Telnyx::AI::AssistantTool::Refer,
|
|
22
23
|
Telnyx::AI::AssistantTool::SendDtmf,
|
|
23
24
|
Telnyx::AI::AssistantTool::SendMessage,
|
|
24
|
-
Telnyx::AI::AssistantTool::SkipTurn
|
|
25
|
+
Telnyx::AI::AssistantTool::SkipTurn,
|
|
26
|
+
Telnyx::AI::AssistantTool::Pay
|
|
25
27
|
)
|
|
26
28
|
end
|
|
27
29
|
|
|
30
|
+
class ClientSideTool < Telnyx::Internal::Type::BaseModel
|
|
31
|
+
OrHash =
|
|
32
|
+
T.type_alias do
|
|
33
|
+
T.any(
|
|
34
|
+
Telnyx::AI::AssistantTool::ClientSideTool,
|
|
35
|
+
Telnyx::Internal::AnyHash
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
sig do
|
|
40
|
+
returns(Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool)
|
|
41
|
+
end
|
|
42
|
+
attr_reader :client_side_tool
|
|
43
|
+
|
|
44
|
+
sig do
|
|
45
|
+
params(
|
|
46
|
+
client_side_tool:
|
|
47
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::OrHash
|
|
48
|
+
).void
|
|
49
|
+
end
|
|
50
|
+
attr_writer :client_side_tool
|
|
51
|
+
|
|
52
|
+
sig { returns(Symbol) }
|
|
53
|
+
attr_accessor :type
|
|
54
|
+
|
|
55
|
+
sig do
|
|
56
|
+
params(
|
|
57
|
+
client_side_tool:
|
|
58
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::OrHash,
|
|
59
|
+
type: Symbol
|
|
60
|
+
).returns(T.attached_class)
|
|
61
|
+
end
|
|
62
|
+
def self.new(client_side_tool:, type: :client_side_tool)
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
sig do
|
|
66
|
+
override.returns(
|
|
67
|
+
{
|
|
68
|
+
client_side_tool:
|
|
69
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool,
|
|
70
|
+
type: Symbol
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
def to_hash
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
class ClientSideTool < Telnyx::Internal::Type::BaseModel
|
|
78
|
+
OrHash =
|
|
79
|
+
T.type_alias do
|
|
80
|
+
T.any(
|
|
81
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool,
|
|
82
|
+
Telnyx::Internal::AnyHash
|
|
83
|
+
)
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
# The description of the tool.
|
|
87
|
+
sig { returns(String) }
|
|
88
|
+
attr_accessor :description
|
|
89
|
+
|
|
90
|
+
# The name of the tool.
|
|
91
|
+
sig { returns(String) }
|
|
92
|
+
attr_accessor :name
|
|
93
|
+
|
|
94
|
+
# The parameters the tool accepts, described as a JSON Schema object. See the
|
|
95
|
+
# [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
|
|
96
|
+
# documentation about the format
|
|
97
|
+
sig do
|
|
98
|
+
returns(
|
|
99
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters
|
|
100
|
+
)
|
|
101
|
+
end
|
|
102
|
+
attr_reader :parameters
|
|
103
|
+
|
|
104
|
+
sig do
|
|
105
|
+
params(
|
|
106
|
+
parameters:
|
|
107
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::OrHash
|
|
108
|
+
).void
|
|
109
|
+
end
|
|
110
|
+
attr_writer :parameters
|
|
111
|
+
|
|
112
|
+
sig do
|
|
113
|
+
params(
|
|
114
|
+
description: String,
|
|
115
|
+
name: String,
|
|
116
|
+
parameters:
|
|
117
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::OrHash
|
|
118
|
+
).returns(T.attached_class)
|
|
119
|
+
end
|
|
120
|
+
def self.new(
|
|
121
|
+
# The description of the tool.
|
|
122
|
+
description:,
|
|
123
|
+
# The name of the tool.
|
|
124
|
+
name:,
|
|
125
|
+
# The parameters the tool accepts, described as a JSON Schema object. See the
|
|
126
|
+
# [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
|
|
127
|
+
# documentation about the format
|
|
128
|
+
parameters:
|
|
129
|
+
)
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
sig do
|
|
133
|
+
override.returns(
|
|
134
|
+
{
|
|
135
|
+
description: String,
|
|
136
|
+
name: String,
|
|
137
|
+
parameters:
|
|
138
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters
|
|
139
|
+
}
|
|
140
|
+
)
|
|
141
|
+
end
|
|
142
|
+
def to_hash
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
class Parameters < Telnyx::Internal::Type::BaseModel
|
|
146
|
+
OrHash =
|
|
147
|
+
T.type_alias do
|
|
148
|
+
T.any(
|
|
149
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters,
|
|
150
|
+
Telnyx::Internal::AnyHash
|
|
151
|
+
)
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
# The properties of the parameters.
|
|
155
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
156
|
+
attr_reader :properties
|
|
157
|
+
|
|
158
|
+
sig { params(properties: T::Hash[Symbol, T.anything]).void }
|
|
159
|
+
attr_writer :properties
|
|
160
|
+
|
|
161
|
+
# The required properties of the parameters.
|
|
162
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
163
|
+
attr_reader :required
|
|
164
|
+
|
|
165
|
+
sig { params(required: T::Array[String]).void }
|
|
166
|
+
attr_writer :required
|
|
167
|
+
|
|
168
|
+
sig do
|
|
169
|
+
returns(
|
|
170
|
+
T.nilable(
|
|
171
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type::OrSymbol
|
|
172
|
+
)
|
|
173
|
+
)
|
|
174
|
+
end
|
|
175
|
+
attr_reader :type
|
|
176
|
+
|
|
177
|
+
sig do
|
|
178
|
+
params(
|
|
179
|
+
type:
|
|
180
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type::OrSymbol
|
|
181
|
+
).void
|
|
182
|
+
end
|
|
183
|
+
attr_writer :type
|
|
184
|
+
|
|
185
|
+
# The parameters the tool accepts, described as a JSON Schema object. See the
|
|
186
|
+
# [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
|
|
187
|
+
# documentation about the format
|
|
188
|
+
sig do
|
|
189
|
+
params(
|
|
190
|
+
properties: T::Hash[Symbol, T.anything],
|
|
191
|
+
required: T::Array[String],
|
|
192
|
+
type:
|
|
193
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type::OrSymbol
|
|
194
|
+
).returns(T.attached_class)
|
|
195
|
+
end
|
|
196
|
+
def self.new(
|
|
197
|
+
# The properties of the parameters.
|
|
198
|
+
properties: nil,
|
|
199
|
+
# The required properties of the parameters.
|
|
200
|
+
required: nil,
|
|
201
|
+
type: nil
|
|
202
|
+
)
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
sig do
|
|
206
|
+
override.returns(
|
|
207
|
+
{
|
|
208
|
+
properties: T::Hash[Symbol, T.anything],
|
|
209
|
+
required: T::Array[String],
|
|
210
|
+
type:
|
|
211
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type::OrSymbol
|
|
212
|
+
}
|
|
213
|
+
)
|
|
214
|
+
end
|
|
215
|
+
def to_hash
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
module Type
|
|
219
|
+
extend Telnyx::Internal::Type::Enum
|
|
220
|
+
|
|
221
|
+
TaggedSymbol =
|
|
222
|
+
T.type_alias do
|
|
223
|
+
T.all(
|
|
224
|
+
Symbol,
|
|
225
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type
|
|
226
|
+
)
|
|
227
|
+
end
|
|
228
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
229
|
+
|
|
230
|
+
OBJECT =
|
|
231
|
+
T.let(
|
|
232
|
+
:object,
|
|
233
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type::TaggedSymbol
|
|
234
|
+
)
|
|
235
|
+
|
|
236
|
+
sig do
|
|
237
|
+
override.returns(
|
|
238
|
+
T::Array[
|
|
239
|
+
Telnyx::AI::AssistantTool::ClientSideTool::ClientSideTool::Parameters::Type::TaggedSymbol
|
|
240
|
+
]
|
|
241
|
+
)
|
|
242
|
+
end
|
|
243
|
+
def self.values
|
|
244
|
+
end
|
|
245
|
+
end
|
|
246
|
+
end
|
|
247
|
+
end
|
|
248
|
+
end
|
|
249
|
+
|
|
28
250
|
class Handoff < Telnyx::Internal::Type::BaseModel
|
|
29
251
|
OrHash =
|
|
30
252
|
T.type_alias do
|
|
@@ -2071,6 +2293,41 @@ module Telnyx
|
|
|
2071
2293
|
end
|
|
2072
2294
|
end
|
|
2073
2295
|
|
|
2296
|
+
class Pay < Telnyx::Internal::Type::BaseModel
|
|
2297
|
+
OrHash =
|
|
2298
|
+
T.type_alias do
|
|
2299
|
+
T.any(Telnyx::AI::AssistantTool::Pay, Telnyx::Internal::AnyHash)
|
|
2300
|
+
end
|
|
2301
|
+
|
|
2302
|
+
sig { returns(Telnyx::AI::PayToolParams) }
|
|
2303
|
+
attr_reader :pay
|
|
2304
|
+
|
|
2305
|
+
sig { params(pay: Telnyx::AI::PayToolParams::OrHash).void }
|
|
2306
|
+
attr_writer :pay
|
|
2307
|
+
|
|
2308
|
+
sig { returns(Symbol) }
|
|
2309
|
+
attr_accessor :type
|
|
2310
|
+
|
|
2311
|
+
# (BETA) The pay tool allows the assistant to collect card payments from the
|
|
2312
|
+
# caller via DTMF during the conversation. Recording is automatically paused while
|
|
2313
|
+
# the pay tool is active and resumes when the payment flow completes. The
|
|
2314
|
+
# connector_name must reference a pay connector configured in the Telnyx API.
|
|
2315
|
+
sig do
|
|
2316
|
+
params(
|
|
2317
|
+
pay: Telnyx::AI::PayToolParams::OrHash,
|
|
2318
|
+
type: Symbol
|
|
2319
|
+
).returns(T.attached_class)
|
|
2320
|
+
end
|
|
2321
|
+
def self.new(pay:, type: :pay)
|
|
2322
|
+
end
|
|
2323
|
+
|
|
2324
|
+
sig do
|
|
2325
|
+
override.returns({ pay: Telnyx::AI::PayToolParams, type: Symbol })
|
|
2326
|
+
end
|
|
2327
|
+
def to_hash
|
|
2328
|
+
end
|
|
2329
|
+
end
|
|
2330
|
+
|
|
2074
2331
|
sig { override.returns(T::Array[Telnyx::AI::AssistantTool::Variants]) }
|
|
2075
2332
|
def self.variants
|
|
2076
2333
|
end
|