telnyx 5.168.0 → 5.169.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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +40 -0
  5. data/lib/telnyx/internal/type/union.rb +6 -6
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +6 -6
  7. data/lib/telnyx/models/ai/assistant_tool.rb +285 -12
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +20 -9
  9. data/lib/telnyx/models/ai/assistants/update_assistant.rb +20 -9
  10. data/lib/telnyx/models/ai/audio_transcribe_params.rb +33 -13
  11. data/lib/telnyx/models/ai/audio_transcribe_response.rb +34 -56
  12. data/lib/telnyx/models/ai/audio_transcription_response_word.rb +74 -0
  13. data/lib/telnyx/models/ai/chat_completion_request.rb +3 -26
  14. data/lib/telnyx/models/ai/flow_node.rb +2 -2
  15. data/lib/telnyx/models/ai/inference_embedding.rb +13 -10
  16. data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +10 -1
  17. data/lib/telnyx/models/ai/inference_embedding_webhook_tool_params.rb +21 -1
  18. data/lib/telnyx/models/ai/openai/function_definition.rb +31 -0
  19. data/lib/telnyx/models/ai/post_conversation_settings.rb +4 -4
  20. data/lib/telnyx/models/ai/post_conversation_settings_req.rb +4 -4
  21. data/lib/telnyx/models/ai/privacy_settings.rb +20 -1
  22. data/lib/telnyx/models/ai/retrieval_tool.rb +21 -1
  23. data/lib/telnyx/models/ai/telephony_settings.rb +86 -16
  24. data/lib/telnyx/models/ai/tool_node.rb +2 -2
  25. data/lib/telnyx/models/ai/transcription_settings.rb +12 -4
  26. data/lib/telnyx/models/ai/transcription_settings_config.rb +12 -11
  27. data/lib/telnyx/models/ai/typesafe/v1_systemone_params.rb +268 -0
  28. data/lib/telnyx/models/ai/typesafe/v1_systemone_response.rb +222 -0
  29. data/lib/telnyx/models/bot_challenge_create_params.rb +38 -0
  30. data/lib/telnyx/models/bot_challenge_create_response.rb +87 -0
  31. data/lib/telnyx/models/bot_session_list_params.rb +34 -0
  32. data/lib/telnyx/models/bot_session_list_response.rb +32 -0
  33. data/lib/telnyx/models/bot_signup_create_params.rb +103 -0
  34. data/lib/telnyx/models/bot_signup_resend_magic_link_params.rb +22 -0
  35. data/lib/telnyx/models/call_dial_params.rb +75 -7
  36. data/lib/telnyx/models/calls/action_transfer_params.rb +75 -7
  37. data/lib/telnyx/models/calls/transcription_config.rb +14 -3
  38. data/lib/telnyx/models/calls/transcription_engine_assemblyai_config.rb +6 -3
  39. data/lib/telnyx/models/calls/transcription_engine_parakeet_config.rb +1 -0
  40. data/lib/telnyx/models/compute/funcs/export_create_params.rb +62 -0
  41. data/lib/telnyx/models/compute/funcs/export_delete_all_params.rb +24 -0
  42. data/lib/telnyx/models/compute/funcs/export_list_params.rb +24 -0
  43. data/lib/telnyx/models/compute/funcs/func_log_export_config_response.rb +113 -0
  44. data/lib/telnyx/models/connection_retrieve_count_params.rb +14 -0
  45. data/lib/telnyx/models/connection_retrieve_count_response.rb +215 -0
  46. data/lib/telnyx/models/detail_record_list_params.rb +19 -2
  47. data/lib/telnyx/models/inbound_message_webhook_event.rb +3 -70
  48. data/lib/telnyx/models/machine_payment_account_credit_params.rb +29 -0
  49. data/lib/telnyx/models/machine_payment_account_credit_response.rb +223 -0
  50. data/lib/telnyx/models/message_retrieve_group_messages_response.rb +3 -3
  51. data/lib/telnyx/models/message_retrieve_response.rb +4 -4
  52. data/lib/telnyx/models/message_schedule_response.rb +3 -3
  53. data/lib/telnyx/models/message_send_group_mms_response.rb +3 -3
  54. data/lib/telnyx/models/message_send_long_code_response.rb +3 -3
  55. data/lib/telnyx/models/message_send_number_pool_response.rb +3 -3
  56. data/lib/telnyx/models/message_send_response.rb +3 -3
  57. data/lib/telnyx/models/message_send_short_code_response.rb +3 -3
  58. data/lib/telnyx/models/messaging_inbound_message.rb +71 -0
  59. data/lib/telnyx/models/messaging_inbound_message_payload.rb +216 -13
  60. data/lib/telnyx/models/messaging_outbound_message_payload.rb +42 -2
  61. data/lib/telnyx/models/noise_suppression_engine_list_params.rb +14 -0
  62. data/lib/telnyx/models/noise_suppression_engine_list_response.rb +50 -0
  63. data/lib/telnyx/models/number_order_status_update.rb +15 -3
  64. data/lib/telnyx/models/number_order_status_update_webhook_event.rb +15 -3
  65. data/lib/telnyx/models/outbound_message.rb +1 -0
  66. data/lib/telnyx/models/outbound_message_payload.rb +45 -5
  67. data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +1 -0
  68. data/lib/telnyx/models/success_response.rb +27 -0
  69. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +246 -3
  70. data/lib/telnyx/models/texml/accounts/conferences/participant_participants_params.rb +82 -1
  71. data/lib/telnyx/models/texml/call_create_params.rb +78 -0
  72. data/lib/telnyx/models/texml/call_create_response.rb +55 -0
  73. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +76 -1
  74. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +2 -2
  75. data/lib/telnyx/models.rb +18 -0
  76. data/lib/telnyx/resources/ai/assistants/versions.rb +1 -1
  77. data/lib/telnyx/resources/ai/assistants.rb +2 -2
  78. data/lib/telnyx/resources/ai/audio.rb +2 -2
  79. data/lib/telnyx/resources/ai/typesafe/v1.rb +62 -0
  80. data/lib/telnyx/resources/ai/typesafe.rb +22 -0
  81. data/lib/telnyx/resources/ai.rb +4 -0
  82. data/lib/telnyx/resources/bot_challenge.rb +53 -0
  83. data/lib/telnyx/resources/bot_sessions.rb +57 -0
  84. data/lib/telnyx/resources/bot_signup.rb +97 -0
  85. data/lib/telnyx/resources/calls/actions.rb +1 -1
  86. data/lib/telnyx/resources/calls.rb +1 -1
  87. data/lib/telnyx/resources/compute/funcs/export.rb +105 -0
  88. data/lib/telnyx/resources/compute/funcs.rb +4 -0
  89. data/lib/telnyx/resources/connections.rb +20 -0
  90. data/lib/telnyx/resources/detail_records.rb +1 -1
  91. data/lib/telnyx/resources/email_messages.rb +5 -3
  92. data/lib/telnyx/resources/machine_payments.rb +73 -0
  93. data/lib/telnyx/resources/noise_suppression_engines.rb +37 -0
  94. data/lib/telnyx/resources/texml/accounts/conferences/participants.rb +15 -1
  95. data/lib/telnyx/resources/texml/calls.rb +57 -0
  96. data/lib/telnyx/resources/texml.rb +20 -1
  97. data/lib/telnyx/resources/voice_clones.rb +4 -2
  98. data/lib/telnyx/version.rb +1 -1
  99. data/lib/telnyx.rb +33 -0
  100. data/rbi/telnyx/client.rbi +35 -0
  101. data/rbi/telnyx/models/ai/assistant_create_params.rbi +16 -12
  102. data/rbi/telnyx/models/ai/assistant_tool.rbi +423 -20
  103. data/rbi/telnyx/models/ai/assistant_update_params.rbi +42 -16
  104. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +42 -16
  105. data/rbi/telnyx/models/ai/audio_transcribe_params.rbi +71 -20
  106. data/rbi/telnyx/models/ai/audio_transcribe_response.rbi +63 -97
  107. data/rbi/telnyx/models/ai/audio_transcription_response_word.rbi +108 -0
  108. data/rbi/telnyx/models/ai/chat_completion_request.rbi +4 -58
  109. data/rbi/telnyx/models/ai/flow_node.rbi +4 -2
  110. data/rbi/telnyx/models/ai/inference_embedding.rbi +24 -16
  111. data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +10 -0
  112. data/rbi/telnyx/models/ai/inference_embedding_webhook_tool_params.rbi +29 -3
  113. data/rbi/telnyx/models/ai/openai/function_definition.rbi +56 -0
  114. data/rbi/telnyx/models/ai/post_conversation_settings.rbi +4 -4
  115. data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +4 -4
  116. data/rbi/telnyx/models/ai/privacy_settings.rbi +43 -3
  117. data/rbi/telnyx/models/ai/retrieval_tool.rbi +29 -3
  118. data/rbi/telnyx/models/ai/telephony_settings.rbi +174 -20
  119. data/rbi/telnyx/models/ai/tool_node.rbi +4 -2
  120. data/rbi/telnyx/models/ai/transcription_settings.rbi +25 -6
  121. data/rbi/telnyx/models/ai/transcription_settings_config.rbi +18 -16
  122. data/rbi/telnyx/models/ai/typesafe/v1_systemone_params.rbi +504 -0
  123. data/rbi/telnyx/models/ai/typesafe/v1_systemone_response.rbi +348 -0
  124. data/rbi/telnyx/models/bot_challenge_create_params.rbi +68 -0
  125. data/rbi/telnyx/models/bot_challenge_create_response.rbi +169 -0
  126. data/rbi/telnyx/models/bot_session_list_params.rbi +53 -0
  127. data/rbi/telnyx/models/bot_session_list_response.rbi +64 -0
  128. data/rbi/telnyx/models/bot_signup_create_params.rbi +179 -0
  129. data/rbi/telnyx/models/bot_signup_resend_magic_link_params.rbi +43 -0
  130. data/rbi/telnyx/models/call_dial_params.rbi +111 -10
  131. data/rbi/telnyx/models/calls/action_transfer_params.rbi +111 -10
  132. data/rbi/telnyx/models/calls/transcription_config.rbi +29 -5
  133. data/rbi/telnyx/models/calls/transcription_engine_assemblyai_config.rbi +11 -3
  134. data/rbi/telnyx/models/calls/transcription_engine_parakeet_config.rbi +5 -0
  135. data/rbi/telnyx/models/compute/funcs/export_create_params.rbi +84 -0
  136. data/rbi/telnyx/models/compute/funcs/export_delete_all_params.rbi +42 -0
  137. data/rbi/telnyx/models/compute/funcs/export_list_params.rbi +42 -0
  138. data/rbi/telnyx/models/compute/funcs/func_log_export_config_response.rbi +227 -0
  139. data/rbi/telnyx/models/connection_retrieve_count_params.rbi +30 -0
  140. data/rbi/telnyx/models/connection_retrieve_count_response.rbi +353 -0
  141. data/rbi/telnyx/models/detail_record_list_params.rbi +30 -2
  142. data/rbi/telnyx/models/inbound_message_webhook_event.rbi +4 -173
  143. data/rbi/telnyx/models/machine_payment_account_credit_params.rbi +51 -0
  144. data/rbi/telnyx/models/machine_payment_account_credit_response.rbi +446 -0
  145. data/rbi/telnyx/models/message_retrieve_group_messages_response.rbi +6 -12
  146. data/rbi/telnyx/models/message_retrieve_response.rbi +3 -3
  147. data/rbi/telnyx/models/message_schedule_response.rbi +4 -6
  148. data/rbi/telnyx/models/message_send_group_mms_response.rbi +4 -6
  149. data/rbi/telnyx/models/message_send_long_code_response.rbi +4 -6
  150. data/rbi/telnyx/models/message_send_number_pool_response.rbi +4 -6
  151. data/rbi/telnyx/models/message_send_response.rbi +4 -6
  152. data/rbi/telnyx/models/message_send_short_code_response.rbi +4 -6
  153. data/rbi/telnyx/models/messaging_inbound_message.rbi +152 -0
  154. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +477 -15
  155. data/rbi/telnyx/models/messaging_outbound_message_payload.rbi +90 -16
  156. data/rbi/telnyx/models/noise_suppression_engine_list_params.rbi +30 -0
  157. data/rbi/telnyx/models/noise_suppression_engine_list_response.rbi +94 -0
  158. data/rbi/telnyx/models/number_order_status_update.rbi +34 -3
  159. data/rbi/telnyx/models/number_order_status_update_webhook_event.rbi +39 -3
  160. data/rbi/telnyx/models/outbound_message.rbi +5 -0
  161. data/rbi/telnyx/models/outbound_message_payload.rbi +74 -4
  162. data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +5 -0
  163. data/rbi/telnyx/models/success_response.rbi +36 -0
  164. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +339 -0
  165. data/rbi/telnyx/models/texml/accounts/conferences/participant_participants_params.rbi +111 -0
  166. data/rbi/telnyx/models/texml/call_create_params.rbi +124 -0
  167. data/rbi/telnyx/models/texml/call_create_response.rbi +98 -0
  168. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +103 -0
  169. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +4 -4
  170. data/rbi/telnyx/models.rbi +21 -0
  171. data/rbi/telnyx/resources/ai/assistants/versions.rbi +19 -7
  172. data/rbi/telnyx/resources/ai/assistants.rbi +25 -12
  173. data/rbi/telnyx/resources/ai/audio.rbi +20 -9
  174. data/rbi/telnyx/resources/ai/typesafe/v1.rbi +61 -0
  175. data/rbi/telnyx/resources/ai/typesafe.rbi +19 -0
  176. data/rbi/telnyx/resources/ai.rbi +3 -0
  177. data/rbi/telnyx/resources/bot_challenge.rbi +45 -0
  178. data/rbi/telnyx/resources/bot_sessions.rbi +45 -0
  179. data/rbi/telnyx/resources/bot_signup.rbi +87 -0
  180. data/rbi/telnyx/resources/calls/actions.rbi +6 -5
  181. data/rbi/telnyx/resources/calls.rbi +6 -5
  182. data/rbi/telnyx/resources/compute/funcs/export.rbi +86 -0
  183. data/rbi/telnyx/resources/compute/funcs.rbi +3 -0
  184. data/rbi/telnyx/resources/connections.rbi +11 -0
  185. data/rbi/telnyx/resources/detail_records.rbi +12 -1
  186. data/rbi/telnyx/resources/email_messages.rbi +5 -3
  187. data/rbi/telnyx/resources/machine_payments.rbi +64 -0
  188. data/rbi/telnyx/resources/noise_suppression_engines.rbi +26 -0
  189. data/rbi/telnyx/resources/texml/accounts/conferences/participants.rbi +32 -0
  190. data/rbi/telnyx/resources/texml/calls.rbi +50 -0
  191. data/rbi/telnyx/resources/texml.rbi +36 -0
  192. data/rbi/telnyx/resources/voice_clones.rbi +4 -2
  193. data/sig/telnyx/client.rbs +10 -0
  194. data/sig/telnyx/models/ai/assistant_tool.rbs +162 -23
  195. data/sig/telnyx/models/ai/audio_transcribe_params.rbs +10 -0
  196. data/sig/telnyx/models/ai/audio_transcribe_response.rbs +29 -43
  197. data/sig/telnyx/models/ai/audio_transcription_response_word.rbs +60 -0
  198. data/sig/telnyx/models/ai/chat_completion_request.rbs +4 -35
  199. data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +5 -0
  200. data/sig/telnyx/models/ai/inference_embedding_webhook_tool_params.rbs +10 -3
  201. data/sig/telnyx/models/ai/openai/function_definition.rbs +34 -0
  202. data/sig/telnyx/models/ai/privacy_settings.rbs +11 -3
  203. data/sig/telnyx/models/ai/retrieval_tool.rbs +10 -3
  204. data/sig/telnyx/models/ai/telephony_settings.rbs +52 -4
  205. data/sig/telnyx/models/ai/transcription_settings.rbs +4 -0
  206. data/sig/telnyx/models/ai/typesafe/v1_systemone_params.rbs +195 -0
  207. data/sig/telnyx/models/ai/typesafe/v1_systemone_response.rbs +141 -0
  208. data/sig/telnyx/models/bot_challenge_create_params.rbs +42 -0
  209. data/sig/telnyx/models/bot_challenge_create_response.rbs +72 -0
  210. data/sig/telnyx/models/bot_session_list_params.rbs +28 -0
  211. data/sig/telnyx/models/bot_session_list_response.rbs +26 -0
  212. data/sig/telnyx/models/bot_signup_create_params.rbs +89 -0
  213. data/sig/telnyx/models/bot_signup_resend_magic_link_params.rbs +20 -0
  214. data/sig/telnyx/models/call_dial_params.rbs +49 -0
  215. data/sig/telnyx/models/calls/action_transfer_params.rbs +49 -0
  216. data/sig/telnyx/models/calls/transcription_config.rbs +4 -0
  217. data/sig/telnyx/models/calls/transcription_engine_assemblyai_config.rbs +3 -1
  218. data/sig/telnyx/models/calls/transcription_engine_parakeet_config.rbs +3 -1
  219. data/sig/telnyx/models/compute/funcs/export_create_params.rbs +50 -0
  220. data/sig/telnyx/models/compute/funcs/export_delete_all_params.rbs +27 -0
  221. data/sig/telnyx/models/compute/funcs/export_list_params.rbs +27 -0
  222. data/sig/telnyx/models/compute/funcs/func_log_export_config_response.rbs +115 -0
  223. data/sig/telnyx/models/connection_retrieve_count_params.rbs +15 -0
  224. data/sig/telnyx/models/connection_retrieve_count_response.rbs +169 -0
  225. data/sig/telnyx/models/inbound_message_webhook_event.rbs +6 -79
  226. data/sig/telnyx/models/machine_payment_account_credit_params.rbs +23 -0
  227. data/sig/telnyx/models/machine_payment_account_credit_response.rbs +164 -0
  228. data/sig/telnyx/models/message_retrieve_group_messages_response.rbs +6 -8
  229. data/sig/telnyx/models/message_retrieve_response.rbs +1 -2
  230. data/sig/telnyx/models/message_schedule_response.rbs +6 -7
  231. data/sig/telnyx/models/message_send_group_mms_response.rbs +6 -6
  232. data/sig/telnyx/models/message_send_long_code_response.rbs +6 -6
  233. data/sig/telnyx/models/message_send_number_pool_response.rbs +6 -6
  234. data/sig/telnyx/models/message_send_response.rbs +6 -7
  235. data/sig/telnyx/models/message_send_short_code_response.rbs +6 -6
  236. data/sig/telnyx/models/messaging_inbound_message.rbs +76 -0
  237. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +235 -6
  238. data/sig/telnyx/models/messaging_outbound_message_payload.rbs +39 -1
  239. data/sig/telnyx/models/noise_suppression_engine_list_params.rbs +15 -0
  240. data/sig/telnyx/models/noise_suppression_engine_list_response.rbs +43 -0
  241. data/sig/telnyx/models/number_order_status_update.rbs +14 -4
  242. data/sig/telnyx/models/number_order_status_update_webhook_event.rbs +14 -4
  243. data/sig/telnyx/models/outbound_message.rbs +2 -1
  244. data/sig/telnyx/models/outbound_message_payload.rbs +45 -7
  245. data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +2 -0
  246. data/sig/telnyx/models/success_response.rbs +15 -0
  247. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +159 -0
  248. data/sig/telnyx/models/texml/accounts/conferences/participant_participants_params.rbs +49 -0
  249. data/sig/telnyx/models/texml/call_create_params.rbs +72 -0
  250. data/sig/telnyx/models/texml/call_create_response.rbs +47 -0
  251. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +49 -0
  252. data/sig/telnyx/models.rbs +18 -0
  253. data/sig/telnyx/resources/ai/typesafe/v1.rbs +17 -0
  254. data/sig/telnyx/resources/ai/typesafe.rbs +11 -0
  255. data/sig/telnyx/resources/ai.rbs +2 -0
  256. data/sig/telnyx/resources/bot_challenge.rbs +14 -0
  257. data/sig/telnyx/resources/bot_sessions.rbs +13 -0
  258. data/sig/telnyx/resources/bot_signup.rbs +24 -0
  259. data/sig/telnyx/resources/compute/funcs/export.rbs +30 -0
  260. data/sig/telnyx/resources/compute/funcs.rbs +2 -0
  261. data/sig/telnyx/resources/connections.rbs +4 -0
  262. data/sig/telnyx/resources/machine_payments.rbs +12 -0
  263. data/sig/telnyx/resources/noise_suppression_engines.rbs +11 -0
  264. data/sig/telnyx/resources/texml/accounts/conferences/participants.rbs +7 -0
  265. data/sig/telnyx/resources/texml/calls.rbs +19 -0
  266. data/sig/telnyx/resources/texml.rbs +9 -0
  267. metadata +101 -2
