telnyx 5.112.0 → 5.113.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.
Files changed (261) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/assistant_create_params.rb +9 -178
  5. data/lib/telnyx/models/ai/assistant_integration.rb +38 -0
  6. data/lib/telnyx/models/ai/assistant_mcp_server.rb +35 -0
  7. data/lib/telnyx/models/ai/assistant_tool.rb +14 -14
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +9 -178
  9. data/lib/telnyx/models/ai/assistants/canary_deploy.rb +3 -123
  10. data/lib/telnyx/models/ai/assistants/canary_deploy_response.rb +3 -125
  11. data/lib/telnyx/models/ai/assistants/clause.rb +54 -0
  12. data/lib/telnyx/models/ai/assistants/rollout_slot.rb +27 -0
  13. data/lib/telnyx/models/ai/assistants/rule_input.rb +40 -0
  14. data/lib/telnyx/models/ai/assistants/rule_output.rb +40 -0
  15. data/lib/telnyx/models/ai/assistants/serve.rb +33 -0
  16. data/lib/telnyx/models/ai/assistants/update_assistant.rb +9 -179
  17. data/lib/telnyx/models/ai/inference_embedding.rb +9 -177
  18. data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +47 -0
  19. data/lib/telnyx/models/ai/openai_create_response_params.rb +3 -3
  20. data/lib/telnyx/models/ai/openai_list_models_response.rb +3 -210
  21. data/lib/telnyx/models/ai/start_speaking_plan.rb +37 -0
  22. data/lib/telnyx/models/ai/transcription_endpointing_plan.rb +39 -0
  23. data/lib/telnyx/models/ai/transfer_tool.rb +7 -9
  24. data/lib/telnyx/models/ai_create_response_params.rb +4 -4
  25. data/lib/telnyx/models/ai_retrieve_models_response.rb +3 -210
  26. data/lib/telnyx/models/call_conversation_ended.rb +13 -1
  27. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +4 -23
  28. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +4 -23
  29. data/lib/telnyx/models/calls/action_speak_params.rb +4 -23
  30. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +4 -23
  31. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +169 -118
  32. data/lib/telnyx/models/calls/transcription_engine_assemblyai_config.rb +64 -0
  33. data/lib/telnyx/models/calls/transcription_engine_speechmatics_config.rb +100 -0
  34. data/lib/telnyx/models/calls/transcription_engine_xai_config.rb +108 -0
  35. data/lib/telnyx/models/calls/transcription_start_request.rb +8 -167
  36. data/lib/telnyx/models/conferences/action_speak_params.rb +4 -23
  37. data/lib/telnyx/models/fax.rb +7 -5
  38. data/lib/telnyx/models/fax_create_params.rb +7 -5
  39. data/lib/telnyx/models/fax_delivered.rb +3 -2
  40. data/lib/telnyx/models/fax_failed.rb +3 -2
  41. data/lib/telnyx/models/fax_media_processed.rb +3 -2
  42. data/lib/telnyx/models/fax_queued.rb +3 -2
  43. data/lib/telnyx/models/fax_sending_started.rb +3 -2
  44. data/lib/telnyx/models/model_metadata.rb +212 -0
  45. data/lib/telnyx/models/network_list_interfaces_response.rb +112 -2
  46. data/lib/telnyx/models/public_internet_gateway_create_response.rb +3 -8
  47. data/lib/telnyx/models/public_internet_gateway_delete_response.rb +3 -8
  48. data/lib/telnyx/models/public_internet_gateway_read.rb +83 -0
  49. data/lib/telnyx/models/public_internet_gateway_retrieve_response.rb +3 -8
  50. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +62 -12
  51. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +18 -4
  52. data/lib/telnyx/models/text_to_speech_generate_params.rb +6 -6
  53. data/lib/telnyx/models/uac_connection.rb +412 -0
  54. data/lib/telnyx/models/uac_connection_create_params.rb +9 -255
  55. data/lib/telnyx/models/uac_connection_create_response.rb +3 -878
  56. data/lib/telnyx/models/uac_connection_delete_response.rb +3 -878
  57. data/lib/telnyx/models/uac_connection_retrieve_response.rb +3 -879
  58. data/lib/telnyx/models/uac_connection_update_params.rb +9 -255
  59. data/lib/telnyx/models/uac_connection_update_response.rb +3 -878
  60. data/lib/telnyx/models/uac_external_settings.rb +101 -0
  61. data/lib/telnyx/models/uac_inbound.rb +210 -0
  62. data/lib/telnyx/models/uac_internal_settings.rb +25 -0
  63. data/lib/telnyx/models/uac_outbound.rb +131 -0
  64. data/lib/telnyx/models/virtual_cross_connect_combined.rb +212 -0
  65. data/lib/telnyx/models/virtual_cross_connect_create_response.rb +3 -8
  66. data/lib/telnyx/models/virtual_cross_connect_delete_response.rb +3 -8
  67. data/lib/telnyx/models/virtual_cross_connect_retrieve_response.rb +3 -8
  68. data/lib/telnyx/models/virtual_cross_connect_update_response.rb +3 -8
  69. data/lib/telnyx/models/wireguard_interface_create_response.rb +3 -8
  70. data/lib/telnyx/models/wireguard_interface_delete_response.rb +3 -8
  71. data/lib/telnyx/models/wireguard_interface_read.rb +136 -0
  72. data/lib/telnyx/models/wireguard_interface_retrieve_response.rb +3 -8
  73. data/lib/telnyx/models/xai_voice_settings.rb +36 -0
  74. data/lib/telnyx/models.rb +20 -0
  75. data/lib/telnyx/resources/ai/assistants/canary_deploys.rb +2 -2
  76. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
  77. data/lib/telnyx/resources/ai/assistants.rb +6 -6
  78. data/lib/telnyx/resources/ai/openai.rb +1 -1
  79. data/lib/telnyx/resources/ai.rb +3 -3
  80. data/lib/telnyx/resources/calls/actions.rb +15 -17
  81. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  82. data/lib/telnyx/resources/faxes.rb +13 -1
  83. data/lib/telnyx/resources/public_internet_gateways.rb +2 -2
  84. data/lib/telnyx/resources/texml.rb +4 -2
  85. data/lib/telnyx/resources/uac_connections.rb +8 -8
  86. data/lib/telnyx/resources/virtual_cross_connects.rb +2 -2
  87. data/lib/telnyx/resources/wireguard_interfaces.rb +2 -2
  88. data/lib/telnyx/version.rb +1 -1
  89. data/lib/telnyx.rb +23 -4
  90. data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -352
  91. data/rbi/telnyx/models/ai/assistant_integration.rbi +60 -0
  92. data/rbi/telnyx/models/ai/assistant_mcp_server.rbi +51 -0
  93. data/rbi/telnyx/models/ai/assistant_tool.rbi +10 -10
  94. data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -352
  95. data/rbi/telnyx/models/ai/assistants/canary_deploy.rbi +4 -290
  96. data/rbi/telnyx/models/ai/assistants/canary_deploy_response.rbi +3 -301
  97. data/rbi/telnyx/models/ai/assistants/clause.rbi +91 -0
  98. data/rbi/telnyx/models/ai/assistants/rollout_slot.rbi +36 -0
  99. data/rbi/telnyx/models/ai/assistants/rule_input.rbi +73 -0
  100. data/rbi/telnyx/models/ai/assistants/rule_output.rbi +73 -0
  101. data/rbi/telnyx/models/ai/assistants/serve.rbi +61 -0
  102. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -366
  103. data/rbi/telnyx/models/ai/inference_embedding.rbi +12 -351
  104. data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +83 -0
  105. data/rbi/telnyx/models/ai/openai_create_response_params.rbi +4 -4
  106. data/rbi/telnyx/models/ai/openai_list_models_response.rbi +3 -315
  107. data/rbi/telnyx/models/ai/start_speaking_plan.rbi +70 -0
  108. data/rbi/telnyx/models/ai/transcription_endpointing_plan.rbi +71 -0
  109. data/rbi/telnyx/models/ai/transfer_tool.rbi +5 -5
  110. data/rbi/telnyx/models/ai_create_response_params.rbi +4 -4
  111. data/rbi/telnyx/models/ai_retrieve_models_response.rbi +3 -310
  112. data/rbi/telnyx/models/call_conversation_ended.rbi +10 -0
  113. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +5 -41
  114. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +5 -41
  115. data/rbi/telnyx/models/calls/action_speak_params.rbi +5 -41
  116. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +5 -41
  117. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +371 -254
  118. data/rbi/telnyx/models/calls/transcription_engine_assemblyai_config.rbi +155 -0
  119. data/rbi/telnyx/models/calls/transcription_engine_speechmatics_config.rbi +289 -0
  120. data/rbi/telnyx/models/calls/transcription_engine_xai_config.rbi +329 -0
  121. data/rbi/telnyx/models/calls/transcription_start_request.rbi +20 -480
  122. data/rbi/telnyx/models/conferences/action_speak_params.rbi +5 -41
  123. data/rbi/telnyx/models/fax.rbi +12 -8
  124. data/rbi/telnyx/models/fax_create_params.rbi +12 -8
  125. data/rbi/telnyx/models/fax_delivered.rbi +6 -4
  126. data/rbi/telnyx/models/fax_failed.rbi +6 -4
  127. data/rbi/telnyx/models/fax_media_processed.rbi +6 -4
  128. data/rbi/telnyx/models/fax_queued.rbi +6 -4
  129. data/rbi/telnyx/models/fax_sending_started.rbi +6 -4
  130. data/rbi/telnyx/models/model_metadata.rbi +272 -0
  131. data/rbi/telnyx/models/network_list_interfaces_response.rbi +181 -4
  132. data/rbi/telnyx/models/public_internet_gateway_create_response.rbi +6 -38
  133. data/rbi/telnyx/models/public_internet_gateway_delete_response.rbi +6 -38
  134. data/rbi/telnyx/models/public_internet_gateway_read.rbi +128 -0
  135. data/rbi/telnyx/models/public_internet_gateway_retrieve_response.rbi +6 -38
  136. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +81 -9
  137. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +27 -3
  138. data/rbi/telnyx/models/text_to_speech_generate_params.rbi +6 -6
  139. data/rbi/telnyx/models/uac_connection.rbi +684 -0
  140. data/rbi/telnyx/models/uac_connection_create_params.rbi +12 -516
  141. data/rbi/telnyx/models/uac_connection_create_response.rbi +4 -1756
  142. data/rbi/telnyx/models/uac_connection_delete_response.rbi +4 -1756
  143. data/rbi/telnyx/models/uac_connection_retrieve_response.rbi +4 -1756
  144. data/rbi/telnyx/models/uac_connection_update_params.rbi +12 -516
  145. data/rbi/telnyx/models/uac_connection_update_response.rbi +4 -1756
  146. data/rbi/telnyx/models/uac_external_settings.rbi +146 -0
  147. data/rbi/telnyx/models/uac_inbound.rbi +410 -0
  148. data/rbi/telnyx/models/uac_internal_settings.rbi +39 -0
  149. data/rbi/telnyx/models/uac_outbound.rbi +224 -0
  150. data/rbi/telnyx/models/virtual_cross_connect_combined.rbi +345 -0
  151. data/rbi/telnyx/models/virtual_cross_connect_create_response.rbi +6 -36
  152. data/rbi/telnyx/models/virtual_cross_connect_delete_response.rbi +6 -36
  153. data/rbi/telnyx/models/virtual_cross_connect_retrieve_response.rbi +6 -38
  154. data/rbi/telnyx/models/virtual_cross_connect_update_response.rbi +6 -36
  155. data/rbi/telnyx/models/wireguard_interface_create_response.rbi +6 -36
  156. data/rbi/telnyx/models/wireguard_interface_delete_response.rbi +6 -36
  157. data/rbi/telnyx/models/wireguard_interface_read.rbi +213 -0
  158. data/rbi/telnyx/models/wireguard_interface_retrieve_response.rbi +6 -36
  159. data/rbi/telnyx/models/xai_voice_settings.rbi +64 -0
  160. data/rbi/telnyx/models.rbi +20 -0
  161. data/rbi/telnyx/resources/ai/assistants/canary_deploys.rbi +2 -4
  162. data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -9
  163. data/rbi/telnyx/resources/ai/assistants.rbi +6 -10
  164. data/rbi/telnyx/resources/ai/openai.rbi +1 -1
  165. data/rbi/telnyx/resources/ai.rbi +2 -2
  166. data/rbi/telnyx/resources/calls/actions.rbi +24 -24
  167. data/rbi/telnyx/resources/conferences/actions.rbi +1 -1
  168. data/rbi/telnyx/resources/faxes.rbi +18 -4
  169. data/rbi/telnyx/resources/public_internet_gateways.rbi +1 -1
  170. data/rbi/telnyx/resources/texml.rbi +7 -1
  171. data/rbi/telnyx/resources/uac_connections.rbi +7 -13
  172. data/rbi/telnyx/resources/virtual_cross_connects.rbi +1 -1
  173. data/rbi/telnyx/resources/wireguard_interfaces.rbi +1 -1
  174. data/sig/telnyx/models/ai/assistant_create_params.rbs +18 -149
  175. data/sig/telnyx/models/ai/assistant_integration.rbs +26 -0
  176. data/sig/telnyx/models/ai/assistant_mcp_server.rbs +19 -0
  177. data/sig/telnyx/models/ai/assistant_tool.rbs +8 -8
  178. data/sig/telnyx/models/ai/assistant_update_params.rbs +18 -149
  179. data/sig/telnyx/models/ai/assistants/canary_deploy.rbs +6 -113
  180. data/sig/telnyx/models/ai/assistants/canary_deploy_response.rbs +4 -109
  181. data/sig/telnyx/models/ai/assistants/clause.rbs +46 -0
  182. data/sig/telnyx/models/ai/assistants/rollout_slot.rbs +19 -0
  183. data/sig/telnyx/models/ai/assistants/rule_input.rbs +33 -0
  184. data/sig/telnyx/models/ai/assistants/rule_output.rbs +33 -0
  185. data/sig/telnyx/models/ai/assistants/serve.rbs +35 -0
  186. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +18 -152
  187. data/sig/telnyx/models/ai/inference_embedding.rbs +18 -149
  188. data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +40 -0
  189. data/sig/telnyx/models/ai/openai_create_response_params.rbs +5 -5
  190. data/sig/telnyx/models/ai/openai_list_models_response.rbs +4 -149
  191. data/sig/telnyx/models/ai/start_speaking_plan.rbs +33 -0
  192. data/sig/telnyx/models/ai/transcription_endpointing_plan.rbs +38 -0
  193. data/sig/telnyx/models/ai/transfer_tool.rbs +4 -4
  194. data/sig/telnyx/models/ai_create_response_params.rbs +5 -4
  195. data/sig/telnyx/models/ai_retrieve_models_response.rbs +4 -149
  196. data/sig/telnyx/models/call_conversation_ended.rbs +5 -0
  197. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +1 -15
  198. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -15
  199. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -15
  200. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +1 -15
  201. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +141 -102
  202. data/sig/telnyx/models/calls/transcription_engine_assemblyai_config.rbs +62 -0
  203. data/sig/telnyx/models/calls/transcription_engine_speechmatics_config.rbs +114 -0
  204. data/sig/telnyx/models/calls/transcription_engine_xai_config.rbs +130 -0
  205. data/sig/telnyx/models/calls/transcription_start_request.rbs +13 -185
  206. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -15
  207. data/sig/telnyx/models/model_metadata.rbs +142 -0
  208. data/sig/telnyx/models/network_list_interfaces_response.rbs +106 -4
  209. data/sig/telnyx/models/public_internet_gateway_create_response.rbs +6 -18
  210. data/sig/telnyx/models/public_internet_gateway_delete_response.rbs +6 -18
  211. data/sig/telnyx/models/public_internet_gateway_read.rbs +80 -0
  212. data/sig/telnyx/models/public_internet_gateway_retrieve_response.rbs +6 -18
  213. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +27 -3
  214. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +9 -1
  215. data/sig/telnyx/models/text_to_speech_generate_params.rbs +6 -6
  216. data/sig/telnyx/models/uac_connection.rbs +338 -0
  217. data/sig/telnyx/models/uac_connection_create_params.rbs +17 -211
  218. data/sig/telnyx/models/uac_connection_create_response.rbs +5 -731
  219. data/sig/telnyx/models/uac_connection_delete_response.rbs +5 -731
  220. data/sig/telnyx/models/uac_connection_retrieve_response.rbs +5 -731
  221. data/sig/telnyx/models/uac_connection_update_params.rbs +17 -211
  222. data/sig/telnyx/models/uac_connection_update_response.rbs +5 -731
  223. data/sig/telnyx/models/uac_external_settings.rbs +73 -0
  224. data/sig/telnyx/models/uac_inbound.rbs +190 -0
  225. data/sig/telnyx/models/uac_internal_settings.rbs +15 -0
  226. data/sig/telnyx/models/uac_outbound.rbs +113 -0
  227. data/sig/telnyx/models/virtual_cross_connect_combined.rbs +190 -0
  228. data/sig/telnyx/models/virtual_cross_connect_create_response.rbs +6 -18
  229. data/sig/telnyx/models/virtual_cross_connect_delete_response.rbs +6 -18
  230. data/sig/telnyx/models/virtual_cross_connect_retrieve_response.rbs +6 -18
  231. data/sig/telnyx/models/virtual_cross_connect_update_response.rbs +6 -18
  232. data/sig/telnyx/models/wireguard_interface_create_response.rbs +6 -18
  233. data/sig/telnyx/models/wireguard_interface_delete_response.rbs +6 -18
  234. data/sig/telnyx/models/wireguard_interface_read.rbs +127 -0
  235. data/sig/telnyx/models/wireguard_interface_retrieve_response.rbs +6 -18
  236. data/sig/telnyx/models/xai_voice_settings.rbs +34 -0
  237. data/sig/telnyx/models.rbs +20 -0
  238. data/sig/telnyx/resources/ai/assistants/canary_deploys.rbs +2 -2
  239. data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
  240. data/sig/telnyx/resources/ai/assistants.rbs +6 -6
  241. data/sig/telnyx/resources/ai/openai.rbs +1 -1
  242. data/sig/telnyx/resources/ai.rbs +1 -1
  243. data/sig/telnyx/resources/calls/actions.rbs +2 -4
  244. data/sig/telnyx/resources/public_internet_gateways.rbs +1 -1
  245. data/sig/telnyx/resources/texml.rbs +1 -0
  246. data/sig/telnyx/resources/uac_connections.rbs +7 -7
  247. data/sig/telnyx/resources/virtual_cross_connects.rbs +1 -1
  248. data/sig/telnyx/resources/wireguard_interfaces.rbs +1 -1
  249. metadata +71 -14
  250. data/lib/telnyx/models/public_internet_gateway_list_response.rb +0 -10
  251. data/lib/telnyx/models/uac_connection_list_response.rb +0 -876
  252. data/lib/telnyx/models/virtual_cross_connect_list_response.rb +0 -10
  253. data/lib/telnyx/models/wireguard_interface_list_response.rb +0 -10
  254. data/rbi/telnyx/models/public_internet_gateway_list_response.rbi +0 -23
  255. data/rbi/telnyx/models/uac_connection_list_response.rbi +0 -1727
  256. data/rbi/telnyx/models/virtual_cross_connect_list_response.rbi +0 -23
  257. data/rbi/telnyx/models/wireguard_interface_list_response.rbi +0 -23
  258. data/sig/telnyx/models/public_internet_gateway_list_response.rbs +0 -11
  259. data/sig/telnyx/models/uac_connection_list_response.rbs +0 -722
  260. data/sig/telnyx/models/virtual_cross_connect_list_response.rbs +0 -11
  261. data/sig/telnyx/models/wireguard_interface_list_response.rbs +0 -11
