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,17 +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(T::Array[Telnyx::AI::AssistantUpdateParams::Integration])
116
- )
117
- end
113
+ sig { returns(T.nilable(T::Array[Telnyx::AI::AssistantIntegration])) }
118
114
  attr_reader :integrations
119
115
 
120
116
  sig do
121
117
  params(
122
- integrations:
123
- T::Array[Telnyx::AI::AssistantUpdateParams::Integration::OrHash]
118
+ integrations: T::Array[Telnyx::AI::AssistantIntegration::OrHash]
124
119
  ).void
125
120
  end
126
121
  attr_writer :integrations
@@ -132,16 +127,14 @@ module Telnyx
132
127
  # `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
133
128
  # `eager_eot_threshold`).
134
129
  sig do
135
- returns(
136
- T.nilable(Telnyx::AI::AssistantUpdateParams::InterruptionSettings)
137
- )
130
+ returns(T.nilable(Telnyx::AI::InferenceEmbeddingInterruptionSettings))
138
131
  end
139
132
  attr_reader :interruption_settings
140
133
 
141
134
  sig do
142
135
  params(
143
136
  interruption_settings:
144
- Telnyx::AI::AssistantUpdateParams::InterruptionSettings::OrHash
137
+ Telnyx::AI::InferenceEmbeddingInterruptionSettings::OrHash
145
138
  ).void
146
139
  end
147
140
  attr_writer :interruption_settings
@@ -160,17 +153,12 @@ module Telnyx
160
153
 
161
154
  # MCP servers attached to the assistant. Create MCP servers with
162
155
  # `/ai/mcp_servers`, then reference them by `id` here.
163
- sig do
164
- returns(
165
- T.nilable(T::Array[Telnyx::AI::AssistantUpdateParams::McpServer])
166
- )
167
- end
156
+ sig { returns(T.nilable(T::Array[Telnyx::AI::AssistantMcpServer])) }
168
157
  attr_reader :mcp_servers
169
158
 
170
159
  sig do
171
160
  params(
172
- mcp_servers:
173
- T::Array[Telnyx::AI::AssistantUpdateParams::McpServer::OrHash]
161
+ mcp_servers: T::Array[Telnyx::AI::AssistantMcpServer::OrHash]
174
162
  ).void
175
163
  end
176
164
  attr_writer :mcp_servers
@@ -354,13 +342,11 @@ module Telnyx
354
342
  greeting: String,
355
343
  insight_settings: Telnyx::AI::InsightSettings::OrHash,
356
344
  instructions: String,
357
- integrations:
358
- T::Array[Telnyx::AI::AssistantUpdateParams::Integration::OrHash],
345
+ integrations: T::Array[Telnyx::AI::AssistantIntegration::OrHash],
359
346
  interruption_settings:
360
- Telnyx::AI::AssistantUpdateParams::InterruptionSettings::OrHash,
347
+ Telnyx::AI::InferenceEmbeddingInterruptionSettings::OrHash,
361
348
  llm_api_key_ref: String,
362
- mcp_servers:
363
- T::Array[Telnyx::AI::AssistantUpdateParams::McpServer::OrHash],
349
+ mcp_servers: T::Array[Telnyx::AI::AssistantMcpServer::OrHash],
364
350
  messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
365
351
  model: String,
366
352
  name: String,
@@ -504,13 +490,11 @@ module Telnyx
504
490
  greeting: String,
505
491
  insight_settings: Telnyx::AI::InsightSettings,
506
492
  instructions: String,
507
- integrations:
508
- T::Array[Telnyx::AI::AssistantUpdateParams::Integration],
493
+ integrations: T::Array[Telnyx::AI::AssistantIntegration],
509
494
  interruption_settings:
510
- Telnyx::AI::AssistantUpdateParams::InterruptionSettings,
495
+ Telnyx::AI::InferenceEmbeddingInterruptionSettings,
511
496
  llm_api_key_ref: String,
512
- mcp_servers:
513
- T::Array[Telnyx::AI::AssistantUpdateParams::McpServer],
497
+ mcp_servers: T::Array[Telnyx::AI::AssistantMcpServer],
514
498
  messaging_settings: Telnyx::AI::MessagingSettings,
515
499
  model: String,
516
500
  name: String,
@@ -547,330 +531,6 @@ module Telnyx
547
531
  end
548
532
  def to_hash
549
533
  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
874
534
  end
875
535
  end
876
536
  end