@@ -230,6 +230,36 @@ module Telnyx
230
230
  },
231
231
  api_name: :MachineDetection
232
232
 
233
+ # @!attribute machine_detection_beep_max_frequency
234
+ # Highest frequency, in Hz, that a tone can reach and still be treated as a beep.
235
+ # Only used when MachineDetection is enabled.
236
+ #
237
+ # @return [Integer, nil]
238
+ optional :machine_detection_beep_max_frequency,
239
+ Integer,
240
+ api_name: :MachineDetectionBeepMaxFrequency
241
+
242
+ # @!attribute machine_detection_beep_min_frequency
243
+ # Lowest frequency, in Hz, that a tone must reach to be treated as a beep. Raising
244
+ # it above 480 excludes North American ringback (440 + 480 Hz), which can
245
+ # otherwise be reported as a beep when the `freq_only` profile is in use. Only
246
+ # used when MachineDetection is enabled.
247
+ #
248
+ # @return [Integer, nil]
249
+ optional :machine_detection_beep_min_frequency,
250
+ Integer,
251
+ api_name: :MachineDetectionBeepMinFrequency
252
+
253
+ # @!attribute machine_detection_beep_min_tone_duration
254
+ # Shortest tone, in milliseconds, that can be treated as a beep. Raising it
255
+ # rejects brief tones such as call-progress blips. Only used when MachineDetection
256
+ # is enabled.
257
+ #
258
+ # @return [Integer, nil]
259
+ optional :machine_detection_beep_min_tone_duration,
260
+ Integer,
261
+ api_name: :MachineDetectionBeepMinToneDuration
262
+
233
263
  # @!attribute machine_detection_beep_profile