@@ -110,21 +110,12 @@ 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 do
114
- returns(
115
- T.nilable(
116
- T::Array[Telnyx::AI::Assistants::UpdateAssistant::Integration]
117
- )
118
- )
119
- end
113
+ sig { returns(T.nilable(T::Array[Telnyx::AI::AssistantIntegration])) }
120
114
  attr_reader :integrations
121
115
 
122
116
  sig do
123
117
  params(
124
- integrations:
125
- T::Array[
126
- Telnyx::AI::Assistants::UpdateAssistant::Integration::OrHash
127
- ]
118
+ integrations: T::Array[Telnyx::AI::AssistantIntegration::OrHash]
128
119
  ).void
129
120
  end
130
121
  attr_writer :integrations
@@ -137,9 +128,7 @@ module Telnyx
137
128
  # `eager_eot_threshold`).
138
129
  sig do
139
130
  returns(
140
- T.nilable(
141
- Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings
142
- )
131
+ T.nilable(Telnyx::AI::InferenceEmbeddingInterruptionSettings)
143
132
  )
144
133
  end
145
134
  attr_reader :interruption_settings
@@ -147,7 +136,7 @@ module Telnyx
147
136
  sig do
148
137
  params(
149
138
  interruption_settings:
150
- Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::OrHash
139
+ Telnyx::AI::InferenceEmbeddingInterruptionSettings::OrHash
151
140
  ).void
