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