234
264
  # Selects which detectors must validate a beep. `both` requires the amplitude and
235
265
  # frequency detectors to agree. `freq_only` uses the frequency detector alone, for
@@ -243,6 +273,43 @@ module Telnyx
243
273
  },
244
274
  api_name: :MachineDetectionBeepProfile
245
275
 
276
+ # @!attribute machine_detection_beep_spectral_confirmation
277
+ # When enabled, a candidate beep must pass an additional spectral check before it
278
+ # is reported. Only used when MachineDetection is enabled.
279
+ #
280
+ # @return [Boolean, nil]
281
+ optional :machine_detection_beep_spectral_confirmation,
282
+ Telnyx::Internal::Type::Boolean,
283
+ api_name: :MachineDetectionBeepSpectralConfirmation
284
+
285
+ # @!attribute machine_detection_beep_spectral_min_purity
286
+ # Minimum spectral purity, from 0 to 1, for a tone to be treated as a beep.
287
+ # Raising it rejects mixed tones such as ringback, which combines two frequencies.
288
+ # Only used when MachineDetection is enabled.
289
+ #
290
+ # @return [Float, nil]
291
+ optional :machine_detection_beep_spectral_min_purity,
292
+ Float,
293
+ api_name: :MachineDetectionBeepSpectralMinPurity
294
+
295
+ # @!attribute machine_detection_beep_spectral_reject_fax_cng
296
+ # When enabled, the fax CNG tone is rejected rather than reported as a beep. Only
297
+ # used when MachineDetection is enabled.
298
+ #
299
+ # @return [Boolean, nil]
300
+ optional :machine_detection_beep_spectral_reject_fax_cng,
301
+ Telnyx::Internal::Type::Boolean,
302
+ api_name: :MachineDetectionBeepSpectralRejectFaxCng
303
+
304
+ # @!attribute machine_detection_beep_spectral_window
305
+ # Length of the spectral confirmation window, in milliseconds. Only used when
306
+ # MachineDetection is enabled.
307
+ #
308
+ # @return [Integer, nil]
309
+ optional :machine_detection_beep_spectral_window,
310
+ Integer,
311
+ api_name: :MachineDetectionBeepSpectralWindow
312
+
246
313
  # @!attribute machine_detection_silence_timeout