152
141
  end
153
142
  attr_writer :interruption_settings
@@ -166,21 +155,12 @@ module Telnyx
166
155
 
167
156
  # MCP servers attached to the assistant. Create MCP servers with
168
157
  # `/ai/mcp_servers`, then reference them by `id` here.
169
- sig do
170
- returns(
171
- T.nilable(
172
- T::Array[Telnyx::AI::Assistants::UpdateAssistant::McpServer]
173
- )
174
- )
175
- end
158
+ sig { returns(T.nilable(T::Array[Telnyx::AI::AssistantMcpServer])) }
176
159
  attr_reader :mcp_servers
177
160
 
178
161
  sig do
179
162
  params(
180
- mcp_servers:
181
- T::Array[
182
- Telnyx::AI::Assistants::UpdateAssistant::McpServer::OrHash
183
- ]
163
+ mcp_servers: T::Array[Telnyx::AI::AssistantMcpServer::OrHash]
184
164
  ).void
185
165
  end
186
166
  attr_writer :mcp_servers
@@ -363,17 +343,11 @@ module Telnyx
363
343
  greeting: String,
364
344
  insight_settings: Telnyx::AI::InsightSettings::OrHash,
365
345
  instructions: String,
366
- integrations:
367
- T::Array[
368
- Telnyx::AI::Assistants::UpdateAssistant::Integration::OrHash
369
- ],
346
+ integrations: T::Array[Telnyx::AI::AssistantIntegration::OrHash],
370
347
  interruption_settings:
