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
|
@@ -110,12 +110,21 @@ module Telnyx
|
|
|
110
110
|
# integrations is at `/ai/integrations`; the user's connected integrations are at
|
|
111
111
|
# `/ai/integrations/connections`. Each item references a catalog integration by
|
|
112
112
|
# `integration_id`.
|
|
113
|
-
sig
|
|
113
|
+
sig do
|
|
114
|
+
returns(
|
|
115
|
+
T.nilable(
|
|
116
|
+
T::Array[Telnyx::AI::Assistants::UpdateAssistant::Integration]
|
|
117
|
+
)
|
|
118
|
+
)
|
|
119
|
+
end
|
|
114
120
|
attr_reader :integrations
|
|
115
121
|
|
|
116
122
|
sig do
|
|
117
123
|
params(
|
|
118
|
-
integrations:
|
|
124
|
+
integrations:
|
|
125
|
+
T::Array[
|
|
126
|
+
Telnyx::AI::Assistants::UpdateAssistant::Integration::OrHash
|
|
127
|
+
]
|
|
119
128
|
).void
|
|
120
129
|
end
|
|
121
130
|
attr_writer :integrations
|
|
@@ -128,7 +137,9 @@ module Telnyx
|
|
|
128
137
|
# `eager_eot_threshold`).
|
|
129
138
|
sig do
|
|
130
139
|
returns(
|
|
131
|
-
T.nilable(
|
|
140
|
+
T.nilable(
|
|
141
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings
|
|
142
|
+
)
|
|
132
143
|
)
|
|
133
144
|
end
|
|
134
145
|
attr_reader :interruption_settings
|
|
@@ -136,7 +147,7 @@ module Telnyx
|
|
|
136
147
|
sig do
|
|
137
148
|
params(
|
|
138
149
|
interruption_settings:
|
|
139
|
-
Telnyx::AI::
|
|
150
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::OrHash
|
|
140
151
|
).void
|
|
141
152
|
end
|
|
142
153
|
attr_writer :interruption_settings
|
|
@@ -155,12 +166,21 @@ module Telnyx
|
|
|
155
166
|
|
|
156
167
|
# MCP servers attached to the assistant. Create MCP servers with
|
|
157
168
|
# `/ai/mcp_servers`, then reference them by `id` here.
|
|
158
|
-
sig
|
|
169
|
+
sig do
|
|
170
|
+
returns(
|
|
171
|
+
T.nilable(
|
|
172
|
+
T::Array[Telnyx::AI::Assistants::UpdateAssistant::McpServer]
|
|
173
|
+
)
|
|
174
|
+
)
|
|
175
|
+
end
|
|
159
176
|
attr_reader :mcp_servers
|
|
160
177
|
|
|
161
178
|
sig do
|
|
162
179
|
params(
|
|
163
|
-
mcp_servers:
|
|
180
|
+
mcp_servers:
|
|
181
|
+
T::Array[
|
|
182
|
+
Telnyx::AI::Assistants::UpdateAssistant::McpServer::OrHash
|
|
183
|
+
]
|
|
164
184
|
).void
|
|
165
185
|
end
|
|
166
186
|
attr_writer :mcp_servers
|
|
@@ -343,11 +363,17 @@ module Telnyx
|
|
|
343
363
|
greeting: String,
|
|
344
364
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
345
365
|
instructions: String,
|
|
346
|
-
integrations:
|
|
366
|
+
integrations:
|
|
367
|
+
T::Array[
|
|
368
|
+
Telnyx::AI::Assistants::UpdateAssistant::Integration::OrHash
|
|
369
|
+
],
|
|
347
370
|
interruption_settings:
|
|
348
|
-
Telnyx::AI::
|
|
371
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::OrHash,
|
|
349
372
|
llm_api_key_ref: String,
|
|
350
|
-
mcp_servers:
|
|
373
|
+
mcp_servers:
|
|
374
|
+
T::Array[
|
|
375
|
+
Telnyx::AI::Assistants::UpdateAssistant::McpServer::OrHash
|
|
376
|
+
],
|
|
351
377
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
352
378
|
model: String,
|
|
353
379
|
name: String,
|
|
@@ -484,11 +510,15 @@ module Telnyx
|
|
|
484
510
|
greeting: String,
|
|
485
511
|
insight_settings: Telnyx::AI::InsightSettings,
|
|
486
512
|
instructions: String,
|
|
487
|
-
integrations:
|
|
513
|
+
integrations:
|
|
514
|
+
T::Array[
|
|
515
|
+
Telnyx::AI::Assistants::UpdateAssistant::Integration
|
|
516
|
+
],
|
|
488
517
|
interruption_settings:
|
|
489
|
-
Telnyx::AI::
|
|
518
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings,
|
|
490
519
|
llm_api_key_ref: String,
|
|
491
|
-
mcp_servers:
|
|
520
|
+
mcp_servers:
|
|
521
|
+
T::Array[Telnyx::AI::Assistants::UpdateAssistant::McpServer],
|
|
492
522
|
messaging_settings: Telnyx::AI::MessagingSettings,
|
|
493
523
|
model: String,
|
|
494
524
|
name: String,
|
|
@@ -523,6 +553,330 @@ module Telnyx
|
|
|
523
553
|
end
|
|
524
554
|
def to_hash
|
|
525
555
|
end
|
|
556
|
+
|
|
557
|
+
class Integration < Telnyx::Internal::Type::BaseModel
|
|
558
|
+
OrHash =
|
|
559
|
+
T.type_alias do
|
|
560
|
+
T.any(
|
|
561
|
+
Telnyx::AI::Assistants::UpdateAssistant::Integration,
|
|
562
|
+
Telnyx::Internal::AnyHash
|
|
563
|
+
)
|
|
564
|
+
end
|
|
565
|
+
|
|
566
|
+
# Catalog integration ID to attach. This is the `id` from the integrations catalog
|
|
567
|
+
# at `/ai/integrations` (the same value also appears as `integration_id` on
|
|
568
|
+
# entries returned by `/ai/integrations/connections`). It is **not** the
|
|
569
|
+
# connection-level `id` from `/ai/integrations/connections`.
|
|
570
|
+
sig { returns(String) }
|
|
571
|
+
attr_accessor :integration_id
|
|
572
|
+
|
|
573
|
+
# Optional per-assistant allowlist of integration tool names. When omitted or
|
|
574
|
+
# empty, all tools allowed by the connected integration are available to the
|
|
575
|
+
# assistant.
|
|
576
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
577
|
+
attr_reader :allowed_list
|
|
578
|
+
|
|
579
|
+
sig { params(allowed_list: T::Array[String]).void }
|
|
580
|
+
attr_writer :allowed_list
|
|
581
|
+
|
|
582
|
+
# Reference to a connected integration attached to an assistant. Discover
|
|
583
|
+
# available integrations with `/ai/integrations` and connected integrations with
|
|
584
|
+
# `/ai/integrations/connections`.
|
|
585
|
+
sig do
|
|
586
|
+
params(
|
|
587
|
+
integration_id: String,
|
|
588
|
+
allowed_list: T::Array[String]
|
|
589
|
+
).returns(T.attached_class)
|
|
590
|
+
end
|
|
591
|
+
def self.new(
|
|
592
|
+
# Catalog integration ID to attach. This is the `id` from the integrations catalog
|
|
593
|
+
# at `/ai/integrations` (the same value also appears as `integration_id` on
|
|
594
|
+
# entries returned by `/ai/integrations/connections`). It is **not** the
|
|
595
|
+
# connection-level `id` from `/ai/integrations/connections`.
|
|
596
|
+
integration_id:,
|
|
597
|
+
# Optional per-assistant allowlist of integration tool names. When omitted or
|
|
598
|
+
# empty, all tools allowed by the connected integration are available to the
|
|
599
|
+
# assistant.
|
|
600
|
+
allowed_list: nil
|
|
601
|
+
)
|
|
602
|
+
end
|
|
603
|
+
|
|
604
|
+
sig do
|
|
605
|
+
override.returns(
|
|
606
|
+
{ integration_id: String, allowed_list: T::Array[String] }
|
|
607
|
+
)
|
|
608
|
+
end
|
|
609
|
+
def to_hash
|
|
610
|
+
end
|
|
611
|
+
end
|
|
612
|
+
|
|
613
|
+
class InterruptionSettings < Telnyx::Internal::Type::BaseModel
|
|
614
|
+
OrHash =
|
|
615
|
+
T.type_alias do
|
|
616
|
+
T.any(
|
|
617
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings,
|
|
618
|
+
Telnyx::Internal::AnyHash
|
|
619
|
+
)
|
|
620
|
+
end
|
|
621
|
+
|
|
622
|
+
# When true, disables user interruptions while the assistant greeting is playing.
|
|
623
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
624
|
+
attr_reader :disable_greeting_interruption
|
|
625
|
+
|
|
626
|
+
sig { params(disable_greeting_interruption: T::Boolean).void }
|
|
627
|
+
attr_writer :disable_greeting_interruption
|
|
628
|
+
|
|
629
|
+
# Whether users can interrupt the assistant while it is speaking.
|
|
630
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
631
|
+
attr_reader :enable
|
|
632
|
+
|
|
633
|
+
sig { params(enable: T::Boolean).void }
|
|
634
|
+
attr_writer :enable
|
|
635
|
+
|
|
636
|
+
# Controls when the assistant starts speaking after the user stops. These
|
|
637
|
+
# thresholds primarily apply to non turn-taking transcription models. For
|
|
638
|
+
# turn-taking models like `deepgram/flux`, end-of-turn detection is driven by the
|
|
639
|
+
# transcription end-of-turn settings under `transcription.settings` instead.
|
|
640
|
+
sig do
|
|
641
|
+
returns(
|
|
642
|
+
T.nilable(
|
|
643
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan
|
|
644
|
+
)
|
|
645
|
+
)
|
|
646
|
+
end
|
|
647
|
+
attr_reader :start_speaking_plan
|
|
648
|
+
|
|
649
|
+
sig do
|
|
650
|
+
params(
|
|
651
|
+
start_speaking_plan:
|
|
652
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::OrHash
|
|
653
|
+
).void
|
|
654
|
+
end
|
|
655
|
+
attr_writer :start_speaking_plan
|
|
656
|
+
|
|
657
|
+
# Settings for interruptions and how the assistant decides the user has finished
|
|
658
|
+
# speaking. These timings are most relevant when using non turn-taking
|
|
659
|
+
# transcription models. For turn-taking models like `deepgram/flux`, end-of-turn
|
|
660
|
+
# behavior is controlled by the transcription end-of-turn settings under
|
|
661
|
+
# `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
|
|
662
|
+
# `eager_eot_threshold`).
|
|
663
|
+
sig do
|
|
664
|
+
params(
|
|
665
|
+
disable_greeting_interruption: T::Boolean,
|
|
666
|
+
enable: T::Boolean,
|
|
667
|
+
start_speaking_plan:
|
|
668
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::OrHash
|
|
669
|
+
).returns(T.attached_class)
|
|
670
|
+
end
|
|
671
|
+
def self.new(
|
|
672
|
+
# When true, disables user interruptions while the assistant greeting is playing.
|
|
673
|
+
disable_greeting_interruption: nil,
|
|
674
|
+
# Whether users can interrupt the assistant while it is speaking.
|
|
675
|
+
enable: nil,
|
|
676
|
+
# Controls when the assistant starts speaking after the user stops. These
|
|
677
|
+
# thresholds primarily apply to non turn-taking transcription models. For
|
|
678
|
+
# turn-taking models like `deepgram/flux`, end-of-turn detection is driven by the
|
|
679
|
+
# transcription end-of-turn settings under `transcription.settings` instead.
|
|
680
|
+
start_speaking_plan: nil
|
|
681
|
+
)
|
|
682
|
+
end
|
|
683
|
+
|
|
684
|
+
sig do
|
|
685
|
+
override.returns(
|
|
686
|
+
{
|
|
687
|
+
disable_greeting_interruption: T::Boolean,
|
|
688
|
+
enable: T::Boolean,
|
|
689
|
+
start_speaking_plan:
|
|
690
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan
|
|
691
|
+
}
|
|
692
|
+
)
|
|
693
|
+
end
|
|
694
|
+
def to_hash
|
|
695
|
+
end
|
|
696
|
+
|
|
697
|
+
class StartSpeakingPlan < Telnyx::Internal::Type::BaseModel
|
|
698
|
+
OrHash =
|
|
699
|
+
T.type_alias do
|
|
700
|
+
T.any(
|
|
701
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan,
|
|
702
|
+
Telnyx::Internal::AnyHash
|
|
703
|
+
)
|
|
704
|
+
end
|
|
705
|
+
|
|
706
|
+
# Endpointing thresholds used to decide when the user has finished speaking.
|
|
707
|
+
# Applies to non turn-taking transcription models. For `deepgram/flux`, use
|
|
708
|
+
# `transcription.settings.eot_threshold` / `eot_timeout_ms` /
|
|
709
|
+
# `eager_eot_threshold`.
|
|
710
|
+
sig do
|
|
711
|
+
returns(
|
|
712
|
+
T.nilable(
|
|
713
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan
|
|
714
|
+
)
|
|
715
|
+
)
|
|
716
|
+
end
|
|
717
|
+
attr_reader :transcription_endpointing_plan
|
|
718
|
+
|
|
719
|
+
sig do
|
|
720
|
+
params(
|
|
721
|
+
transcription_endpointing_plan:
|
|
722
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan::OrHash
|
|
723
|
+
).void
|
|
724
|
+
end
|
|
725
|
+
attr_writer :transcription_endpointing_plan
|
|
726
|
+
|
|
727
|
+
# Minimum seconds to wait before the assistant starts speaking.
|
|
728
|
+
sig { returns(T.nilable(Float)) }
|
|
729
|
+
attr_reader :wait_seconds
|
|
730
|
+
|
|
731
|
+
sig { params(wait_seconds: Float).void }
|
|
732
|
+
attr_writer :wait_seconds
|
|
733
|
+
|
|
734
|
+
# Controls when the assistant starts speaking after the user stops. These
|
|
735
|
+
# thresholds primarily apply to non turn-taking transcription models. For
|
|
736
|
+
# turn-taking models like `deepgram/flux`, end-of-turn detection is driven by the
|
|
737
|
+
# transcription end-of-turn settings under `transcription.settings` instead.
|
|
738
|
+
sig do
|
|
739
|
+
params(
|
|
740
|
+
transcription_endpointing_plan:
|
|
741
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan::OrHash,
|
|
742
|
+
wait_seconds: Float
|
|
743
|
+
).returns(T.attached_class)
|
|
744
|
+
end
|
|
745
|
+
def self.new(
|
|
746
|
+
# Endpointing thresholds used to decide when the user has finished speaking.
|
|
747
|
+
# Applies to non turn-taking transcription models. For `deepgram/flux`, use
|
|
748
|
+
# `transcription.settings.eot_threshold` / `eot_timeout_ms` /
|
|
749
|
+
# `eager_eot_threshold`.
|
|
750
|
+
transcription_endpointing_plan: nil,
|
|
751
|
+
# Minimum seconds to wait before the assistant starts speaking.
|
|
752
|
+
wait_seconds: nil
|
|
753
|
+
)
|
|
754
|
+
end
|
|
755
|
+
|
|
756
|
+
sig do
|
|
757
|
+
override.returns(
|
|
758
|
+
{
|
|
759
|
+
transcription_endpointing_plan:
|
|
760
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
|
|
761
|
+
wait_seconds: Float
|
|
762
|
+
}
|
|
763
|
+
)
|
|
764
|
+
end
|
|
765
|
+
def to_hash
|
|
766
|
+
end
|
|
767
|
+
|
|
768
|
+
class TranscriptionEndpointingPlan < Telnyx::Internal::Type::BaseModel
|
|
769
|
+
OrHash =
|
|
770
|
+
T.type_alias do
|
|
771
|
+
T.any(
|
|
772
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::StartSpeakingPlan::TranscriptionEndpointingPlan,
|
|
773
|
+
Telnyx::Internal::AnyHash
|
|
774
|
+
)
|
|
775
|
+
end
|
|
776
|
+
|
|
777
|
+
# Seconds to wait after the transcript ends without punctuation.
|
|
778
|
+
sig { returns(T.nilable(Float)) }
|
|
779
|
+
attr_reader :on_no_punctuation_seconds
|
|
780
|
+
|
|
781
|
+
sig { params(on_no_punctuation_seconds: Float).void }
|
|
782
|
+
attr_writer :on_no_punctuation_seconds
|
|
783
|
+
|
|
784
|
+
# Seconds to wait after the transcript ends with a number.
|
|
785
|
+
sig { returns(T.nilable(Float)) }
|
|
786
|
+
attr_reader :on_number_seconds
|
|
787
|
+
|
|
788
|
+
sig { params(on_number_seconds: Float).void }
|
|
789
|
+
attr_writer :on_number_seconds
|
|
790
|
+
|
|
791
|
+
# Seconds to wait after the transcript ends with punctuation.
|
|
792
|
+
sig { returns(T.nilable(Float)) }
|
|
793
|
+
attr_reader :on_punctuation_seconds
|
|
794
|
+
|
|
795
|
+
sig { params(on_punctuation_seconds: Float).void }
|
|
796
|
+
attr_writer :on_punctuation_seconds
|
|
797
|
+
|
|
798
|
+
# Endpointing thresholds used to decide when the user has finished speaking.
|
|
799
|
+
# Applies to non turn-taking transcription models. For `deepgram/flux`, use
|
|
800
|
+
# `transcription.settings.eot_threshold` / `eot_timeout_ms` /
|
|
801
|
+
# `eager_eot_threshold`.
|
|
802
|
+
sig do
|
|
803
|
+
params(
|
|
804
|
+
on_no_punctuation_seconds: Float,
|
|
805
|
+
on_number_seconds: Float,
|
|
806
|
+
on_punctuation_seconds: Float
|
|
807
|
+
).returns(T.attached_class)
|
|
808
|
+
end
|
|
809
|
+
def self.new(
|
|
810
|
+
# Seconds to wait after the transcript ends without punctuation.
|
|
811
|
+
on_no_punctuation_seconds: nil,
|
|
812
|
+
# Seconds to wait after the transcript ends with a number.
|
|
813
|
+
on_number_seconds: nil,
|
|
814
|
+
# Seconds to wait after the transcript ends with punctuation.
|
|
815
|
+
on_punctuation_seconds: nil
|
|
816
|
+
)
|
|
817
|
+
end
|
|
818
|
+
|
|
819
|
+
sig do
|
|
820
|
+
override.returns(
|
|
821
|
+
{
|
|
822
|
+
on_no_punctuation_seconds: Float,
|
|
823
|
+
on_number_seconds: Float,
|
|
824
|
+
on_punctuation_seconds: Float
|
|
825
|
+
}
|
|
826
|
+
)
|
|
827
|
+
end
|
|
828
|
+
def to_hash
|
|
829
|
+
end
|
|
830
|
+
end
|
|
831
|
+
end
|
|
832
|
+
end
|
|
833
|
+
|
|
834
|
+
class McpServer < Telnyx::Internal::Type::BaseModel
|
|
835
|
+
OrHash =
|
|
836
|
+
T.type_alias do
|
|
837
|
+
T.any(
|
|
838
|
+
Telnyx::AI::Assistants::UpdateAssistant::McpServer,
|
|
839
|
+
Telnyx::Internal::AnyHash
|
|
840
|
+
)
|
|
841
|
+
end
|
|
842
|
+
|
|
843
|
+
# ID of the MCP server to attach. This must be the `id` of an MCP server returned
|
|
844
|
+
# by the `/ai/mcp_servers` endpoints.
|
|
845
|
+
sig { returns(String) }
|
|
846
|
+
attr_accessor :id
|
|
847
|
+
|
|
848
|
+
# Optional per-assistant allowlist of MCP tool names. When omitted, the assistant
|
|
849
|
+
# uses the MCP server's configured `allowed_tools`.
|
|
850
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
851
|
+
attr_reader :allowed_tools
|
|
852
|
+
|
|
853
|
+
sig { params(allowed_tools: T::Array[String]).void }
|
|
854
|
+
attr_writer :allowed_tools
|
|
855
|
+
|
|
856
|
+
# Reference to an MCP server attached to an assistant. Create and manage MCP
|
|
857
|
+
# servers with the `/ai/mcp_servers` endpoints, then attach them to assistants by
|
|
858
|
+
# ID.
|
|
859
|
+
sig do
|
|
860
|
+
params(id: String, allowed_tools: T::Array[String]).returns(
|
|
861
|
+
T.attached_class
|
|
862
|
+
)
|
|
863
|
+
end
|
|
864
|
+
def self.new(
|
|
865
|
+
# ID of the MCP server to attach. This must be the `id` of an MCP server returned
|
|
866
|
+
# by the `/ai/mcp_servers` endpoints.
|
|
867
|
+
id:,
|
|
868
|
+
# Optional per-assistant allowlist of MCP tool names. When omitted, the assistant
|
|
869
|
+
# uses the MCP server's configured `allowed_tools`.
|
|
870
|
+
allowed_tools: nil
|
|
871
|
+
)
|
|
872
|
+
end
|
|
873
|
+
|
|
874
|
+
sig do
|
|
875
|
+
override.returns({ id: String, allowed_tools: T::Array[String] })
|
|
876
|
+
end
|
|
877
|
+
def to_hash
|
|
878
|
+
end
|
|
879
|
+
end
|
|
526
880
|
end
|
|
527
881
|
end
|
|
528
882
|
end
|