247
314
  # If initial silence duration is greater than this value, consider it a machine.
248
315
  # Ignored when `premium` detection is used.
@@ -423,7 +490,7 @@ module Telnyx
423
490
  # @return [String, nil]
424
491
  optional :wait_url, String, api_name: :WaitUrl
425
492
 
426
- # @!method initialize(account_sid:, conference_sid:, amd_status_callback: nil, amd_status_callback_method: nil, application_sid: nil, beep: nil, caller_id: nil, call_sid_to_coach: nil, cancel_playback_on_detect_message_end: nil, cancel_playback_on_machine_detection: nil, coaching: nil, conference_record: nil, conference_recording_status_callback: nil, conference_recording_status_callback_event: nil, conference_recording_status_callback_method: nil, conference_recording_timeout: nil, conference_status_callback: nil, conference_status_callback_event: nil, conference_status_callback_method: nil, conference_trim: nil, custom_headers: nil, early_media: nil, end_conference_on_exit: nil, from: nil, label: nil, machine_detection: nil, machine_detection_beep_profile: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, max_participants: nil, muted: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_track: nil, sip_auth_password: nil, sip_auth_username: nil, start_conference_on_enter: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, time_limit: nil, timeout_seconds: nil, to: nil, trim: nil, wait_url: nil, request_options: {})
493
+ # @!method initialize(account_sid:, conference_sid:, amd_status_callback: nil, amd_status_callback_method: nil, application_sid: nil, beep: nil, caller_id: nil, call_sid_to_coach: nil, cancel_playback_on_detect_message_end: nil, cancel_playback_on_machine_detection: nil, coaching: nil, conference_record: nil, conference_recording_status_callback: nil, conference_recording_status_callback_event: nil, conference_recording_status_callback_method: nil, conference_recording_timeout: nil, conference_status_callback: nil, conference_status_callback_event: nil, conference_status_callback_method: nil, conference_trim: nil, custom_headers: nil, early_media: nil, end_conference_on_exit: nil, from: nil, label: nil, machine_detection: nil, machine_detection_beep_max_frequency: nil, machine_detection_beep_min_frequency: nil, machine_detection_beep_min_tone_duration: nil, machine_detection_beep_profile: nil, machine_detection_beep_spectral_confirmation: nil, machine_detection_beep_spectral_min_purity: nil, machine_detection_beep_spectral_reject_fax_cng: nil, machine_detection_beep_spectral_window: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, max_participants: nil, muted: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_track: nil, sip_auth_password: nil, sip_auth_username: nil, start_conference_on_enter: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, time_limit: nil, timeout_seconds: nil, to: nil, trim: nil, wait_url: nil, request_options: {})
427
494
  # Some parameter documentations has been truncated, see
428
495
  # {Telnyx::Models::Texml::Accounts::Conferences::ParticipantParticipantsParams}
429
496
  # for more details.
@@ -480,8 +547,22 @@ module Telnyx
480
547
  #
481
548
  # @param machine_detection [Symbol, Telnyx::Models::Texml::Accounts::Conferences::ParticipantParticipantsParams::MachineDetection] Whether to detect if a human or an answering machine picked up the call. Use `En
482
549
  #
550
+ # @param machine_detection_beep_max_frequency [Integer] Highest frequency, in Hz, that a tone can reach and still be treated as a beep.
551
+ #
552
+ # @param machine_detection_beep_min_frequency [Integer] Lowest frequency, in Hz, that a tone must reach to be treated as a beep. Raising
553
+ #
554
+ # @param machine_detection_beep_min_tone_duration [Integer] Shortest tone, in milliseconds, that can be treated as a beep. Raising it reject
555
+ #
483
556
  # @param machine_detection_beep_profile [Symbol, Telnyx::Models::Texml::Accounts::Conferences::ParticipantParticipantsParams::MachineDetectionBeepProfile] Selects which detectors must validate a beep. `both` requires the amplitude and