371
- Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::OrHash,
348
+ Telnyx::AI::InferenceEmbeddingInterruptionSettings::OrHash,
372
349
  llm_api_key_ref: String,
373
- mcp_servers:
374
- T::Array[
375
- Telnyx::AI::Assistants::UpdateAssistant::McpServer::OrHash
376
- ],
350
+ mcp_servers: T::Array[Telnyx::AI::AssistantMcpServer::OrHash],
377
351
  messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
378
352
  model: String,
379
353
  name: String,
@@ -510,15 +484,11 @@ module Telnyx
510
484
  greeting: String,
511
485
  insight_settings: Telnyx::AI::InsightSettings,
512
486
  instructions: String,
513
- integrations:
514
- T::Array[
515
- Telnyx::AI::Assistants::UpdateAssistant::Integration
516
- ],
487
+ integrations: T::Array[Telnyx::AI::AssistantIntegration],
517
488
  interruption_settings:
518
- Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings,
489
+ Telnyx::AI::InferenceEmbeddingInterruptionSettings,
519
490
  llm_api_key_ref: String,
520
- mcp_servers:
521
- T::Array[Telnyx::AI::Assistants::UpdateAssistant::McpServer],
491
+ mcp_servers: T::Array[Telnyx::AI::AssistantMcpServer],
522
492
  messaging_settings: Telnyx::AI::MessagingSettings,
523
493
  model: String,
524
494
  name: String,
@@ -553,330 +523,6 @@ module Telnyx
553
523
  end
554
524
  def to_hash
555
525
  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
880
526
  end
881
527
  end
882
528
  end