telnyx 5.111.0 → 5.112.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 +8 -0
- data/README.md +1 -1
- data/lib/telnyx/models/ai/assistant_create_params.rb +178 -9
- data/lib/telnyx/models/ai/assistant_tool.rb +14 -14
- data/lib/telnyx/models/ai/assistant_update_params.rb +178 -9
- data/lib/telnyx/models/ai/assistants/canary_deploy.rb +123 -3
- data/lib/telnyx/models/ai/assistants/canary_deploy_response.rb +125 -3
- data/lib/telnyx/models/ai/assistants/update_assistant.rb +179 -9
- data/lib/telnyx/models/ai/inference_embedding.rb +177 -9
- data/lib/telnyx/models/ai/openai_list_models_response.rb +210 -3
- data/lib/telnyx/models/ai/transfer_tool.rb +9 -7
- data/lib/telnyx/models/ai_retrieve_models_response.rb +210 -3
- data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +23 -4
- data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +23 -4
- data/lib/telnyx/models/calls/action_speak_params.rb +23 -4
- data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +23 -4
- data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +491 -0
- data/lib/telnyx/models/calls/action_start_conversation_relay_response.rb +37 -0
- data/lib/telnyx/models/calls/action_stop_conversation_relay_params.rb +44 -0
- data/lib/telnyx/models/calls/action_stop_conversation_relay_response.rb +18 -0
- data/lib/telnyx/models/calls/transcription_start_request.rb +167 -5
- data/lib/telnyx/models/conferences/action_speak_params.rb +23 -4
- data/lib/telnyx/models/network_list_interfaces_response.rb +2 -112
- data/lib/telnyx/models/public_internet_gateway_create_response.rb +8 -3
- data/lib/telnyx/models/public_internet_gateway_delete_response.rb +8 -3
- data/lib/telnyx/models/public_internet_gateway_list_response.rb +10 -0
- data/lib/telnyx/models/public_internet_gateway_retrieve_response.rb +8 -3
- data/lib/telnyx/models/text_to_speech_generate_params.rb +6 -6
- data/lib/telnyx/models/uac_connection_create_params.rb +255 -9
- data/lib/telnyx/models/uac_connection_create_response.rb +878 -3
- data/lib/telnyx/models/uac_connection_delete_response.rb +878 -3
- data/lib/telnyx/models/uac_connection_list_response.rb +876 -0
- data/lib/telnyx/models/uac_connection_retrieve_response.rb +879 -3
- data/lib/telnyx/models/uac_connection_update_params.rb +255 -9
- data/lib/telnyx/models/uac_connection_update_response.rb +878 -3
- data/lib/telnyx/models/virtual_cross_connect_create_response.rb +8 -3
- data/lib/telnyx/models/virtual_cross_connect_delete_response.rb +8 -3
- data/lib/telnyx/models/virtual_cross_connect_list_response.rb +10 -0
- data/lib/telnyx/models/virtual_cross_connect_retrieve_response.rb +8 -3
- data/lib/telnyx/models/virtual_cross_connect_update_response.rb +8 -3
- data/lib/telnyx/models/wireguard_interface_create_response.rb +8 -3
- data/lib/telnyx/models/wireguard_interface_delete_response.rb +8 -3
- data/lib/telnyx/models/wireguard_interface_list_response.rb +10 -0
- data/lib/telnyx/models/wireguard_interface_retrieve_response.rb +8 -3
- data/lib/telnyx/models.rb +0 -20
- data/lib/telnyx/resources/ai/assistants/canary_deploys.rb +2 -2
- data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
- data/lib/telnyx/resources/ai/assistants.rb +6 -6
- data/lib/telnyx/resources/calls/actions.rb +101 -5
- data/lib/telnyx/resources/conferences/actions.rb +1 -1
- data/lib/telnyx/resources/public_internet_gateways.rb +2 -2
- data/lib/telnyx/resources/uac_connections.rb +8 -8
- data/lib/telnyx/resources/virtual_cross_connects.rb +2 -2
- data/lib/telnyx/resources/wireguard_interfaces.rb +2 -2
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +8 -22
- data/rbi/telnyx/models/ai/assistant_create_params.rbi +352 -12
- data/rbi/telnyx/models/ai/assistant_tool.rbi +10 -10
- data/rbi/telnyx/models/ai/assistant_update_params.rbi +352 -12
- data/rbi/telnyx/models/ai/assistants/canary_deploy.rbi +290 -4
- data/rbi/telnyx/models/ai/assistants/canary_deploy_response.rbi +301 -3
- data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +366 -12
- data/rbi/telnyx/models/ai/inference_embedding.rbi +351 -12
- data/rbi/telnyx/models/ai/openai_list_models_response.rbi +315 -3
- data/rbi/telnyx/models/ai/transfer_tool.rbi +5 -5
- data/rbi/telnyx/models/ai_retrieve_models_response.rbi +310 -3
- data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +41 -5
- data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +41 -5
- data/rbi/telnyx/models/calls/action_speak_params.rbi +41 -5
- data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +41 -5
- data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +1075 -0
- data/rbi/telnyx/models/calls/action_start_conversation_relay_response.rbi +95 -0
- data/rbi/telnyx/models/calls/action_stop_conversation_relay_params.rbi +72 -0
- data/rbi/telnyx/models/calls/action_stop_conversation_relay_response.rbi +39 -0
- data/rbi/telnyx/models/calls/transcription_start_request.rbi +480 -10
- data/rbi/telnyx/models/conferences/action_speak_params.rbi +41 -5
- data/rbi/telnyx/models/network_list_interfaces_response.rbi +4 -181
- data/rbi/telnyx/models/public_internet_gateway_create_response.rbi +38 -6
- data/rbi/telnyx/models/public_internet_gateway_delete_response.rbi +38 -6
- data/rbi/telnyx/models/public_internet_gateway_list_response.rbi +23 -0
- data/rbi/telnyx/models/public_internet_gateway_retrieve_response.rbi +38 -6
- data/rbi/telnyx/models/text_to_speech_generate_params.rbi +6 -6
- data/rbi/telnyx/models/uac_connection_create_params.rbi +516 -12
- data/rbi/telnyx/models/uac_connection_create_response.rbi +1756 -4
- data/rbi/telnyx/models/uac_connection_delete_response.rbi +1756 -4
- data/rbi/telnyx/models/uac_connection_list_response.rbi +1727 -0
- data/rbi/telnyx/models/uac_connection_retrieve_response.rbi +1756 -4
- data/rbi/telnyx/models/uac_connection_update_params.rbi +516 -12
- data/rbi/telnyx/models/uac_connection_update_response.rbi +1756 -4
- data/rbi/telnyx/models/virtual_cross_connect_create_response.rbi +36 -6
- data/rbi/telnyx/models/virtual_cross_connect_delete_response.rbi +36 -6
- data/rbi/telnyx/models/virtual_cross_connect_list_response.rbi +23 -0
- data/rbi/telnyx/models/virtual_cross_connect_retrieve_response.rbi +38 -6
- data/rbi/telnyx/models/virtual_cross_connect_update_response.rbi +36 -6
- data/rbi/telnyx/models/wireguard_interface_create_response.rbi +36 -6
- data/rbi/telnyx/models/wireguard_interface_delete_response.rbi +36 -6
- data/rbi/telnyx/models/wireguard_interface_list_response.rbi +23 -0
- data/rbi/telnyx/models/wireguard_interface_retrieve_response.rbi +36 -6
- data/rbi/telnyx/models.rbi +0 -20
- data/rbi/telnyx/resources/ai/assistants/canary_deploys.rbi +4 -2
- data/rbi/telnyx/resources/ai/assistants/versions.rbi +9 -3
- data/rbi/telnyx/resources/ai/assistants.rbi +10 -6
- data/rbi/telnyx/resources/calls/actions.rbi +152 -6
- data/rbi/telnyx/resources/conferences/actions.rbi +1 -1
- data/rbi/telnyx/resources/public_internet_gateways.rbi +1 -1
- data/rbi/telnyx/resources/uac_connections.rbi +13 -7
- data/rbi/telnyx/resources/virtual_cross_connects.rbi +1 -1
- data/rbi/telnyx/resources/wireguard_interfaces.rbi +1 -1
- data/sig/telnyx/models/ai/assistant_create_params.rbs +149 -18
- data/sig/telnyx/models/ai/assistant_tool.rbs +8 -8
- data/sig/telnyx/models/ai/assistant_update_params.rbs +149 -18
- data/sig/telnyx/models/ai/assistants/canary_deploy.rbs +113 -6
- data/sig/telnyx/models/ai/assistants/canary_deploy_response.rbs +109 -4
- data/sig/telnyx/models/ai/assistants/update_assistant.rbs +152 -18
- data/sig/telnyx/models/ai/inference_embedding.rbs +149 -18
- data/sig/telnyx/models/ai/openai_list_models_response.rbs +149 -4
- data/sig/telnyx/models/ai/transfer_tool.rbs +4 -4
- data/sig/telnyx/models/ai_retrieve_models_response.rbs +149 -4
- data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +15 -1
- data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +15 -1
- data/sig/telnyx/models/calls/action_speak_params.rbs +15 -1
- data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +15 -1
- data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +416 -0
- data/sig/telnyx/models/calls/action_start_conversation_relay_response.rbs +45 -0
- data/sig/telnyx/models/calls/action_stop_conversation_relay_params.rbs +38 -0
- data/sig/telnyx/models/calls/action_stop_conversation_relay_response.rbs +20 -0
- data/sig/telnyx/models/calls/transcription_start_request.rbs +184 -2
- data/sig/telnyx/models/conferences/action_speak_params.rbs +15 -1
- data/sig/telnyx/models/network_list_interfaces_response.rbs +4 -106
- data/sig/telnyx/models/public_internet_gateway_create_response.rbs +18 -6
- data/sig/telnyx/models/public_internet_gateway_delete_response.rbs +18 -6
- data/sig/telnyx/models/public_internet_gateway_list_response.rbs +11 -0
- data/sig/telnyx/models/public_internet_gateway_retrieve_response.rbs +18 -6
- data/sig/telnyx/models/text_to_speech_generate_params.rbs +6 -6
- data/sig/telnyx/models/uac_connection_create_params.rbs +211 -17
- data/sig/telnyx/models/uac_connection_create_response.rbs +731 -5
- data/sig/telnyx/models/uac_connection_delete_response.rbs +731 -5
- data/sig/telnyx/models/uac_connection_list_response.rbs +722 -0
- data/sig/telnyx/models/uac_connection_retrieve_response.rbs +731 -5
- data/sig/telnyx/models/uac_connection_update_params.rbs +211 -17
- data/sig/telnyx/models/uac_connection_update_response.rbs +731 -5
- data/sig/telnyx/models/virtual_cross_connect_create_response.rbs +18 -6
- data/sig/telnyx/models/virtual_cross_connect_delete_response.rbs +18 -6
- data/sig/telnyx/models/virtual_cross_connect_list_response.rbs +11 -0
- data/sig/telnyx/models/virtual_cross_connect_retrieve_response.rbs +18 -6
- data/sig/telnyx/models/virtual_cross_connect_update_response.rbs +18 -6
- data/sig/telnyx/models/wireguard_interface_create_response.rbs +18 -6
- data/sig/telnyx/models/wireguard_interface_delete_response.rbs +18 -6
- data/sig/telnyx/models/wireguard_interface_list_response.rbs +11 -0
- data/sig/telnyx/models/wireguard_interface_retrieve_response.rbs +18 -6
- data/sig/telnyx/models.rbs +0 -20
- data/sig/telnyx/resources/ai/assistants/canary_deploys.rbs +2 -2
- data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
- data/sig/telnyx/resources/ai/assistants.rbs +6 -6
- data/sig/telnyx/resources/calls/actions.rbs +29 -0
- data/sig/telnyx/resources/public_internet_gateways.rbs +1 -1
- data/sig/telnyx/resources/uac_connections.rbs +7 -7
- data/sig/telnyx/resources/virtual_cross_connects.rbs +1 -1
- data/sig/telnyx/resources/wireguard_interfaces.rbs +1 -1
- metadata +26 -68
- data/lib/telnyx/models/ai/assistant_integration.rb +0 -38
- data/lib/telnyx/models/ai/assistant_mcp_server.rb +0 -35
- data/lib/telnyx/models/ai/assistants/clause.rb +0 -54
- data/lib/telnyx/models/ai/assistants/rollout_slot.rb +0 -27
- data/lib/telnyx/models/ai/assistants/rule_input.rb +0 -40
- data/lib/telnyx/models/ai/assistants/rule_output.rb +0 -40
- data/lib/telnyx/models/ai/assistants/serve.rb +0 -33
- data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +0 -47
- data/lib/telnyx/models/ai/start_speaking_plan.rb +0 -37
- data/lib/telnyx/models/ai/transcription_endpointing_plan.rb +0 -39
- data/lib/telnyx/models/calls/transcription_engine_assemblyai_config.rb +0 -64
- data/lib/telnyx/models/calls/transcription_engine_xai_config.rb +0 -108
- data/lib/telnyx/models/model_metadata.rb +0 -212
- data/lib/telnyx/models/public_internet_gateway_read.rb +0 -83
- data/lib/telnyx/models/uac_connection.rb +0 -412
- data/lib/telnyx/models/uac_external_settings.rb +0 -101
- data/lib/telnyx/models/uac_inbound.rb +0 -210
- data/lib/telnyx/models/uac_internal_settings.rb +0 -25
- data/lib/telnyx/models/uac_outbound.rb +0 -131
- data/lib/telnyx/models/virtual_cross_connect_combined.rb +0 -212
- data/lib/telnyx/models/wireguard_interface_read.rb +0 -136
- data/lib/telnyx/models/xai_voice_settings.rb +0 -36
- data/rbi/telnyx/models/ai/assistant_integration.rbi +0 -60
- data/rbi/telnyx/models/ai/assistant_mcp_server.rbi +0 -51
- data/rbi/telnyx/models/ai/assistants/clause.rbi +0 -91
- data/rbi/telnyx/models/ai/assistants/rollout_slot.rbi +0 -36
- data/rbi/telnyx/models/ai/assistants/rule_input.rbi +0 -73
- data/rbi/telnyx/models/ai/assistants/rule_output.rbi +0 -73
- data/rbi/telnyx/models/ai/assistants/serve.rbi +0 -61
- data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +0 -83
- data/rbi/telnyx/models/ai/start_speaking_plan.rbi +0 -70
- data/rbi/telnyx/models/ai/transcription_endpointing_plan.rbi +0 -71
- data/rbi/telnyx/models/calls/transcription_engine_assemblyai_config.rbi +0 -155
- data/rbi/telnyx/models/calls/transcription_engine_xai_config.rbi +0 -329
- data/rbi/telnyx/models/model_metadata.rbi +0 -272
- data/rbi/telnyx/models/public_internet_gateway_read.rbi +0 -128
- data/rbi/telnyx/models/uac_connection.rbi +0 -684
- data/rbi/telnyx/models/uac_external_settings.rbi +0 -146
- data/rbi/telnyx/models/uac_inbound.rbi +0 -410
- data/rbi/telnyx/models/uac_internal_settings.rbi +0 -39
- data/rbi/telnyx/models/uac_outbound.rbi +0 -224
- data/rbi/telnyx/models/virtual_cross_connect_combined.rbi +0 -345
- data/rbi/telnyx/models/wireguard_interface_read.rbi +0 -213
- data/rbi/telnyx/models/xai_voice_settings.rbi +0 -64
- data/sig/telnyx/models/ai/assistant_integration.rbs +0 -26
- data/sig/telnyx/models/ai/assistant_mcp_server.rbs +0 -19
- data/sig/telnyx/models/ai/assistants/clause.rbs +0 -46
- data/sig/telnyx/models/ai/assistants/rollout_slot.rbs +0 -19
- data/sig/telnyx/models/ai/assistants/rule_input.rbs +0 -33
- data/sig/telnyx/models/ai/assistants/rule_output.rbs +0 -33
- data/sig/telnyx/models/ai/assistants/serve.rbs +0 -35
- data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +0 -40
- data/sig/telnyx/models/ai/start_speaking_plan.rbs +0 -33
- data/sig/telnyx/models/ai/transcription_endpointing_plan.rbs +0 -38
- data/sig/telnyx/models/calls/transcription_engine_assemblyai_config.rbs +0 -62
- data/sig/telnyx/models/calls/transcription_engine_xai_config.rbs +0 -130
- data/sig/telnyx/models/model_metadata.rbs +0 -142
- data/sig/telnyx/models/public_internet_gateway_read.rbs +0 -80
- data/sig/telnyx/models/uac_connection.rbs +0 -338
- data/sig/telnyx/models/uac_external_settings.rbs +0 -73
- data/sig/telnyx/models/uac_inbound.rbs +0 -190
- data/sig/telnyx/models/uac_internal_settings.rbs +0 -15
- data/sig/telnyx/models/uac_outbound.rbs +0 -113
- data/sig/telnyx/models/virtual_cross_connect_combined.rbs +0 -190
- data/sig/telnyx/models/wireguard_interface_read.rbs +0 -127
- data/sig/telnyx/models/xai_voice_settings.rbs +0 -34
|
@@ -124,12 +124,17 @@ module Telnyx
|
|
|
124
124
|
# integrations is at `/ai/integrations`; the user's connected integrations are at
|
|
125
125
|
# `/ai/integrations/connections`. Each item references a catalog integration by
|
|
126
126
|
# `integration_id`.
|
|
127
|
-
sig
|
|
127
|
+
sig do
|
|
128
|
+
returns(
|
|
129
|
+
T.nilable(T::Array[Telnyx::AI::InferenceEmbedding::Integration])
|
|
130
|
+
)
|
|
131
|
+
end
|
|
128
132
|
attr_reader :integrations
|
|
129
133
|
|
|
130
134
|
sig do
|
|
131
135
|
params(
|
|
132
|
-
integrations:
|
|
136
|
+
integrations:
|
|
137
|
+
T::Array[Telnyx::AI::InferenceEmbedding::Integration::OrHash]
|
|
133
138
|
).void
|
|
134
139
|
end
|
|
135
140
|
attr_writer :integrations
|
|
@@ -141,14 +146,16 @@ module Telnyx
|
|
|
141
146
|
# `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
|
|
142
147
|
# `eager_eot_threshold`).
|
|
143
148
|
sig do
|
|
144
|
-
returns(
|
|
149
|
+
returns(
|
|
150
|
+
T.nilable(Telnyx::AI::InferenceEmbedding::InterruptionSettings)
|
|
151
|
+
)
|
|
145
152
|
end
|
|
146
153
|
attr_reader :interruption_settings
|
|
147
154
|
|
|
148
155
|
sig do
|
|
149
156
|
params(
|
|
150
157
|
interruption_settings:
|
|
151
|
-
Telnyx::AI::
|
|
158
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::OrHash
|
|
152
159
|
).void
|
|
153
160
|
end
|
|
154
161
|
attr_writer :interruption_settings
|
|
@@ -167,12 +174,17 @@ module Telnyx
|
|
|
167
174
|
|
|
168
175
|
# MCP servers attached to the assistant. Create MCP servers with
|
|
169
176
|
# `/ai/mcp_servers`, then reference them by `id` here.
|
|
170
|
-
sig
|
|
177
|
+
sig do
|
|
178
|
+
returns(
|
|
179
|
+
T.nilable(T::Array[Telnyx::AI::InferenceEmbedding::McpServer])
|
|
180
|
+
)
|
|
181
|
+
end
|
|
171
182
|
attr_reader :mcp_servers
|
|
172
183
|
|
|
173
184
|
sig do
|
|
174
185
|
params(
|
|
175
|
-
mcp_servers:
|
|
186
|
+
mcp_servers:
|
|
187
|
+
T::Array[Telnyx::AI::InferenceEmbedding::McpServer::OrHash]
|
|
176
188
|
).void
|
|
177
189
|
end
|
|
178
190
|
attr_writer :mcp_servers
|
|
@@ -330,11 +342,13 @@ module Telnyx
|
|
|
330
342
|
greeting: String,
|
|
331
343
|
import_metadata: Telnyx::AI::ImportMetadata::OrHash,
|
|
332
344
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
333
|
-
integrations:
|
|
345
|
+
integrations:
|
|
346
|
+
T::Array[Telnyx::AI::InferenceEmbedding::Integration::OrHash],
|
|
334
347
|
interruption_settings:
|
|
335
|
-
Telnyx::AI::
|
|
348
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::OrHash,
|
|
336
349
|
llm_api_key_ref: String,
|
|
337
|
-
mcp_servers:
|
|
350
|
+
mcp_servers:
|
|
351
|
+
T::Array[Telnyx::AI::InferenceEmbedding::McpServer::OrHash],
|
|
338
352
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
339
353
|
observability_settings: Telnyx::AI::Observability::OrHash,
|
|
340
354
|
post_conversation_settings:
|
|
@@ -483,11 +497,12 @@ module Telnyx
|
|
|
483
497
|
greeting: String,
|
|
484
498
|
import_metadata: Telnyx::AI::ImportMetadata,
|
|
485
499
|
insight_settings: Telnyx::AI::InsightSettings,
|
|
486
|
-
integrations:
|
|
500
|
+
integrations:
|
|
501
|
+
T::Array[Telnyx::AI::InferenceEmbedding::Integration],
|
|
487
502
|
interruption_settings:
|
|
488
|
-
Telnyx::AI::
|
|
503
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings,
|
|
489
504
|
llm_api_key_ref: String,
|
|
490
|
-
mcp_servers: T::Array[Telnyx::AI::
|
|
505
|
+
mcp_servers: T::Array[Telnyx::AI::InferenceEmbedding::McpServer],
|
|
491
506
|
messaging_settings: Telnyx::AI::MessagingSettings,
|
|
492
507
|
observability_settings: Telnyx::AI::Observability,
|
|
493
508
|
post_conversation_settings: Telnyx::AI::PostConversationSettings,
|
|
@@ -507,6 +522,330 @@ module Telnyx
|
|
|
507
522
|
end
|
|
508
523
|
def to_hash
|
|
509
524
|
end
|
|
525
|
+
|
|
526
|
+
class Integration < Telnyx::Internal::Type::BaseModel
|
|
527
|
+
OrHash =
|
|
528
|
+
T.type_alias do
|
|
529
|
+
T.any(
|
|
530
|
+
Telnyx::AI::InferenceEmbedding::Integration,
|
|
531
|
+
Telnyx::Internal::AnyHash
|
|
532
|
+
)
|
|
533
|
+
end
|
|
534
|
+
|
|
535
|
+
# Catalog integration ID to attach. This is the `id` from the integrations catalog
|
|
536
|
+
# at `/ai/integrations` (the same value also appears as `integration_id` on
|
|
537
|
+
# entries returned by `/ai/integrations/connections`). It is **not** the
|
|
538
|
+
# connection-level `id` from `/ai/integrations/connections`.
|
|
539
|
+
sig { returns(String) }
|
|
540
|
+
attr_accessor :integration_id
|
|
541
|
+
|
|
542
|
+
# Optional per-assistant allowlist of integration tool names. When omitted or
|
|
543
|
+
# empty, all tools allowed by the connected integration are available to the
|
|
544
|
+
# assistant.
|
|
545
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
546
|
+
attr_reader :allowed_list
|
|
547
|
+
|
|
548
|
+
sig { params(allowed_list: T::Array[String]).void }
|
|
549
|
+
attr_writer :allowed_list
|
|
550
|
+
|
|
551
|
+
# Reference to a connected integration attached to an assistant. Discover
|
|
552
|
+
# available integrations with `/ai/integrations` and connected integrations with
|
|
553
|
+
# `/ai/integrations/connections`.
|
|
554
|
+
sig do
|
|
555
|
+
params(
|
|
556
|
+
integration_id: String,
|
|
557
|
+
allowed_list: T::Array[String]
|
|
558
|
+
).returns(T.attached_class)
|
|
559
|
+
end
|
|
560
|
+
def self.new(
|
|
561
|
+
# Catalog integration ID to attach. This is the `id` from the integrations catalog
|
|
562
|
+
# at `/ai/integrations` (the same value also appears as `integration_id` on
|
|
563
|
+
# entries returned by `/ai/integrations/connections`). It is **not** the
|
|
564
|
+
# connection-level `id` from `/ai/integrations/connections`.
|
|
565
|
+
integration_id:,
|
|
566
|
+
# Optional per-assistant allowlist of integration tool names. When omitted or
|
|
567
|
+
# empty, all tools allowed by the connected integration are available to the
|
|
568
|
+
# assistant.
|
|
569
|
+
allowed_list: nil
|
|
570
|
+
)
|
|
571
|
+
end
|
|
572
|
+
|
|
573
|
+
sig do
|
|
574
|
+
override.returns(
|
|
575
|
+
{ integration_id: String, allowed_list: T::Array[String] }
|
|
576
|
+
)
|
|
577
|
+
end
|
|
578
|
+
def to_hash
|
|
579
|
+
end
|
|
580
|
+
end
|
|
581
|
+
|
|
582
|
+
class InterruptionSettings < Telnyx::Internal::Type::BaseModel
|
|
583
|
+
OrHash =
|
|
584
|
+
T.type_alias do
|
|
585
|
+
T.any(
|
|
586
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings,
|
|
587
|
+
Telnyx::Internal::AnyHash
|
|
588
|
+
)
|
|
589
|
+
end
|
|
590
|
+
|
|
591
|
+
# When true, disables user interruptions while the assistant greeting is playing.
|
|
592
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
593
|
+
attr_reader :disable_greeting_interruption
|
|
594
|
+
|
|
595
|
+
sig { params(disable_greeting_interruption: T::Boolean).void }
|
|
596
|
+
attr_writer :disable_greeting_interruption
|
|
597
|
+
|
|
598
|
+
# Whether users can interrupt the assistant while it is speaking.
|
|
599
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
600
|
+
attr_reader :enable
|
|
601
|
+
|
|
602
|
+
sig { params(enable: T::Boolean).void }
|
|
603
|
+
attr_writer :enable
|
|
604
|
+
|
|
605
|
+
# Controls when the assistant starts speaking after the user stops. These
|
|
606
|
+
# thresholds primarily apply to non turn-taking transcription models. For
|
|
607
|
+
# turn-taking models like `deepgram/flux`, end-of-turn detection is driven by the
|
|
608
|
+
# transcription end-of-turn settings under `transcription.settings` instead.
|
|
609
|
+
sig do
|
|
610
|
+
returns(
|
|
611
|
+
T.nilable(
|
|
612
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan
|
|
613
|
+
)
|
|
614
|
+
)
|
|
615
|
+
end
|
|
616
|
+
attr_reader :start_speaking_plan
|
|
617
|
+
|
|
618
|
+
sig do
|
|
619
|
+
params(
|
|
620
|
+
start_speaking_plan:
|
|
621
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::OrHash
|
|
622
|
+
).void
|
|
623
|
+
end
|
|
624
|
+
attr_writer :start_speaking_plan
|
|
625
|
+
|
|
626
|
+
# Settings for interruptions and how the assistant decides the user has finished
|
|
627
|
+
# speaking. These timings are most relevant when using non turn-taking
|
|
628
|
+
# transcription models. For turn-taking models like `deepgram/flux`, end-of-turn
|
|
629
|
+
# behavior is controlled by the transcription end-of-turn settings under
|
|
630
|
+
# `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
|
|
631
|
+
# `eager_eot_threshold`).
|
|
632
|
+
sig do
|
|
633
|
+
params(
|
|
634
|
+
disable_greeting_interruption: T::Boolean,
|
|
635
|
+
enable: T::Boolean,
|
|
636
|
+
start_speaking_plan:
|
|
637
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::OrHash
|
|
638
|
+
).returns(T.attached_class)
|
|
639
|
+
end
|
|
640
|
+
def self.new(
|
|
641
|
+
# When true, disables user interruptions while the assistant greeting is playing.
|
|
642
|
+
disable_greeting_interruption: nil,
|
|
643
|
+
# Whether users can interrupt the assistant while it is speaking.
|
|
644
|
+
enable: nil,
|
|
645
|
+
# Controls when the assistant starts speaking after the user stops. These
|
|
646
|
+
# thresholds primarily apply to non turn-taking transcription models. For
|
|
647
|
+
# turn-taking models like `deepgram/flux`, end-of-turn detection is driven by the
|
|
648
|
+
# transcription end-of-turn settings under `transcription.settings` instead.
|
|
649
|
+
start_speaking_plan: nil
|
|
650
|
+
)
|
|
651
|
+
end
|
|
652
|
+
|
|
653
|
+
sig do
|
|
654
|
+
override.returns(
|
|
655
|
+
{
|
|
656
|
+
disable_greeting_interruption: T::Boolean,
|
|
657
|
+
enable: T::Boolean,
|
|
658
|
+
start_speaking_plan:
|
|
659
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan
|
|
660
|
+
}
|
|
661
|
+
)
|
|
662
|
+
end
|
|
663
|
+
def to_hash
|
|
664
|
+
end
|
|
665
|
+
|
|
666
|
+
class StartSpeakingPlan < Telnyx::Internal::Type::BaseModel
|
|
667
|
+
OrHash =
|
|
668
|
+
T.type_alias do
|
|
669
|
+
T.any(
|
|
670
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan,
|
|
671
|
+
Telnyx::Internal::AnyHash
|
|
672
|
+
)
|
|
673
|
+
end
|
|
674
|
+
|
|
675
|
+
# Endpointing thresholds used to decide when the user has finished speaking.
|
|
676
|
+
# Applies to non turn-taking transcription models. For `deepgram/flux`, use
|
|
677
|
+
# `transcription.settings.eot_threshold` / `eot_timeout_ms` /
|
|
678
|
+
# `eager_eot_threshold`.
|
|
679
|
+
sig do
|
|
680
|
+
returns(
|
|
681
|
+
T.nilable(
|
|
682
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan
|
|
683
|
+
)
|
|
684
|
+
)
|
|
685
|
+
end
|
|
686
|
+
attr_reader :transcription_endpointing_plan
|
|
687
|
+
|
|
688
|
+
sig do
|
|
689
|
+
params(
|
|
690
|
+
transcription_endpointing_plan:
|
|
691
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan::OrHash
|
|
692
|
+
).void
|
|
693
|
+
end
|
|
694
|
+
attr_writer :transcription_endpointing_plan
|
|
695
|
+
|
|
696
|
+
# Minimum seconds to wait before the assistant starts speaking.
|
|
697
|
+
sig { returns(T.nilable(Float)) }
|
|
698
|
+
attr_reader :wait_seconds
|
|
699
|
+
|
|
700
|
+
sig { params(wait_seconds: Float).void }
|
|
701
|
+
attr_writer :wait_seconds
|
|
702
|
+
|
|
703
|
+
# Controls when the assistant starts speaking after the user stops. These
|
|
704
|
+
# thresholds primarily apply to non turn-taking transcription models. For
|
|
705
|
+
# turn-taking models like `deepgram/flux`, end-of-turn detection is driven by the
|
|
706
|
+
# transcription end-of-turn settings under `transcription.settings` instead.
|
|
707
|
+
sig do
|
|
708
|
+
params(
|
|
709
|
+
transcription_endpointing_plan:
|
|
710
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan::OrHash,
|
|
711
|
+
wait_seconds: Float
|
|
712
|
+
).returns(T.attached_class)
|
|
713
|
+
end
|
|
714
|
+
def self.new(
|
|
715
|
+
# Endpointing thresholds used to decide when the user has finished speaking.
|
|
716
|
+
# Applies to non turn-taking transcription models. For `deepgram/flux`, use
|
|
717
|
+
# `transcription.settings.eot_threshold` / `eot_timeout_ms` /
|
|
718
|
+
# `eager_eot_threshold`.
|
|
719
|
+
transcription_endpointing_plan: nil,
|
|
720
|
+
# Minimum seconds to wait before the assistant starts speaking.
|
|
721
|
+
wait_seconds: nil
|
|
722
|
+
)
|
|
723
|
+
end
|
|
724
|
+
|
|
725
|
+
sig do
|
|
726
|
+
override.returns(
|
|
727
|
+
{
|
|
728
|
+
transcription_endpointing_plan:
|
|
729
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
|
|
730
|
+
wait_seconds: Float
|
|
731
|
+
}
|
|
732
|
+
)
|
|
733
|
+
end
|
|
734
|
+
def to_hash
|
|
735
|
+
end
|
|
736
|
+
|
|
737
|
+
class TranscriptionEndpointingPlan < Telnyx::Internal::Type::BaseModel
|
|
738
|
+
OrHash =
|
|
739
|
+
T.type_alias do
|
|
740
|
+
T.any(
|
|
741
|
+
Telnyx::AI::InferenceEmbedding::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
|
|
742
|
+
Telnyx::Internal::AnyHash
|
|
743
|
+
)
|
|
744
|
+
end
|
|
745
|
+
|
|
746
|
+
# Seconds to wait after the transcript ends without punctuation.
|
|
747
|
+
sig { returns(T.nilable(Float)) }
|
|
748
|
+
attr_reader :on_no_punctuation_seconds
|
|
749
|
+
|
|
750
|
+
sig { params(on_no_punctuation_seconds: Float).void }
|
|
751
|
+
attr_writer :on_no_punctuation_seconds
|
|
752
|
+
|
|
753
|
+
# Seconds to wait after the transcript ends with a number.
|
|
754
|
+
sig { returns(T.nilable(Float)) }
|
|
755
|
+
attr_reader :on_number_seconds
|
|
756
|
+
|
|
757
|
+
sig { params(on_number_seconds: Float).void }
|
|
758
|
+
attr_writer :on_number_seconds
|
|
759
|
+
|
|
760
|
+
# Seconds to wait after the transcript ends with punctuation.
|
|
761
|
+
sig { returns(T.nilable(Float)) }
|
|
762
|
+
attr_reader :on_punctuation_seconds
|
|
763
|
+
|
|
764
|
+
sig { params(on_punctuation_seconds: Float).void }
|
|
765
|
+
attr_writer :on_punctuation_seconds
|
|
766
|
+
|
|
767
|
+
# Endpointing thresholds used to decide when the user has finished speaking.
|
|
768
|
+
# Applies to non turn-taking transcription models. For `deepgram/flux`, use
|
|
769
|
+
# `transcription.settings.eot_threshold` / `eot_timeout_ms` /
|
|
770
|
+
# `eager_eot_threshold`.
|
|
771
|
+
sig do
|
|
772
|
+
params(
|
|
773
|
+
on_no_punctuation_seconds: Float,
|
|
774
|
+
on_number_seconds: Float,
|
|
775
|
+
on_punctuation_seconds: Float
|
|
776
|
+
).returns(T.attached_class)
|
|
777
|
+
end
|
|
778
|
+
def self.new(
|
|
779
|
+
# Seconds to wait after the transcript ends without punctuation.
|
|
780
|
+
on_no_punctuation_seconds: nil,
|
|
781
|
+
# Seconds to wait after the transcript ends with a number.
|
|
782
|
+
on_number_seconds: nil,
|
|
783
|
+
# Seconds to wait after the transcript ends with punctuation.
|
|
784
|
+
on_punctuation_seconds: nil
|
|
785
|
+
)
|
|
786
|
+
end
|
|
787
|
+
|
|
788
|
+
sig do
|
|
789
|
+
override.returns(
|
|
790
|
+
{
|
|
791
|
+
on_no_punctuation_seconds: Float,
|
|
792
|
+
on_number_seconds: Float,
|
|
793
|
+
on_punctuation_seconds: Float
|
|
794
|
+
}
|
|
795
|
+
)
|
|
796
|
+
end
|
|
797
|
+
def to_hash
|
|
798
|
+
end
|
|
799
|
+
end
|
|
800
|
+
end
|
|
801
|
+
end
|
|
802
|
+
|
|
803
|
+
class McpServer < Telnyx::Internal::Type::BaseModel
|
|
804
|
+
OrHash =
|
|
805
|
+
T.type_alias do
|
|
806
|
+
T.any(
|
|
807
|
+
Telnyx::AI::InferenceEmbedding::McpServer,
|
|
808
|
+
Telnyx::Internal::AnyHash
|
|
809
|
+
)
|
|
810
|
+
end
|
|
811
|
+
|
|
812
|
+
# ID of the MCP server to attach. This must be the `id` of an MCP server returned
|
|
813
|
+
# by the `/ai/mcp_servers` endpoints.
|
|
814
|
+
sig { returns(String) }
|
|
815
|
+
attr_accessor :id
|
|
816
|
+
|
|
817
|
+
# Optional per-assistant allowlist of MCP tool names. When omitted, the assistant
|
|
818
|
+
# uses the MCP server's configured `allowed_tools`.
|
|
819
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
820
|
+
attr_reader :allowed_tools
|
|
821
|
+
|
|
822
|
+
sig { params(allowed_tools: T::Array[String]).void }
|
|
823
|
+
attr_writer :allowed_tools
|
|
824
|
+
|
|
825
|
+
# Reference to an MCP server attached to an assistant. Create and manage MCP
|
|
826
|
+
# servers with the `/ai/mcp_servers` endpoints, then attach them to assistants by
|
|
827
|
+
# ID.
|
|
828
|
+
sig do
|
|
829
|
+
params(id: String, allowed_tools: T::Array[String]).returns(
|
|
830
|
+
T.attached_class
|
|
831
|
+
)
|
|
832
|
+
end
|
|
833
|
+
def self.new(
|
|
834
|
+
# ID of the MCP server to attach. This must be the `id` of an MCP server returned
|
|
835
|
+
# by the `/ai/mcp_servers` endpoints.
|
|
836
|
+
id:,
|
|
837
|
+
# Optional per-assistant allowlist of MCP tool names. When omitted, the assistant
|
|
838
|
+
# uses the MCP server's configured `allowed_tools`.
|
|
839
|
+
allowed_tools: nil
|
|
840
|
+
)
|
|
841
|
+
end
|
|
842
|
+
|
|
843
|
+
sig do
|
|
844
|
+
override.returns({ id: String, allowed_tools: T::Array[String] })
|
|
845
|
+
end
|
|
846
|
+
def to_hash
|
|
847
|
+
end
|
|
848
|
+
end
|
|
510
849
|
end
|
|
511
850
|
end
|
|
512
851
|
end
|