484
557
  #
558
+ # @param machine_detection_beep_spectral_confirmation [Boolean] When enabled, a candidate beep must pass an additional spectral check before it
559
+ #
560
+ # @param machine_detection_beep_spectral_min_purity [Float] Minimum spectral purity, from 0 to 1, for a tone to be treated as a beep. Raisin
561
+ #
562
+ # @param machine_detection_beep_spectral_reject_fax_cng [Boolean] When enabled, the fax CNG tone is rejected rather than reported as a beep. Only
563
+ #
564
+ # @param machine_detection_beep_spectral_window [Integer] Length of the spectral confirmation window, in milliseconds. Only used when Mach
565
+ #
485
566
  # @param machine_detection_silence_timeout [Integer] If initial silence duration is greater than this value, consider it a machine. I
486
567
  #
487
568
  # @param machine_detection_speech_end_threshold [Integer] Silence duration threshold after a greeting message or voice for it be considere
@@ -0,0 +1,78 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Texml
6
+ # @see Telnyx::Resources::Texml::Calls#create
7
+ class CallCreateParams < Telnyx::Internal::Type::BaseModel
8
+ extend Telnyx::Internal::Type::RequestParameters::Converter
9
+ include Telnyx::Internal::Type::RequestParameters
10
+
11
+ # @!attribute connection_id
12
+ #
13
+ # @return [String]
14
+ required :connection_id, String
15
+
16
+ # @!attribute from
17
+ # The E.164-formatted phone number or SIP URI to present as the caller.
18
+ #
19
+ # @return [String]
20
+ required :from, String, api_name: :From
21
+
22
+ # @!attribute to
23
+ # The E.164-formatted phone number or SIP URI to call.
24
+ #
25
+ # @return [String]
26
+ required :to, String, api_name: :To
27
+
28
+ # @!attribute method_
29
+ # HTTP method used to retrieve TeXML instructions from Url.
30
+ #
31
+ # @return [Symbol, Telnyx::Models::Texml::CallCreateParams::Method, nil]
32
+ optional :method_, enum: -> { Telnyx::Texml::CallCreateParams::Method }, api_name: :Method
33
+
34
+ # @!attribute texml
35
+ # Inline TeXML instructions to execute when the call is answered.
36
+ #
37
+ # @return [String, nil]
38
+ optional :texml, String, api_name: :Texml
39
+
40
+ # @!attribute url
41
+ # The URL from which to retrieve TeXML instructions. Overrides the TeXML
42
+ # application XML request URL.
43
+ #
44
+ # @return [String, nil]
45
+ optional :url, String, api_name: :Url
46
+
47
+ # @!method initialize(connection_id:, from:, to:, method_: nil, texml: nil, url: nil, request_options: {})
48
+ # Some parameter documentations has been truncated, see
49
+ # {Telnyx::Models::Texml::CallCreateParams} for more details.
50
+ #
51
+ # @param connection_id [String]
52
+ #
53
+ # @param from [String] The E.164-formatted phone number or SIP URI to present as the caller.
54
+ #
55
+ # @param to [String] The E.164-formatted phone number or SIP URI to call.
56
+ #
57
+ # @param method_ [Symbol, Telnyx::Models::Texml::CallCreateParams::Method] HTTP method used to retrieve TeXML instructions from Url.
58
+ #
59
+ # @param texml [String] Inline TeXML instructions to execute when the call is answered.
60
+ #
61
+ # @param url [String] The URL from which to retrieve TeXML instructions. Overrides the TeXML applicati
62
+ #
63
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
64
+
65
+ # HTTP method used to retrieve TeXML instructions from Url.
66
+ module Method
67
+ extend Telnyx::Internal::Type::Enum
68
+
69
+ GET = :GET
70
+ POST = :POST
71
+
72
+ # @!method self.values
73
+ # @return [Array<Symbol>]
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Texml
6
+ # @see Telnyx::Resources::Texml::Calls#create
7
+ class CallCreateResponse < Telnyx::Internal::Type::BaseModel
8
+ # @!attribute call_sid
9
+ # The call control ID of the created call.
10
+ #
11
+ # @return [String]
12
+ required :call_sid, String
13
+
14
+ # @!attribute from
15
+ # The caller address.
16
+ #
17
+ # @return [String]
18
+ required :from, String
19
+
20
+ # @!attribute status
21
+ # The initial status of the outbound call.
22
+ #
23
+ # @return [Symbol, Telnyx::Models::Texml::CallCreateResponse::Status]
24
+ required :status, enum: -> { Telnyx::Models::Texml::CallCreateResponse::Status }
25
+
26
+ # @!attribute to
27
+ # The called address.
28
+ #
29
+ # @return [String]
30
+ required :to, String
31
+
32
+ # @!method initialize(call_sid:, from:, status:, to:)
33
+ # @param call_sid [String] The call control ID of the created call.
34
+ #
35
+ # @param from [String] The caller address.
36
+ #
37
+ # @param status [Symbol, Telnyx::Models::Texml::CallCreateResponse::Status] The initial status of the outbound call.
38
+ #
39
+ # @param to [String] The called address.
40
+
41
+ # The initial status of the outbound call.
42
+ #
43
+ # @see Telnyx::Models::Texml::CallCreateResponse#status
44
+ module Status
45
+ extend Telnyx::Internal::Type::Enum
46
+
47
+ QUEUED = :queued
48
+
49
+ # @!method self.values
50
+ # @return [Array<Symbol>]
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -127,6 +127,32 @@ module Telnyx
127
127
  enum: -> { Telnyx::TexmlInitiateAICallParams::MachineDetection },
128
128
  api_name: :MachineDetection
129
129
 
130
+ # @!attribute machine_detection_beep_max_frequency
131
+ # Highest frequency, in Hz, that a tone can reach and still be treated as a beep.
132
+ # Only used when MachineDetection is enabled.
133
+ #
134
+ # @return [Integer, nil]
135
+ optional :machine_detection_beep_max_frequency, Integer, api_name: :MachineDetectionBeepMaxFrequency
136
+
137
+ # @!attribute machine_detection_beep_min_frequency
138
+ # Lowest frequency, in Hz, that a tone must reach to be treated as a beep. Raising
139
+ # it above 480 excludes North American ringback (440 + 480 Hz), which can
140
+ # otherwise be reported as a beep when the `freq_only` profile is in use. Only
141
+ # used when MachineDetection is enabled.
142
+ #
143
+ # @return [Integer, nil]
144
+ optional :machine_detection_beep_min_frequency, Integer, api_name: :MachineDetectionBeepMinFrequency
145
+
146
+ # @!attribute machine_detection_beep_min_tone_duration
147
+ # Shortest tone, in milliseconds, that can be treated as a beep. Raising it
148
+ # rejects brief tones such as call-progress blips. Only used when MachineDetection
149
+ # is enabled.
150
+ #
151
+ # @return [Integer, nil]
152
+ optional :machine_detection_beep_min_tone_duration,
153
+ Integer,
154
+ api_name: :MachineDetectionBeepMinToneDuration
155
+
130
156
  # @!attribute machine_detection_beep_profile
131
157
  # Selects which detectors must validate a beep. `both` requires the amplitude and
132
158
  # frequency detectors to agree. `freq_only` uses the frequency detector alone, for
@@ -138,6 +164,41 @@ module Telnyx
138
164
  enum: -> { Telnyx::TexmlInitiateAICallParams::MachineDetectionBeepProfile },
139
165
  api_name: :MachineDetectionBeepProfile
140
166
 
167
+ # @!attribute machine_detection_beep_spectral_confirmation
168
+ # When enabled, a candidate beep must pass an additional spectral check before it
169
+ # is reported. Only used when MachineDetection is enabled.
170
+ #
171
+ # @return [Boolean, nil]
172
+ optional :machine_detection_beep_spectral_confirmation,
173
+ Telnyx::Internal::Type::Boolean,
174
+ api_name: :MachineDetectionBeepSpectralConfirmation
175
+
176
+ # @!attribute machine_detection_beep_spectral_min_purity
177
+ # Minimum spectral purity, from 0 to 1, for a tone to be treated as a beep.
178
+ # Raising it rejects mixed tones such as ringback, which combines two frequencies.
179
+ # Only used when MachineDetection is enabled.
180
+ #
181
+ # @return [Float, nil]
182
+ optional :machine_detection_beep_spectral_min_purity,
183
+ Float,
184
+ api_name: :MachineDetectionBeepSpectralMinPurity
185
+
186
+ # @!attribute machine_detection_beep_spectral_reject_fax_cng
187
+ # When enabled, the fax CNG tone is rejected rather than reported as a beep. Only
188
+ # used when MachineDetection is enabled.
189
+ #
190
+ # @return [Boolean, nil]
191
+ optional :machine_detection_beep_spectral_reject_fax_cng,
192
+ Telnyx::Internal::Type::Boolean,
193
+ api_name: :MachineDetectionBeepSpectralRejectFaxCng
194
+
195
+ # @!attribute machine_detection_beep_spectral_window
196
+ # Length of the spectral confirmation window, in milliseconds. Only used when
197
+ # MachineDetection is enabled.
198
+ #
199
+ # @return [Integer, nil]
200
+ optional :machine_detection_beep_spectral_window, Integer, api_name: :MachineDetectionBeepSpectralWindow
201
+
141
202
  # @!attribute machine_detection_prompt_end_timeout
142
203
  # Silence duration threshold after a call screening prompt before ending prompt
143
204
  # detection, in milliseconds. Used when `DetectionMode` is `PremiumCallScreening`.
@@ -318,7 +379,7 @@ module Telnyx
318
379
  # @return [Symbol, Telnyx::Models::TexmlInitiateAICallParams::Trim, nil]
319
380
  optional :trim, enum: -> { Telnyx::TexmlInitiateAICallParams::Trim }, api_name: :Trim
320
381
 
321
- # @!method initialize(connection_id:, ai_assistant_id:, from:, to:, ai_assistant_dynamic_variables: nil, ai_assistant_version: nil, async_amd: nil, async_amd_status_callback: nil, async_amd_status_callback_method: nil, caller_id: nil, conversation_callback: nil, conversation_callback_method: nil, conversation_callbacks: nil, custom_headers: nil, detection_mode: nil, machine_detection: nil, machine_detection_beep_profile: nil, machine_detection_prompt_end_timeout: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, passports: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_timeout: nil, recording_track: nil, send_recording_url: nil, sip_auth_password: nil, sip_auth_username: nil, sip_region: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, status_callbacks: nil, time_limit: nil, timeout_seconds: nil, trim: nil, request_options: {})
382
+ # @!method initialize(connection_id:, ai_assistant_id:, from:, to:, ai_assistant_dynamic_variables: nil, ai_assistant_version: nil, async_amd: nil, async_amd_status_callback: nil, async_amd_status_callback_method: nil, caller_id: nil, conversation_callback: nil, conversation_callback_method: nil, conversation_callbacks: nil, custom_headers: nil, detection_mode: nil, machine_detection: nil, machine_detection_beep_max_frequency: nil, machine_detection_beep_min_frequency: nil, machine_detection_beep_min_tone_duration: nil, machine_detection_beep_profile: nil, machine_detection_beep_spectral_confirmation: nil, machine_detection_beep_spectral_min_purity: nil, machine_detection_beep_spectral_reject_fax_cng: nil, machine_detection_beep_spectral_window: nil, machine_detection_prompt_end_timeout: nil, machine_detection_silence_timeout: nil, machine_detection_speech_end_threshold: nil, machine_detection_speech_threshold: nil, machine_detection_timeout: nil, passports: nil, preferred_codecs: nil, record: nil, recording_channels: nil, recording_status_callback: nil, recording_status_callback_event: nil, recording_status_callback_method: nil, recording_timeout: nil, recording_track: nil, send_recording_url: nil, sip_auth_password: nil, sip_auth_username: nil, sip_region: nil, status_callback: nil, status_callback_event: nil, status_callback_method: nil, status_callbacks: nil, time_limit: nil, timeout_seconds: nil, trim: nil, request_options: {})
322
383
  # Some parameter documentations has been truncated, see
323
384
  # {Telnyx::Models::TexmlInitiateAICallParams} for more details.
324
385
  #
@@ -354,8 +415,22 @@ module Telnyx
354
415
  #
355
416
  # @param machine_detection [Symbol, Telnyx::Models::TexmlInitiateAICallParams::MachineDetection] Enables Answering Machine Detection.
356
417
  #
418
+ # @param machine_detection_beep_max_frequency [Integer] Highest frequency, in Hz, that a tone can reach and still be treated as a beep.
419
+ #
420
+ # @param machine_detection_beep_min_frequency [Integer] Lowest frequency, in Hz, that a tone must reach to be treated as a beep. Raising
421
+ #
422
+ # @param machine_detection_beep_min_tone_duration [Integer] Shortest tone, in milliseconds, that can be treated as a beep. Raising it reject
423
+ #
357
424
  # @param machine_detection_beep_profile [Symbol, Telnyx::Models::TexmlInitiateAICallParams::MachineDetectionBeepProfile] Selects which detectors must validate a beep. `both` requires the amplitude and
358
425
  #
426
+ # @param machine_detection_beep_spectral_confirmation [Boolean] When enabled, a candidate beep must pass an additional spectral check before it
427
+ #
428
+ # @param machine_detection_beep_spectral_min_purity [Float] Minimum spectral purity, from 0 to 1, for a tone to be treated as a beep. Raisin
429
+ #
430
+ # @param machine_detection_beep_spectral_reject_fax_cng [Boolean] When enabled, the fax CNG tone is rejected rather than reported as a beep. Only
431
+ #
432
+ # @param machine_detection_beep_spectral_window [Integer] Length of the spectral confirmation window, in milliseconds. Only used when Mach
433
+ #
359
434
  # @param machine_detection_prompt_end_timeout [Integer] Silence duration threshold after a call screening prompt before ending prompt de
360
435
  #
361
436
  # @param machine_detection_silence_timeout [Integer] If initial silence duration is greater than this value, consider it a machine. I
@@ -160,8 +160,8 @@ module Telnyx
160
160
  class TelnyxUltraClone < Telnyx::Internal::Type::BaseModel
161
161
  # @!attribute audio_file
162
162
  # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
163
- # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
164
- # size: 5MB.
163
+ # For best quality, provide up to 60 seconds of clear, uninterrupted speech.
164
+ # Maximum size: 5MB.
165
165
  #
166
166
  # @return [Pathname, StringIO, IO, String, Telnyx::FilePart]
167
167
  required :audio_file, Telnyx::Internal::Type::FileInput
data/lib/telnyx/models.rb CHANGED
@@ -157,6 +157,14 @@ module Telnyx
157
157
 
158
158
  BookAppointmentToolParams = Telnyx::Models::BookAppointmentToolParams
159
159
 
160
+ BotChallengeCreateParams = Telnyx::Models::BotChallengeCreateParams
161
+
162
+ BotSessionListParams = Telnyx::Models::BotSessionListParams
163
+
164
+ BotSignupCreateParams = Telnyx::Models::BotSignupCreateParams
165
+
166
+ BotSignupResendMagicLinkParams = Telnyx::Models::BotSignupResendMagicLinkParams
167
+
160
168
  BrandedCallingPaginationMeta = Telnyx::Models::BrandedCallingPaginationMeta
161
169
 
162
170
  BulkMessagingSettingsUpdatePhoneNumbers = Telnyx::Models::BulkMessagingSettingsUpdatePhoneNumbers
@@ -477,6 +485,8 @@ module Telnyx
477
485
 
478
486
  ConnectionNoiseSuppressionDetails = Telnyx::Models::ConnectionNoiseSuppressionDetails
479
487
 
488
+ ConnectionRetrieveCountParams = Telnyx::Models::ConnectionRetrieveCountParams
489
+
480
490
  ConnectionRetrieveParams = Telnyx::Models::ConnectionRetrieveParams
481
491
 
482
492
  ConnectionRtcpSettings = Telnyx::Models::ConnectionRtcpSettings
@@ -1024,6 +1034,8 @@ module Telnyx
1024
1034
 
1025
1035
  ListRetrieveByZoneParams = Telnyx::Models::ListRetrieveByZoneParams
1026
1036
 
1037
+ MachinePaymentAccountCreditParams = Telnyx::Models::MachinePaymentAccountCreditParams
1038
+
1027
1039
  ManagedAccount = Telnyx::Models::ManagedAccount
1028
1040
 
1029
1041
  ManagedAccountBalance = Telnyx::Models::ManagedAccountBalance
@@ -1151,6 +1163,8 @@ module Telnyx
1151
1163
 
1152
1164
  MessagingHostedNumberUpdateParams = Telnyx::Models::MessagingHostedNumberUpdateParams
1153
1165
 
1166
+ MessagingInboundMessage = Telnyx::Models::MessagingInboundMessage
1167
+
1154
1168
  MessagingInboundMessagePayload = Telnyx::Models::MessagingInboundMessagePayload
1155
1169
 
1156
1170
  MessagingMessagingProfile = Telnyx::Models::MessagingMessagingProfile
@@ -1268,6 +1282,8 @@ module Telnyx
1268
1282
 
1269
1283
  NetworkUpdateParams = Telnyx::Models::NetworkUpdateParams
1270
1284
 
1285
+ NoiseSuppressionEngineListParams = Telnyx::Models::NoiseSuppressionEngineListParams
1286
+
1271
1287
  NotificationChannel = Telnyx::Models::NotificationChannel
1272
1288
 
1273
1289
  NotificationChannelCreateParams = Telnyx::Models::NotificationChannelCreateParams
@@ -1886,6 +1902,8 @@ module Telnyx
1886
1902
 
1887
1903
  SubNumberOrderUpdateRequirementGroupParams = Telnyx::Models::SubNumberOrderUpdateRequirementGroupParams
1888
1904
 
1905
+ SuccessResponse = Telnyx::Models::SuccessResponse
1906
+
1889
1907
  SuppressedRecipient = Telnyx::Models::SuppressedRecipient
1890
1908
 
1891
1909
  TelephonyCredential = Telnyx::Models::TelephonyCredential
@@ -99,7 +99,7 @@ module Telnyx
99
99
  #
100
100
  # @param tool_ids [Array<String>] Body param: IDs of shared tools to attach to the assistant. New integrations sho
101
101
  #
102
- # @param tools [Array<Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::AssistantTool::ClientSideTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn, Telnyx::Models::AI::AssistantTool::Pay, Telnyx::Models::AI::AssistantTool::UpdateDynamicVariables>] Body param: Deprecated for new integrations. Inline tool definitions available t
102
+ # @param tools [Array<Telnyx::Models::AI::AssistantTool::Function, Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::AssistantTool::ClientSideTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::AssistantTool::Hangup, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn, Telnyx::Models::AI::AssistantTool::Pay, Telnyx::Models::AI::AssistantTool::UpdateDynamicVariables>] Body param: Deprecated for new integrations. Inline tool definitions available t
103
103
  #
104
104
  # @param transcription [Telnyx::Models::AI::TranscriptionSettings] Body param
105
105
  #
@@ -91,7 +91,7 @@ module Telnyx
91
91
  #
92
92
  # @param tool_ids [Array<String>] Body param: IDs of shared tools to attach to the assistant. New integrations sho
93
93
  #
94
- # @param tools [Array<Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::AssistantTool::ClientSideTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn, Telnyx::Models::AI::AssistantTool::Pay, Telnyx::Models::AI::AssistantTool::UpdateDynamicVariables>] Body param: Deprecated for new integrations. Inline tool definitions available t
94
+ # @param tools [Array<Telnyx::Models::AI::AssistantTool::Function, Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::AssistantTool::ClientSideTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::AssistantTool::Hangup, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn, Telnyx::Models::AI::AssistantTool::Pay, Telnyx::Models::AI::AssistantTool::UpdateDynamicVariables>] Body param: Deprecated for new integrations. Inline tool definitions available t
95
95
  #
96
96
  # @param transcription [Telnyx::Models::AI::TranscriptionSettings] Body param
97
97
  #
@@ -213,7 +213,7 @@ module Telnyx
213
213
  #
214
214
  # @param tool_ids [Array<String>] IDs of shared tools to attach to the assistant. New integrations should prefer `
215
215
  #
216
- # @param tools [Array<Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::AssistantTool::ClientSideTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn, Telnyx::Models::AI::AssistantTool::Pay, Telnyx::Models::AI::AssistantTool::UpdateDynamicVariables>] Deprecated for new integrations. Inline tool definitions available to the assist
216
+ # @param tools [Array<Telnyx::Models::AI::AssistantTool::Function, Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::AssistantTool::ClientSideTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::AssistantTool::Hangup, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn, Telnyx::Models::AI::AssistantTool::Pay, Telnyx::Models::AI::AssistantTool::UpdateDynamicVariables>] Deprecated for new integrations. Inline tool definitions available to the assist
217
217
  #
218
218
  # @param transcription [Telnyx::Models::AI::TranscriptionSettings]
219
219
  #
@@ -19,9 +19,9 @@ module Telnyx
19
19
  #
20
20
  # @param file_url [String] Link to audio file in one of these formats: flac, mp3, mp4, mpeg, mpga, m4a, ogg
21
21
  #
22
- # @param language [String] The language of the audio to be transcribed. For `deepgram/nova-3`, only English
22
+ # @param language [String] The language of the audio to be transcribed. `deepgram/nova-3` supports ~49 lang
23
23
  #
24
- # @param model_config [Hash{Symbol=>Object}] Additional model-specific configuration parameters. Only allowed with `deepgram/
24
+ # @param model_config [Hash{Symbol=>Object}] Additional model-specific configuration parameters. Only allowed with the `deepg
25
25
  #
26
26
  # @param response_format [Symbol, Telnyx::Models::AI::AudioTranscribeParams::ResponseFormat] The format of the transcript output. Use `verbose_json` to take advantage of tim
27
27
  #
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AI
6
+ class Typesafe
7
+ # Beta API for evaluating shared context with typed questions and structured
8
+ # answers. Telnyx manages model selection.
9
+ class V1
10
+ # **Beta API.** Telnyx controls model selection.
11
+ #
12
+ # Evaluate shared context using named choice, noul (yes/no), and score questions.
13
+ # Returns TypeSafe System One-compatible answer shapes, an opaque compatibility
14
+ # identifier, and token usage. See the
15
+ # [decision model guide](https://developers.telnyx.com/docs/inference/decision-models)
16
+ # for examples and compatibility limits.
17
+ #
18
+ # The supported request subset requires instructions for every question, string
19
+ # descriptions for criteria (or null for choice descriptions), 1–64 questions, and
20
+ # 2–64 options for choice and score questions. The SDK-supplied model value is
21
+ # ignored and cannot select a model. Other unknown fields are rejected. The
22
+ # endpoint is synchronous and does not stream.
23
+ #
24
+ # Use the TypeSafe Python SDK with base_url set to
25
+ # https://api.telnyx.com/v2/ai/typesafe and a Telnyx API key. The SDK appends
26
+ # /v1/systemone. Compatibility covers this operation and the documented request
27
+ # subset; it does not include TypeSafe model listing. Scores describe relative
28
+ # preference, not calibrated correctness.
29
+ #
30
+ # @overload systemone(questions:, state:, request_options: {})
31
+ #
32
+ # @param questions [Hash{Symbol=>Telnyx::Models::AI::Typesafe::V1SystemoneParams::Question::Choice, Telnyx::Models::AI::Typesafe::V1SystemoneParams::Question::Noul, Telnyx::Models::AI::Typesafe::V1SystemoneParams::Question::Score}] Between 1 and 64 named questions. Each key identifies the corresponding answer.
33
+ #
34
+ # @param state [String, Hash{Symbol=>Object}, Array<Object>] Shared context evaluated by every question.
35
+ #
36
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
37
+ #
38
+ # @return [Telnyx::Models::AI::Typesafe::V1SystemoneResponse]
39
+ #
40
+ # @see Telnyx::Models::AI::Typesafe::V1SystemoneParams
41
+ def systemone(params)
42
+ parsed, options = Telnyx::AI::Typesafe::V1SystemoneParams.dump_request(params)
43
+ @client.request(
44
+ method: :post,
45
+ path: "ai/typesafe/v1/systemone",
46
+ body: parsed,
47
+ model: Telnyx::Models::AI::Typesafe::V1SystemoneResponse,
48
+ options: options
49
+ )
50
+ end
51
+
52
+ # @api private
53
+ #
54
+ # @param client [Telnyx::Client]
55
+ def initialize(client:)
56
+ @client = client
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AI
6
+ class Typesafe
7
+ # Beta API for evaluating shared context with typed questions and structured
8
+ # answers. Telnyx manages model selection.
9
+ # @return [Telnyx::Resources::AI::Typesafe::V1]
10
+ attr_reader :v1
11
+
12
+ # @api private
13
+ #
14
+ # @param client [Telnyx::Client]
15
+ def initialize(client:)
16
+ @client = client
17
+ @v1 = Telnyx::Resources::AI::Typesafe::V1.new(client: client)
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -55,6 +55,9 @@ module Telnyx
55
55
  # @return [Telnyx::Resources::AI::Knowledge]
56
56
  attr_reader :knowledge
57
57
 
58
+ # @return [Telnyx::Resources::AI::Typesafe]
59
+ attr_reader :typesafe
60
+
58
61
  # Some parameter documentations has been truncated, see
59
62
  # {Telnyx::Models::AIRetrieveConversationHistoriesParams} for more details.
60
63
  #
@@ -228,6 +231,7 @@ module Telnyx
228
231
  @tools = Telnyx::Resources::AI::Tools.new(client: client)
229
232
  @anthropic = Telnyx::Resources::AI::Anthropic.new(client: client)
230
233
  @knowledge = Telnyx::Resources::AI::Knowledge.new(client: client)
234
+ @typesafe = Telnyx::Resources::AI::Typesafe.new(client: client)
231
235
  end
232
236
  end
233
237
  end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ # Agentic (bot) signup for Telnyx accounts. An AI agent solves a reverse-CAPTCHA
6
+ # challenge designed to be easy for LLMs and hard for humans, registers an
7
+ # account, and signs in by consuming a magic link emailed to the account owner.
8
+ # All endpoints are public and unauthenticated; signup endpoints are additionally
9
+ # gated by the freemium feature flags and per-country availability.
10
+ class BotChallenge
11
+ # Generates a reverse-CAPTCHA challenge used to gate the bot signup flow. A random
12
+ # active problem is selected from the pool; math problems are returned obfuscated
13
+ # (case randomization, symbol injection, spacing noise) with an unobfuscated
14
+ # rounding instruction appended, while string and binary problems are returned
15
+ # as-is. The response contains a single-use nonce, the problem text, and the
16
+ # current terms-and-conditions and privacy-policy URLs, which must be echoed back
17
+ # on the signup request. Challenges expire after a short window (10 minutes by
18
+ # default) and can only be answered once. This endpoint is public and
19
+ # unauthenticated.
20
+ #
21
+ # @overload create(llm_model_name: nil, llm_parameter_count: nil, llm_quantization: nil, request_options: {})
22
+ #
23
+ # @param llm_model_name [String] Name of the LLM the client is using.
24
+ #
25
+ # @param llm_parameter_count [String] Parameter count of the client LLM.
26
+ #
27
+ # @param llm_quantization [String] Quantization of the client LLM.
28
+ #
29
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
30
+ #
31
+ # @return [Telnyx::Models::BotChallengeCreateResponse]
32
+ #
33
+ # @see Telnyx::Models::BotChallengeCreateParams
34
+ def create(params = {})
35
+ parsed, options = Telnyx::BotChallengeCreateParams.dump_request(params)
36
+ @client.request(
37
+ method: :post,
38
+ path: "v2/bot_challenge",
39
+ body: parsed,
40
+ model: Telnyx::Models::BotChallengeCreateResponse,
41
+ options: options
42
+ )
43
+ end
44
+
45
+ # @api private
46
+ #
47
+ # @param client [Telnyx::Client]
48
+ def initialize(client:)
49
+ @client = client
50
+ end
51
+ end
52
+ end
53
+ end