telnyx 5.168.0 → 5.170.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 (565) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +40 -0
  5. data/lib/telnyx/internal/email_cursor_pagination.rb +2 -2
  6. data/lib/telnyx/internal/type/union.rb +6 -6
  7. data/lib/telnyx/models/ai/assistant_create_params.rb +9 -9
  8. data/lib/telnyx/models/ai/assistant_tool.rb +316 -13
  9. data/lib/telnyx/models/ai/assistant_update_params.rb +23 -12
  10. data/lib/telnyx/models/ai/assistants/update_assistant.rb +23 -12
  11. data/lib/telnyx/models/ai/audio_transcribe_params.rb +33 -13
  12. data/lib/telnyx/models/ai/audio_transcribe_response.rb +34 -56
  13. data/lib/telnyx/models/ai/audio_transcription_response_word.rb +74 -0
  14. data/lib/telnyx/models/ai/chat_completion_request.rb +3 -26
  15. data/lib/telnyx/models/ai/collection.rb +3 -3
  16. data/lib/telnyx/models/ai/collections/collections_source.rb +64 -0
  17. data/lib/telnyx/models/ai/collections/source.rb +25 -29
  18. data/lib/telnyx/models/ai/collections/source_create_response.rb +3 -3
  19. data/lib/telnyx/models/ai/collections/source_list_response.rb +3 -3
  20. data/lib/telnyx/models/ai/collections/source_replace_response.rb +3 -3
  21. data/lib/telnyx/models/ai/flow_node.rb +5 -5
  22. data/lib/telnyx/models/ai/flow_node_req.rb +3 -3
  23. data/lib/telnyx/models/ai/inference_embedding.rb +16 -13
  24. data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +10 -1
  25. data/lib/telnyx/models/ai/inference_embedding_voice_settings.rb +334 -0
  26. data/lib/telnyx/models/ai/inference_embedding_webhook_tool_params.rb +33 -11
  27. data/lib/telnyx/models/ai/memory/namespace_retrieve_params.rb +30 -0
  28. data/lib/telnyx/models/ai/memory/namespace_retrieve_response.rb +76 -0
  29. data/lib/telnyx/models/ai/memory/namespaces/namespace_settings_response.rb +63 -0
  30. data/lib/telnyx/models/ai/memory/namespaces/page_meta.rb +58 -0
  31. data/lib/telnyx/models/ai/memory/namespaces/profile_delete_params.rb +35 -0
  32. data/lib/telnyx/models/ai/memory/namespaces/profile_delete_response.rb +47 -0
  33. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_params.rb +94 -0
  34. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_response.rb +61 -0
  35. data/lib/telnyx/models/ai/memory/namespaces/profile_list_params.rb +48 -0
  36. data/lib/telnyx/models/ai/memory/namespaces/profile_list_response.rb +34 -0
  37. data/lib/telnyx/models/ai/memory/namespaces/profile_recall_params.rb +44 -0
  38. data/lib/telnyx/models/ai/memory/namespaces/profile_recall_response.rb +60 -0
  39. data/lib/telnyx/models/ai/memory/namespaces/profile_remember_params.rb +38 -0
  40. data/lib/telnyx/models/ai/memory/namespaces/profile_remember_response.rb +54 -0
  41. data/lib/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rb +35 -0
  42. data/lib/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rb +64 -0
  43. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rb +76 -0
  44. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rb +53 -0
  45. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rb +50 -0
  46. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rb +74 -0
  47. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rb +52 -0
  48. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rb +60 -0
  49. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rb +67 -0
  50. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rb +52 -0
  51. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rb +123 -0
  52. data/lib/telnyx/models/ai/memory/namespaces/setting_list_params.rb +28 -0
  53. data/lib/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rb +69 -0
  54. data/lib/telnyx/models/ai/openai/function_definition.rb +31 -0
  55. data/lib/telnyx/models/ai/post_conversation_settings.rb +4 -4
  56. data/lib/telnyx/models/ai/post_conversation_settings_req.rb +4 -4
  57. data/lib/telnyx/models/ai/privacy_settings.rb +20 -1
  58. data/lib/telnyx/models/ai/retrieval_tool.rb +21 -1
  59. data/lib/telnyx/models/ai/telephony_settings.rb +86 -16
  60. data/lib/telnyx/models/ai/tool_node.rb +2 -2
  61. data/lib/telnyx/models/ai/transcription_settings.rb +12 -4
  62. data/lib/telnyx/models/ai/transcription_settings_config.rb +12 -11
  63. data/lib/telnyx/models/ai/typesafe/v1_systemone_params.rb +296 -0
  64. data/lib/telnyx/models/ai/typesafe/v1_systemone_response.rb +235 -0
  65. data/lib/telnyx/models/ai/webhook_tool.rb +16 -1
  66. data/lib/telnyx/models/artifact_completed_webhook_event.rb +17 -1
  67. data/lib/telnyx/models/artifact_failed_webhook_event.rb +4 -0
  68. data/lib/telnyx/models/bot_challenge_create_params.rb +38 -0
  69. data/lib/telnyx/models/bot_challenge_create_response.rb +87 -0
  70. data/lib/telnyx/models/bot_session_list_params.rb +34 -0
  71. data/lib/telnyx/models/bot_session_list_response.rb +32 -0
  72. data/lib/telnyx/models/bot_signup_create_params.rb +103 -0
  73. data/lib/telnyx/models/bot_signup_resend_magic_link_params.rb +22 -0
  74. data/lib/telnyx/models/call_dial_params.rb +75 -7
  75. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +11 -3
  76. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +11 -3
  77. data/lib/telnyx/models/calls/action_speak_params.rb +11 -3
  78. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +11 -3
  79. data/lib/telnyx/models/calls/action_transfer_params.rb +75 -7
  80. data/lib/telnyx/models/calls/soniox_voice_settings.rb +46 -0
  81. data/lib/telnyx/models/calls/transcription_config.rb +14 -3
  82. data/lib/telnyx/models/calls/transcription_engine_assemblyai_config.rb +6 -3
  83. data/lib/telnyx/models/calls/transcription_engine_parakeet_config.rb +1 -0
  84. data/lib/telnyx/models/compute/funcs/export_create_params.rb +62 -0
  85. data/lib/telnyx/models/compute/funcs/export_delete_all_params.rb +24 -0
  86. data/lib/telnyx/models/compute/funcs/export_list_params.rb +24 -0
  87. data/lib/telnyx/models/compute/funcs/func_log_export_config_response.rb +113 -0
  88. data/lib/telnyx/models/conferences/action_speak_params.rb +11 -3
  89. data/lib/telnyx/models/connection_retrieve_count_params.rb +14 -0
  90. data/lib/telnyx/models/connection_retrieve_count_response.rb +215 -0
  91. data/lib/telnyx/models/conversation_relay_embedded_config.rb +11 -3
  92. data/lib/telnyx/models/conversation_relay_language.rb +5 -3
  93. data/lib/telnyx/models/detail_record_list_params.rb +19 -2
  94. data/lib/telnyx/models/email_block.rb +8 -1
  95. data/lib/telnyx/models/email_blocks/email_block_import.rb +7 -2
  96. data/lib/telnyx/models/email_domain_rotate_dkim_params.rb +20 -0
  97. data/lib/telnyx/models/email_domain_rotate_dkim_response.rb +243 -0
  98. data/lib/telnyx/models/email_domains/email_webhook_event.rb +8 -3
  99. data/lib/telnyx/models/email_event_list_params.rb +33 -10
  100. data/lib/telnyx/models/email_event_list_response.rb +300 -73
  101. data/lib/telnyx/models/email_event_type.rb +16 -0
  102. data/lib/telnyx/models/email_inboxes/email_message.rb +56 -4
  103. data/lib/telnyx/models/email_message_batch_params.rb +32 -15
  104. data/lib/telnyx/models/email_message_create_params.rb +44 -12
  105. data/lib/telnyx/models/{email_message_retrieve_response.rb → email_message_detail_response.rb} +5 -5
  106. data/lib/telnyx/models/email_message_list_params.rb +26 -1
  107. data/lib/telnyx/models/email_message_update_schedule_params.rb +29 -0
  108. data/lib/telnyx/models/email_messages/email_recipient.rb +2 -0
  109. data/lib/telnyx/models/email_messages/recipient_list_params.rb +2 -0
  110. data/lib/telnyx/models/email_template.rb +68 -2
  111. data/lib/telnyx/models/email_template_create_params.rb +71 -1
  112. data/lib/telnyx/models/email_webhook_recipient.rb +39 -0
  113. data/lib/telnyx/models/inbound_message_webhook_event.rb +3 -70
  114. data/lib/telnyx/models/machine_payment_account_credit_params.rb +29 -0
  115. data/lib/telnyx/models/machine_payment_account_credit_response.rb +223 -0
  116. data/lib/telnyx/models/meeting_session.rb +34 -6
  117. data/lib/telnyx/models/meeting_session_create_params.rb +73 -39
  118. data/lib/telnyx/models/meeting_sessions/artifact_create_params.rb +77 -13
  119. data/lib/telnyx/models/meeting_sessions/meeting_session_artifact.rb +25 -1
  120. data/lib/telnyx/models/message_event.rb +41 -2
  121. data/lib/telnyx/models/message_retrieve_group_messages_response.rb +3 -3
  122. data/lib/telnyx/models/message_retrieve_response.rb +4 -4
  123. data/lib/telnyx/models/message_schedule_response.rb +3 -3
  124. data/lib/telnyx/models/message_send_group_mms_response.rb +3 -3
  125. data/lib/telnyx/models/message_send_long_code_response.rb +3 -3
  126. data/lib/telnyx/models/message_send_number_pool_response.rb +3 -3
  127. data/lib/telnyx/models/message_send_response.rb +3 -3
  128. data/lib/telnyx/models/message_send_short_code_response.rb +3 -3
  129. data/lib/telnyx/models/messaging_inbound_message.rb +71 -0
  130. data/lib/telnyx/models/messaging_inbound_message_payload.rb +216 -13
  131. data/lib/telnyx/models/messaging_outbound_message_payload.rb +42 -2
  132. data/lib/telnyx/models/noise_suppression_engine_list_params.rb +14 -0
  133. data/lib/telnyx/models/noise_suppression_engine_list_response.rb +50 -0
  134. data/lib/telnyx/models/number_order_status_update.rb +15 -3
  135. data/lib/telnyx/models/number_order_status_update_webhook_event.rb +15 -3
  136. data/lib/telnyx/models/numbers_phone_number_detailed.rb +19 -5
  137. data/lib/telnyx/models/outbound_message.rb +1 -0
  138. data/lib/telnyx/models/outbound_message_payload.rb +45 -5
  139. data/lib/telnyx/models/private_wireless_gateway.rb +0 -1
  140. data/lib/telnyx/models/private_wireless_gateway_create_params.rb +28 -1
  141. data/lib/telnyx/models/private_wireless_gateway_create_response.rb +3 -3
  142. data/lib/telnyx/models/private_wireless_gateway_delete_response.rb +3 -3
  143. data/lib/telnyx/models/private_wireless_gateway_retrieve_response.rb +3 -3
  144. data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +1 -0
  145. data/lib/telnyx/models/success_response.rb +27 -0
  146. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +246 -3
  147. data/lib/telnyx/models/texml/accounts/call_retrieve_calls_params.rb +17 -17
  148. data/lib/telnyx/models/texml/accounts/conferences/participant_participants_params.rb +82 -1
  149. data/lib/telnyx/models/texml/call_create_params.rb +78 -0
  150. data/lib/telnyx/models/texml/call_create_response.rb +55 -0
  151. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +76 -1
  152. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +129 -3
  153. data/lib/telnyx/models/text_to_speech_list_voices_params.rb +1 -0
  154. data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +1 -1
  155. data/lib/telnyx/models/update_email_template_request.rb +54 -1
  156. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +2 -2
  157. data/lib/telnyx/models/wireless_private_wireless_gateway.rb +120 -0
  158. data/lib/telnyx/models.rb +28 -0
  159. data/lib/telnyx/resources/ai/assistants/versions.rb +2 -2
  160. data/lib/telnyx/resources/ai/assistants.rb +4 -4
  161. data/lib/telnyx/resources/ai/audio.rb +2 -2
  162. data/lib/telnyx/resources/ai/memory/namespaces/profiles/memories.rb +122 -0
  163. data/lib/telnyx/resources/ai/memory/namespaces/profiles/sources.rb +163 -0
  164. data/lib/telnyx/resources/ai/memory/namespaces/profiles.rb +244 -0
  165. data/lib/telnyx/resources/ai/memory/namespaces/settings.rb +76 -0
  166. data/lib/telnyx/resources/ai/memory/namespaces.rb +55 -0
  167. data/lib/telnyx/resources/ai/memory.rb +21 -0
  168. data/lib/telnyx/resources/ai/typesafe/v1.rb +71 -0
  169. data/lib/telnyx/resources/ai/typesafe.rb +22 -0
  170. data/lib/telnyx/resources/ai.rb +8 -0
  171. data/lib/telnyx/resources/bot_challenge.rb +53 -0
  172. data/lib/telnyx/resources/bot_sessions.rb +57 -0
  173. data/lib/telnyx/resources/bot_signup.rb +97 -0
  174. data/lib/telnyx/resources/calls/actions.rb +5 -5
  175. data/lib/telnyx/resources/calls.rb +1 -1
  176. data/lib/telnyx/resources/compute/funcs/export.rb +105 -0
  177. data/lib/telnyx/resources/compute/funcs.rb +4 -0
  178. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  179. data/lib/telnyx/resources/connections.rb +20 -0
  180. data/lib/telnyx/resources/detail_records.rb +1 -1
  181. data/lib/telnyx/resources/email_blocks/imports.rb +17 -3
  182. data/lib/telnyx/resources/email_blocks.rb +5 -3
  183. data/lib/telnyx/resources/email_domains.rb +28 -0
  184. data/lib/telnyx/resources/email_events.rb +21 -9
  185. data/lib/telnyx/resources/email_messages.rb +61 -15
  186. data/lib/telnyx/resources/email_templates.rb +33 -3
  187. data/lib/telnyx/resources/machine_payments.rb +73 -0
  188. data/lib/telnyx/resources/meeting_sessions/actions.rb +7 -1
  189. data/lib/telnyx/resources/meeting_sessions/artifacts.rb +18 -9
  190. data/lib/telnyx/resources/meeting_sessions.rb +6 -5
  191. data/lib/telnyx/resources/noise_suppression_engines.rb +37 -0
  192. data/lib/telnyx/resources/private_wireless_gateways.rb +5 -3
  193. data/lib/telnyx/resources/texml/accounts/calls.rb +9 -9
  194. data/lib/telnyx/resources/texml/accounts/conferences/participants.rb +15 -1
  195. data/lib/telnyx/resources/texml/calls.rb +57 -0
  196. data/lib/telnyx/resources/texml.rb +20 -1
  197. data/lib/telnyx/resources/text_to_speech.rb +6 -4
  198. data/lib/telnyx/resources/voice_clones.rb +4 -2
  199. data/lib/telnyx/version.rb +1 -1
  200. data/lib/telnyx.rb +75 -1
  201. data/rbi/telnyx/client.rbi +35 -0
  202. data/rbi/telnyx/models/ai/assistant_create_params.rbi +24 -16
  203. data/rbi/telnyx/models/ai/assistant_tool.rbi +479 -25
  204. data/rbi/telnyx/models/ai/assistant_update_params.rbi +50 -20
  205. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +54 -20
  206. data/rbi/telnyx/models/ai/audio_transcribe_params.rbi +71 -20
  207. data/rbi/telnyx/models/ai/audio_transcribe_response.rbi +63 -97
  208. data/rbi/telnyx/models/ai/audio_transcription_response_word.rbi +108 -0
  209. data/rbi/telnyx/models/ai/chat_completion_request.rbi +4 -58
  210. data/rbi/telnyx/models/ai/collection.rbi +10 -4
  211. data/rbi/telnyx/models/ai/collections/collections_source.rbi +110 -0
  212. data/rbi/telnyx/models/ai/collections/source.rbi +36 -62
  213. data/rbi/telnyx/models/ai/collections/source_create_response.rbi +14 -6
  214. data/rbi/telnyx/models/ai/collections/source_list_response.rbi +10 -4
  215. data/rbi/telnyx/models/ai/collections/source_replace_response.rbi +11 -4
  216. data/rbi/telnyx/models/ai/flow_node.rbi +12 -6
  217. data/rbi/telnyx/models/ai/flow_node_req.rbi +8 -4
  218. data/rbi/telnyx/models/ai/inference_embedding.rbi +32 -20
  219. data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +10 -0
  220. data/rbi/telnyx/models/ai/inference_embedding_voice_settings.rbi +803 -0
  221. data/rbi/telnyx/models/ai/inference_embedding_webhook_tool_params.rbi +49 -19
  222. data/rbi/telnyx/models/ai/memory/namespace_retrieve_params.rbi +50 -0
  223. data/rbi/telnyx/models/ai/memory/namespace_retrieve_response.rbi +167 -0
  224. data/rbi/telnyx/models/ai/memory/namespaces/namespace_settings_response.rbi +156 -0
  225. data/rbi/telnyx/models/ai/memory/namespaces/page_meta.rbi +81 -0
  226. data/rbi/telnyx/models/ai/memory/namespaces/profile_delete_params.rbi +58 -0
  227. data/rbi/telnyx/models/ai/memory/namespaces/profile_delete_response.rbi +97 -0
  228. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbi +149 -0
  229. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_response.rbi +113 -0
  230. data/rbi/telnyx/models/ai/memory/namespaces/profile_list_params.rbi +74 -0
  231. data/rbi/telnyx/models/ai/memory/namespaces/profile_list_response.rbi +48 -0
  232. data/rbi/telnyx/models/ai/memory/namespaces/profile_recall_params.rbi +68 -0
  233. data/rbi/telnyx/models/ai/memory/namespaces/profile_recall_response.rbi +109 -0
  234. data/rbi/telnyx/models/ai/memory/namespaces/profile_remember_params.rbi +57 -0
  235. data/rbi/telnyx/models/ai/memory/namespaces/profile_remember_response.rbi +107 -0
  236. data/rbi/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rbi +58 -0
  237. data/rbi/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rbi +119 -0
  238. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rbi +102 -0
  239. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rbi +72 -0
  240. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rbi +70 -0
  241. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rbi +129 -0
  242. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rbi +74 -0
  243. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rbi +117 -0
  244. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rbi +92 -0
  245. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rbi +74 -0
  246. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbi +209 -0
  247. data/rbi/telnyx/models/ai/memory/namespaces/setting_list_params.rbi +49 -0
  248. data/rbi/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rbi +125 -0
  249. data/rbi/telnyx/models/ai/openai/function_definition.rbi +56 -0
  250. data/rbi/telnyx/models/ai/post_conversation_settings.rbi +4 -4
  251. data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +4 -4
  252. data/rbi/telnyx/models/ai/privacy_settings.rbi +43 -3
  253. data/rbi/telnyx/models/ai/retrieval_tool.rbi +29 -3
  254. data/rbi/telnyx/models/ai/telephony_settings.rbi +174 -20
  255. data/rbi/telnyx/models/ai/tool_node.rbi +4 -2
  256. data/rbi/telnyx/models/ai/transcription_settings.rbi +25 -6
  257. data/rbi/telnyx/models/ai/transcription_settings_config.rbi +18 -16
  258. data/rbi/telnyx/models/ai/typesafe/v1_systemone_params.rbi +566 -0
  259. data/rbi/telnyx/models/ai/typesafe/v1_systemone_response.rbi +388 -0
  260. data/rbi/telnyx/models/ai/webhook_tool.rbi +23 -3
  261. data/rbi/telnyx/models/artifact_completed_webhook_event.rbi +30 -0
  262. data/rbi/telnyx/models/artifact_failed_webhook_event.rbi +20 -0
  263. data/rbi/telnyx/models/bot_challenge_create_params.rbi +68 -0
  264. data/rbi/telnyx/models/bot_challenge_create_response.rbi +169 -0
  265. data/rbi/telnyx/models/bot_session_list_params.rbi +53 -0
  266. data/rbi/telnyx/models/bot_session_list_response.rbi +64 -0
  267. data/rbi/telnyx/models/bot_signup_create_params.rbi +179 -0
  268. data/rbi/telnyx/models/bot_signup_resend_magic_link_params.rbi +43 -0
  269. data/rbi/telnyx/models/call_dial_params.rbi +111 -10
  270. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +22 -5
  271. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +22 -5
  272. data/rbi/telnyx/models/calls/action_speak_params.rbi +22 -5
  273. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +22 -5
  274. data/rbi/telnyx/models/calls/action_transfer_params.rbi +111 -10
  275. data/rbi/telnyx/models/calls/soniox_voice_settings.rbi +86 -0
  276. data/rbi/telnyx/models/calls/transcription_config.rbi +29 -5
  277. data/rbi/telnyx/models/calls/transcription_engine_assemblyai_config.rbi +11 -3
  278. data/rbi/telnyx/models/calls/transcription_engine_parakeet_config.rbi +5 -0
  279. data/rbi/telnyx/models/compute/funcs/export_create_params.rbi +84 -0
  280. data/rbi/telnyx/models/compute/funcs/export_delete_all_params.rbi +42 -0
  281. data/rbi/telnyx/models/compute/funcs/export_list_params.rbi +42 -0
  282. data/rbi/telnyx/models/compute/funcs/func_log_export_config_response.rbi +227 -0
  283. data/rbi/telnyx/models/conferences/action_speak_params.rbi +22 -5
  284. data/rbi/telnyx/models/connection_retrieve_count_params.rbi +30 -0
  285. data/rbi/telnyx/models/connection_retrieve_count_response.rbi +353 -0
  286. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +22 -5
  287. data/rbi/telnyx/models/conversation_relay_language.rbi +10 -5
  288. data/rbi/telnyx/models/detail_record_list_params.rbi +30 -2
  289. data/rbi/telnyx/models/email_block.rbi +8 -0
  290. data/rbi/telnyx/models/email_blocks/email_block_import.rbi +6 -2
  291. data/rbi/telnyx/models/email_domain_rotate_dkim_params.rbi +35 -0
  292. data/rbi/telnyx/models/email_domain_rotate_dkim_response.rbi +487 -0
  293. data/rbi/telnyx/models/email_domains/email_webhook_event.rbi +20 -3
  294. data/rbi/telnyx/models/email_event_list_params.rbi +46 -11
  295. data/rbi/telnyx/models/email_event_list_response.rbi +599 -97
  296. data/rbi/telnyx/models/email_event_type.rbi +25 -0
  297. data/rbi/telnyx/models/email_inboxes/email_message.rbi +81 -3
  298. data/rbi/telnyx/models/email_message_batch_params.rbi +54 -20
  299. data/rbi/telnyx/models/email_message_create_params.rbi +80 -16
  300. data/rbi/telnyx/models/{email_message_retrieve_response.rbi → email_message_detail_response.rbi} +9 -16
  301. data/rbi/telnyx/models/email_message_list_params.rbi +40 -0
  302. data/rbi/telnyx/models/email_message_update_schedule_params.rbi +52 -0
  303. data/rbi/telnyx/models/email_messages/email_recipient.rbi +10 -0
  304. data/rbi/telnyx/models/email_messages/recipient_list_params.rbi +10 -0
  305. data/rbi/telnyx/models/email_template.rbi +84 -0
  306. data/rbi/telnyx/models/email_template_create_params.rbi +124 -0
  307. data/rbi/telnyx/models/email_webhook_recipient.rbi +68 -0
  308. data/rbi/telnyx/models/inbound_message_webhook_event.rbi +4 -173
  309. data/rbi/telnyx/models/machine_payment_account_credit_params.rbi +51 -0
  310. data/rbi/telnyx/models/machine_payment_account_credit_response.rbi +446 -0
  311. data/rbi/telnyx/models/meeting_session.rbi +36 -10
  312. data/rbi/telnyx/models/meeting_session_create_params.rbi +112 -48
  313. data/rbi/telnyx/models/meeting_sessions/artifact_create_params.rbi +161 -24
  314. data/rbi/telnyx/models/meeting_sessions/meeting_session_artifact.rbi +30 -0
  315. data/rbi/telnyx/models/message_event.rbi +48 -1
  316. data/rbi/telnyx/models/message_retrieve_group_messages_response.rbi +6 -12
  317. data/rbi/telnyx/models/message_retrieve_response.rbi +3 -3
  318. data/rbi/telnyx/models/message_schedule_response.rbi +4 -6
  319. data/rbi/telnyx/models/message_send_group_mms_response.rbi +4 -6
  320. data/rbi/telnyx/models/message_send_long_code_response.rbi +4 -6
  321. data/rbi/telnyx/models/message_send_number_pool_response.rbi +4 -6
  322. data/rbi/telnyx/models/message_send_response.rbi +4 -6
  323. data/rbi/telnyx/models/message_send_short_code_response.rbi +4 -6
  324. data/rbi/telnyx/models/messaging_inbound_message.rbi +152 -0
  325. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +477 -15
  326. data/rbi/telnyx/models/messaging_outbound_message_payload.rbi +90 -16
  327. data/rbi/telnyx/models/noise_suppression_engine_list_params.rbi +30 -0
  328. data/rbi/telnyx/models/noise_suppression_engine_list_response.rbi +94 -0
  329. data/rbi/telnyx/models/number_order_status_update.rbi +34 -3
  330. data/rbi/telnyx/models/number_order_status_update_webhook_event.rbi +39 -3
  331. data/rbi/telnyx/models/numbers_phone_number_detailed.rbi +24 -4
  332. data/rbi/telnyx/models/outbound_message.rbi +5 -0
  333. data/rbi/telnyx/models/outbound_message_payload.rbi +74 -4
  334. data/rbi/telnyx/models/private_wireless_gateway_create_params.rbi +71 -0
  335. data/rbi/telnyx/models/private_wireless_gateway_create_response.rbi +4 -4
  336. data/rbi/telnyx/models/private_wireless_gateway_delete_response.rbi +4 -4
  337. data/rbi/telnyx/models/private_wireless_gateway_retrieve_response.rbi +4 -4
  338. data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +5 -0
  339. data/rbi/telnyx/models/success_response.rbi +36 -0
  340. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +339 -0
  341. data/rbi/telnyx/models/texml/accounts/call_retrieve_calls_params.rbi +22 -22
  342. data/rbi/telnyx/models/texml/accounts/conferences/participant_participants_params.rbi +111 -0
  343. data/rbi/telnyx/models/texml/call_create_params.rbi +124 -0
  344. data/rbi/telnyx/models/texml/call_create_response.rbi +98 -0
  345. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +103 -0
  346. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +311 -2
  347. data/rbi/telnyx/models/text_to_speech_list_voices_params.rbi +5 -0
  348. data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +5 -5
  349. data/rbi/telnyx/models/update_email_template_request.rbi +90 -0
  350. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +4 -4
  351. data/rbi/telnyx/models/wireless_private_wireless_gateway.rbi +211 -0
  352. data/rbi/telnyx/models.rbi +33 -0
  353. data/rbi/telnyx/resources/ai/assistants/versions.rbi +21 -8
  354. data/rbi/telnyx/resources/ai/assistants.rbi +27 -14
  355. data/rbi/telnyx/resources/ai/audio.rbi +20 -9
  356. data/rbi/telnyx/resources/ai/memory/namespaces/profiles/memories.rbi +94 -0
  357. data/rbi/telnyx/resources/ai/memory/namespaces/profiles/sources.rbi +117 -0
  358. data/rbi/telnyx/resources/ai/memory/namespaces/profiles.rbi +196 -0
  359. data/rbi/telnyx/resources/ai/memory/namespaces/settings.rbi +67 -0
  360. data/rbi/telnyx/resources/ai/memory/namespaces.rbi +37 -0
  361. data/rbi/telnyx/resources/ai/memory.rbi +18 -0
  362. data/rbi/telnyx/resources/ai/typesafe/v1.rbi +71 -0
  363. data/rbi/telnyx/resources/ai/typesafe.rbi +19 -0
  364. data/rbi/telnyx/resources/ai.rbi +6 -0
  365. data/rbi/telnyx/resources/bot_challenge.rbi +45 -0
  366. data/rbi/telnyx/resources/bot_sessions.rbi +45 -0
  367. data/rbi/telnyx/resources/bot_signup.rbi +87 -0
  368. data/rbi/telnyx/resources/calls/actions.rbi +38 -9
  369. data/rbi/telnyx/resources/calls.rbi +6 -5
  370. data/rbi/telnyx/resources/compute/funcs/export.rbi +86 -0
  371. data/rbi/telnyx/resources/compute/funcs.rbi +3 -0
  372. data/rbi/telnyx/resources/conferences/actions.rbi +8 -1
  373. data/rbi/telnyx/resources/connections.rbi +11 -0
  374. data/rbi/telnyx/resources/detail_records.rbi +12 -1
  375. data/rbi/telnyx/resources/email_blocks/imports.rbi +17 -3
  376. data/rbi/telnyx/resources/email_blocks.rbi +5 -3
  377. data/rbi/telnyx/resources/email_domains.rbi +22 -0
  378. data/rbi/telnyx/resources/email_events.rbi +30 -9
  379. data/rbi/telnyx/resources/email_messages.rbi +104 -18
  380. data/rbi/telnyx/resources/email_templates.rbi +71 -0
  381. data/rbi/telnyx/resources/machine_payments.rbi +64 -0
  382. data/rbi/telnyx/resources/meeting_sessions/actions.rbi +7 -1
  383. data/rbi/telnyx/resources/meeting_sessions/artifacts.rbi +19 -8
  384. data/rbi/telnyx/resources/meeting_sessions.rbi +15 -7
  385. data/rbi/telnyx/resources/noise_suppression_engines.rbi +26 -0
  386. data/rbi/telnyx/resources/private_wireless_gateways.rbi +9 -1
  387. data/rbi/telnyx/resources/texml/accounts/calls.rbi +6 -6
  388. data/rbi/telnyx/resources/texml/accounts/conferences/participants.rbi +32 -0
  389. data/rbi/telnyx/resources/texml/calls.rbi +50 -0
  390. data/rbi/telnyx/resources/texml.rbi +36 -0
  391. data/rbi/telnyx/resources/text_to_speech.rbi +7 -3
  392. data/rbi/telnyx/resources/voice_clones.rbi +4 -2
  393. data/sig/telnyx/client.rbs +10 -0
  394. data/sig/telnyx/models/ai/assistant_create_params.rbs +6 -6
  395. data/sig/telnyx/models/ai/assistant_tool.rbs +195 -26
  396. data/sig/telnyx/models/ai/assistant_update_params.rbs +6 -6
  397. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +6 -6
  398. data/sig/telnyx/models/ai/audio_transcribe_params.rbs +10 -0
  399. data/sig/telnyx/models/ai/audio_transcribe_response.rbs +29 -43
  400. data/sig/telnyx/models/ai/audio_transcription_response_word.rbs +60 -0
  401. data/sig/telnyx/models/ai/chat_completion_request.rbs +4 -35
  402. data/sig/telnyx/models/ai/collection.rbs +6 -6
  403. data/sig/telnyx/models/ai/collections/collections_source.rbs +65 -0
  404. data/sig/telnyx/models/ai/collections/source.rbs +18 -37
  405. data/sig/telnyx/models/ai/collections/source_create_response.rbs +9 -6
  406. data/sig/telnyx/models/ai/collections/source_list_response.rbs +8 -6
  407. data/sig/telnyx/models/ai/collections/source_replace_response.rbs +6 -6
  408. data/sig/telnyx/models/ai/flow_node.rbs +6 -6
  409. data/sig/telnyx/models/ai/flow_node_req.rbs +6 -6
  410. data/sig/telnyx/models/ai/inference_embedding.rbs +6 -6
  411. data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +5 -0
  412. data/sig/telnyx/models/ai/inference_embedding_voice_settings.rbs +308 -0
  413. data/sig/telnyx/models/ai/inference_embedding_webhook_tool_params.rbs +20 -13
  414. data/sig/telnyx/models/ai/memory/namespace_retrieve_params.rbs +32 -0
  415. data/sig/telnyx/models/ai/memory/namespace_retrieve_response.rbs +69 -0
  416. data/sig/telnyx/models/ai/memory/namespaces/namespace_settings_response.rbs +59 -0
  417. data/sig/telnyx/models/ai/memory/namespaces/page_meta.rbs +41 -0
  418. data/sig/telnyx/models/ai/memory/namespaces/profile_delete_params.rbs +34 -0
  419. data/sig/telnyx/models/ai/memory/namespaces/profile_delete_response.rbs +41 -0
  420. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbs +69 -0
  421. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_response.rbs +58 -0
  422. data/sig/telnyx/models/ai/memory/namespaces/profile_list_params.rbs +42 -0
  423. data/sig/telnyx/models/ai/memory/namespaces/profile_list_response.rbs +22 -0
  424. data/sig/telnyx/models/ai/memory/namespaces/profile_recall_params.rbs +47 -0
  425. data/sig/telnyx/models/ai/memory/namespaces/profile_recall_response.rbs +53 -0
  426. data/sig/telnyx/models/ai/memory/namespaces/profile_remember_params.rbs +38 -0
  427. data/sig/telnyx/models/ai/memory/namespaces/profile_remember_response.rbs +49 -0
  428. data/sig/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rbs +34 -0
  429. data/sig/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rbs +58 -0
  430. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rbs +63 -0
  431. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rbs +43 -0
  432. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rbs +40 -0
  433. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rbs +65 -0
  434. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rbs +40 -0
  435. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rbs +55 -0
  436. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rbs +58 -0
  437. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rbs +40 -0
  438. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbs +92 -0
  439. data/sig/telnyx/models/ai/memory/namespaces/setting_list_params.rbs +29 -0
  440. data/sig/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rbs +47 -0
  441. data/sig/telnyx/models/ai/openai/function_definition.rbs +34 -0
  442. data/sig/telnyx/models/ai/privacy_settings.rbs +11 -3
  443. data/sig/telnyx/models/ai/retrieval_tool.rbs +10 -3
  444. data/sig/telnyx/models/ai/telephony_settings.rbs +52 -4
  445. data/sig/telnyx/models/ai/transcription_settings.rbs +4 -0
  446. data/sig/telnyx/models/ai/typesafe/v1_systemone_params.rbs +215 -0
  447. data/sig/telnyx/models/ai/typesafe/v1_systemone_response.rbs +152 -0
  448. data/sig/telnyx/models/ai/webhook_tool.rbs +10 -3
  449. data/sig/telnyx/models/artifact_completed_webhook_event.rbs +16 -1
  450. data/sig/telnyx/models/artifact_failed_webhook_event.rbs +11 -1
  451. data/sig/telnyx/models/bot_challenge_create_params.rbs +42 -0
  452. data/sig/telnyx/models/bot_challenge_create_response.rbs +72 -0
  453. data/sig/telnyx/models/bot_session_list_params.rbs +28 -0
  454. data/sig/telnyx/models/bot_session_list_response.rbs +26 -0
  455. data/sig/telnyx/models/bot_signup_create_params.rbs +89 -0
  456. data/sig/telnyx/models/bot_signup_resend_magic_link_params.rbs +20 -0
  457. data/sig/telnyx/models/call_dial_params.rbs +49 -0
  458. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +1 -0
  459. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -0
  460. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -0
  461. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +1 -0
  462. data/sig/telnyx/models/calls/action_transfer_params.rbs +49 -0
  463. data/sig/telnyx/models/calls/soniox_voice_settings.rbs +46 -0
  464. data/sig/telnyx/models/calls/transcription_config.rbs +4 -0
  465. data/sig/telnyx/models/calls/transcription_engine_assemblyai_config.rbs +3 -1
  466. data/sig/telnyx/models/calls/transcription_engine_parakeet_config.rbs +3 -1
  467. data/sig/telnyx/models/compute/funcs/export_create_params.rbs +50 -0
  468. data/sig/telnyx/models/compute/funcs/export_delete_all_params.rbs +27 -0
  469. data/sig/telnyx/models/compute/funcs/export_list_params.rbs +27 -0
  470. data/sig/telnyx/models/compute/funcs/func_log_export_config_response.rbs +115 -0
  471. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -0
  472. data/sig/telnyx/models/connection_retrieve_count_params.rbs +15 -0
  473. data/sig/telnyx/models/connection_retrieve_count_response.rbs +169 -0
  474. data/sig/telnyx/models/conversation_relay_embedded_config.rbs +1 -0
  475. data/sig/telnyx/models/conversation_relay_language.rbs +1 -0
  476. data/sig/telnyx/models/email_domain_rotate_dkim_params.rbs +23 -0
  477. data/sig/telnyx/models/email_domain_rotate_dkim_response.rbs +195 -0
  478. data/sig/telnyx/models/email_domains/email_webhook_event.rbs +6 -0
  479. data/sig/telnyx/models/email_event_list_params.rbs +7 -7
  480. data/sig/telnyx/models/email_event_list_response.rbs +235 -59
  481. data/sig/telnyx/models/email_event_type.rbs +20 -0
  482. data/sig/telnyx/models/email_inboxes/email_message.rbs +43 -4
  483. data/sig/telnyx/models/{email_message_retrieve_response.rbs → email_message_detail_response.rbs} +6 -10
  484. data/sig/telnyx/models/email_message_list_params.rbs +18 -1
  485. data/sig/telnyx/models/email_message_update_schedule_params.rbs +28 -0
  486. data/sig/telnyx/models/email_messages/email_recipient.rbs +4 -0
  487. data/sig/telnyx/models/email_messages/recipient_list_params.rbs +4 -0
  488. data/sig/telnyx/models/email_template.rbs +29 -0
  489. data/sig/telnyx/models/email_template_create_params.rbs +33 -0
  490. data/sig/telnyx/models/email_webhook_recipient.rbs +46 -0
  491. data/sig/telnyx/models/inbound_message_webhook_event.rbs +6 -79
  492. data/sig/telnyx/models/machine_payment_account_credit_params.rbs +23 -0
  493. data/sig/telnyx/models/machine_payment_account_credit_response.rbs +164 -0
  494. data/sig/telnyx/models/meeting_session.rbs +20 -5
  495. data/sig/telnyx/models/meeting_session_create_params.rbs +28 -20
  496. data/sig/telnyx/models/meeting_sessions/artifact_create_params.rbs +53 -10
  497. data/sig/telnyx/models/meeting_sessions/meeting_session_artifact.rbs +16 -1
  498. data/sig/telnyx/models/message_event.rbs +10 -0
  499. data/sig/telnyx/models/message_retrieve_group_messages_response.rbs +6 -8
  500. data/sig/telnyx/models/message_retrieve_response.rbs +1 -2
  501. data/sig/telnyx/models/message_schedule_response.rbs +6 -7
  502. data/sig/telnyx/models/message_send_group_mms_response.rbs +6 -6
  503. data/sig/telnyx/models/message_send_long_code_response.rbs +6 -6
  504. data/sig/telnyx/models/message_send_number_pool_response.rbs +6 -6
  505. data/sig/telnyx/models/message_send_response.rbs +6 -7
  506. data/sig/telnyx/models/message_send_short_code_response.rbs +6 -6
  507. data/sig/telnyx/models/messaging_inbound_message.rbs +76 -0
  508. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +235 -6
  509. data/sig/telnyx/models/messaging_outbound_message_payload.rbs +39 -1
  510. data/sig/telnyx/models/noise_suppression_engine_list_params.rbs +15 -0
  511. data/sig/telnyx/models/noise_suppression_engine_list_response.rbs +43 -0
  512. data/sig/telnyx/models/number_order_status_update.rbs +14 -4
  513. data/sig/telnyx/models/number_order_status_update_webhook_event.rbs +14 -4
  514. data/sig/telnyx/models/numbers_phone_number_detailed.rbs +5 -0
  515. data/sig/telnyx/models/outbound_message.rbs +2 -1
  516. data/sig/telnyx/models/outbound_message_payload.rbs +45 -7
  517. data/sig/telnyx/models/private_wireless_gateway_create_params.rbs +25 -1
  518. data/sig/telnyx/models/private_wireless_gateway_create_response.rbs +6 -6
  519. data/sig/telnyx/models/private_wireless_gateway_delete_response.rbs +6 -6
  520. data/sig/telnyx/models/private_wireless_gateway_retrieve_response.rbs +6 -6
  521. data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +2 -0
  522. data/sig/telnyx/models/success_response.rbs +15 -0
  523. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +159 -0
  524. data/sig/telnyx/models/texml/accounts/call_retrieve_calls_params.rbs +14 -14
  525. data/sig/telnyx/models/texml/accounts/conferences/participant_participants_params.rbs +49 -0
  526. data/sig/telnyx/models/texml/call_create_params.rbs +72 -0
  527. data/sig/telnyx/models/texml/call_create_response.rbs +47 -0
  528. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +49 -0
  529. data/sig/telnyx/models/text_to_speech_generate_speech_params.rbs +114 -0
  530. data/sig/telnyx/models/text_to_speech_list_voices_params.rbs +2 -0
  531. data/sig/telnyx/models/text_to_speech_retrieve_speech_params.rbs +2 -2
  532. data/sig/telnyx/models/update_email_template_request.rbs +33 -0
  533. data/sig/telnyx/models/wireless_private_wireless_gateway.rbs +109 -0
  534. data/sig/telnyx/models.rbs +28 -0
  535. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -1
  536. data/sig/telnyx/resources/ai/assistants.rbs +2 -2
  537. data/sig/telnyx/resources/ai/memory/namespaces/profiles/memories.rbs +32 -0
  538. data/sig/telnyx/resources/ai/memory/namespaces/profiles/sources.rbs +38 -0
  539. data/sig/telnyx/resources/ai/memory/namespaces/profiles.rbs +59 -0
  540. data/sig/telnyx/resources/ai/memory/namespaces/settings.rbs +24 -0
  541. data/sig/telnyx/resources/ai/memory/namespaces.rbs +21 -0
  542. data/sig/telnyx/resources/ai/memory.rbs +11 -0
  543. data/sig/telnyx/resources/ai/typesafe/v1.rbs +18 -0
  544. data/sig/telnyx/resources/ai/typesafe.rbs +11 -0
  545. data/sig/telnyx/resources/ai.rbs +4 -0
  546. data/sig/telnyx/resources/bot_challenge.rbs +14 -0
  547. data/sig/telnyx/resources/bot_sessions.rbs +13 -0
  548. data/sig/telnyx/resources/bot_signup.rbs +24 -0
  549. data/sig/telnyx/resources/compute/funcs/export.rbs +30 -0
  550. data/sig/telnyx/resources/compute/funcs.rbs +2 -0
  551. data/sig/telnyx/resources/connections.rbs +4 -0
  552. data/sig/telnyx/resources/email_domains.rbs +5 -0
  553. data/sig/telnyx/resources/email_events.rbs +2 -2
  554. data/sig/telnyx/resources/email_messages.rbs +9 -1
  555. data/sig/telnyx/resources/email_templates.rbs +9 -0
  556. data/sig/telnyx/resources/machine_payments.rbs +12 -0
  557. data/sig/telnyx/resources/meeting_sessions/artifacts.rbs +1 -1
  558. data/sig/telnyx/resources/meeting_sessions.rbs +1 -0
  559. data/sig/telnyx/resources/noise_suppression_engines.rbs +11 -0
  560. data/sig/telnyx/resources/private_wireless_gateways.rbs +2 -1
  561. data/sig/telnyx/resources/texml/accounts/conferences/participants.rbs +7 -0
  562. data/sig/telnyx/resources/texml/calls.rbs +19 -0
  563. data/sig/telnyx/resources/texml.rbs +9 -0
  564. data/sig/telnyx/resources/text_to_speech.rbs +1 -0
  565. metadata +227 -5
@@ -15,10 +15,10 @@ module Telnyx
15
15
  sig { returns(String) }
16
16
  attr_accessor :meeting_url
17
17
 
18
- # Request options for attaching a voice assistant to the session. Routing fields
19
- # (`call_control_connection_id`, `from`, and `loopback_sip_uri`) are used only to
20
- # establish the assistant call leg and are omitted from response objects.
21
- # `audio_gate` is returned with `id` in the assistant response object.
18
+ # Attach a Telnyx AI Assistant to the session. Supply the Assistant's ID; the
19
+ # Meeting service connects it to the meeting directly. The Call Control
20
+ # connection, caller ID and loopback SIP URI previously required here have been
21
+ # removed and are now rejected as unknown fields.
22
22
  sig { returns(T.nilable(Telnyx::MeetingSessionCreateParams::Assistant)) }
23
23
  attr_reader :assistant
24
24
 
@@ -83,6 +83,17 @@ module Telnyx
83
83
  end
84
84
  attr_writer :camera_image
85
85
 
86
+ # A message the bot posts to the meeting's chat as soon as it becomes active —
87
+ # typically a recording disclosure. Delivered at most once. Independent of
88
+ # `speak_on_enter`: both may be set, and the chat message posts first because it
89
+ # does not wait for text-to-speech or avatar startup. Rejected with 422
90
+ # `unsupported_capability` on platforms without meeting chat.
91
+ sig { returns(T.nilable(String)) }
92
+ attr_reader :chat_on_enter
93
+
94
+ sig { params(chat_on_enter: String).void }
95
+ attr_writer :chat_on_enter
96
+
86
97
  # Client-supplied idempotency key to safely retry creation requests without
87
98
  # duplicating sessions. Lookup is scoped to the authenticated account and compares
88
99
  # the key only; the request payload is not fingerprinted or compared.
@@ -108,7 +119,10 @@ module Telnyx
108
119
  sig { params(metadata: T::Hash[Symbol, T.anything]).void }
109
120
  attr_writer :metadata
110
121
 
111
- # Text the bot speaks when it enters the meeting.
122
+ # Text the bot speaks when it enters the meeting. **Not spoken when an `assistant`
123
+ # is attached**: the value is accepted and echoed back on the session, but the
124
+ # assistant owns the voice and the line is never delivered, with no event
125
+ # reporting the omission. Use `chat_on_enter` to announce an assistant-backed bot.
112
126
  sig { returns(T.nilable(String)) }
113
127
  attr_reader :speak_on_enter
114
128
 
@@ -152,6 +166,7 @@ module Telnyx
152
166
  Telnyx::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source::OrHash,
153
167
  Telnyx::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource::OrHash
154
168
  ),
169
+ chat_on_enter: String,
155
170
  idempotency_key: String,
156
171
  join_at: Time,
157
172
  metadata: T::Hash[Symbol, T.anything],
@@ -165,10 +180,10 @@ module Telnyx
165
180
  def self.new(
166
181
  # The meeting URL the bot should join.
167
182
  meeting_url:,
168
- # Request options for attaching a voice assistant to the session. Routing fields
169
- # (`call_control_connection_id`, `from`, and `loopback_sip_uri`) are used only to
170
- # establish the assistant call leg and are omitted from response objects.
171
- # `audio_gate` is returned with `id` in the assistant response object.
183
+ # Attach a Telnyx AI Assistant to the session. Supply the Assistant's ID; the
184
+ # Meeting service connects it to the meeting directly. The Call Control
185
+ # connection, caller ID and loopback SIP URI previously required here have been
186
+ # removed and are now rejected as unknown fields.
172
187
  assistant: nil,
173
188
  # Request options for attaching a bring-your-own-key avatar to the session.
174
189
  avatar: nil,
@@ -185,6 +200,12 @@ module Telnyx
185
200
  # recordings. An effective Avatar or Assistant webpage output takes precedence, so
186
201
  # this input is ignored and a URL source is not fetched.
187
202
  camera_image: nil,
203
+ # A message the bot posts to the meeting's chat as soon as it becomes active —
204
+ # typically a recording disclosure. Delivered at most once. Independent of
205
+ # `speak_on_enter`: both may be set, and the chat message posts first because it
206
+ # does not wait for text-to-speech or avatar startup. Rejected with 422
207
+ # `unsupported_capability` on platforms without meeting chat.
208
+ chat_on_enter: nil,
188
209
  # Client-supplied idempotency key to safely retry creation requests without
189
210
  # duplicating sessions. Lookup is scoped to the authenticated account and compares
190
211
  # the key only; the request payload is not fingerprinted or compared.
@@ -195,7 +216,10 @@ module Telnyx
195
216
  # Arbitrary key-value metadata attached to the session. The serialized JSON
196
217
  # representation must not exceed 16384 characters at runtime.
197
218
  metadata: nil,
198
- # Text the bot speaks when it enters the meeting.
219
+ # Text the bot speaks when it enters the meeting. **Not spoken when an `assistant`
220
+ # is attached**: the value is accepted and echoed back on the session, but the
221
+ # assistant owns the voice and the line is never delivered, with no event
222
+ # reporting the omission. Use `chat_on_enter` to announce an assistant-backed bot.
199
223
  speak_on_enter: nil,
200
224
  # If true, generate a summary artifact when the session ends.
201
225
  summarize_on_end: nil,
@@ -224,6 +248,7 @@ module Telnyx
224
248
  Telnyx::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source,
225
249
  Telnyx::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource
226
250
  ),
251
+ chat_on_enter: String,
227
252
  idempotency_key: String,
228
253
  join_at: Time,
229
254
  metadata: T::Hash[Symbol, T.anything],
@@ -251,19 +276,12 @@ module Telnyx
251
276
  sig { returns(String) }
252
277
  attr_accessor :id
253
278
 
254
- # Call control connection used to bridge the assistant into the meeting audio.
255
- sig { returns(String) }
256
- attr_accessor :call_control_connection_id
257
-
258
- # E.164 calling number used as the originating party for the assistant call leg.
259
- sig { returns(String) }
260
- attr_accessor :from
261
-
262
- # SIP URI to which the assistant media loopback is established.
263
- sig { returns(String) }
264
- attr_accessor :loopback_sip_uri
265
-
266
- # Audio gating strategy for the assistant call leg.
279
+ # Audio gating strategy for the assistant call leg. `half_duplex` (default) sends
280
+ # the assistant a single mixed meeting stream and mutes it while the assistant
281
+ # speaks, so the assistant cannot hear itself and cannot be interrupted.
282
+ # `full_duplex` sends a separate stream per participant, which allows barge-in and
283
+ # removes self-hearing, and COSTS SIGNIFICANTLY MORE: per-participant streams
284
+ # multiply the per-minute cost by the number of participants.
267
285
  sig do
268
286
  returns(
269
287
  T.nilable(
@@ -281,31 +299,73 @@ module Telnyx
281
299
  end
282
300
  attr_writer :audio_gate
283
301
 
284
- # Request options for attaching a voice assistant to the session. Routing fields
285
- # (`call_control_connection_id`, `from`, and `loopback_sip_uri`) are used only to
286
- # establish the assistant call leg and are omitted from response objects.
287
- # `audio_gate` is returned with `id` in the assistant response object.
302
+ # Per-conversation values for the
303
+ # [dynamic variables](/docs/inference/ai-assistants/dynamic-variables) used in the
304
+ # Assistant's instructions, greeting, or tools. Delivered before the Assistant's
305
+ # first utterance, so they resolve for the opening line as well as the rest of the
306
+ # conversation. At most 63 entries; keys 1-128 characters; values must be strings.
307
+ # The map is budgeted in aggregate at 1,047,552 bytes (1023 KiB) rather than
308
+ # capped per value. `streaming_audio`, `ai_assistant_streaming_audio` and
309
+ # `meeting_session_id` are reserved and rejected with `400 invalid_request` --
310
+ # they toggle provider infrastructure or are set by the service rather than fill a
311
+ # prompt template.
312
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
313
+ attr_reader :dynamic_variables
314
+
315
+ sig { params(dynamic_variables: T::Hash[Symbol, String]).void }
316
+ attr_writer :dynamic_variables
317
+
318
+ # Leave the meeting when the Assistant's conversation reaches a terminal state --
319
+ # `ended` **or** `failed`. Off by default, which leaves the bot in the meeting
320
+ # after the Assistant stops. Fires once: a second terminal transition does not
321
+ # leave twice, and a leave the provider refuses is logged without changing how the
322
+ # session settles.
323
+ sig { returns(T.nilable(T::Boolean)) }
324
+ attr_reader :leave_on_end
325
+
326
+ sig { params(leave_on_end: T::Boolean).void }
327
+ attr_writer :leave_on_end
328
+
329
+ # Attach a Telnyx AI Assistant to the session. Supply the Assistant's ID; the
330
+ # Meeting service connects it to the meeting directly. The Call Control
331
+ # connection, caller ID and loopback SIP URI previously required here have been
332
+ # removed and are now rejected as unknown fields.
288
333
  sig do
289
334
  params(
290
335
  id: String,
291
- call_control_connection_id: String,
292
- from: String,
293
- loopback_sip_uri: String,
294
336
  audio_gate:
295
- Telnyx::MeetingSessionCreateParams::Assistant::AudioGate::OrSymbol
337
+ Telnyx::MeetingSessionCreateParams::Assistant::AudioGate::OrSymbol,
338
+ dynamic_variables: T::Hash[Symbol, String],
339
+ leave_on_end: T::Boolean
296
340
  ).returns(T.attached_class)
297
341
  end
298
342
  def self.new(
299
343
  # Identifier of the assistant to attach.
300
344
  id:,
301
- # Call control connection used to bridge the assistant into the meeting audio.
302
- call_control_connection_id:,
303
- # E.164 calling number used as the originating party for the assistant call leg.
304
- from:,
305
- # SIP URI to which the assistant media loopback is established.
306
- loopback_sip_uri:,
307
- # Audio gating strategy for the assistant call leg.
308
- audio_gate: nil
345
+ # Audio gating strategy for the assistant call leg. `half_duplex` (default) sends
346
+ # the assistant a single mixed meeting stream and mutes it while the assistant
347
+ # speaks, so the assistant cannot hear itself and cannot be interrupted.
348
+ # `full_duplex` sends a separate stream per participant, which allows barge-in and
349
+ # removes self-hearing, and COSTS SIGNIFICANTLY MORE: per-participant streams
350
+ # multiply the per-minute cost by the number of participants.
351
+ audio_gate: nil,
352
+ # Per-conversation values for the
353
+ # [dynamic variables](/docs/inference/ai-assistants/dynamic-variables) used in the
354
+ # Assistant's instructions, greeting, or tools. Delivered before the Assistant's
355
+ # first utterance, so they resolve for the opening line as well as the rest of the
356
+ # conversation. At most 63 entries; keys 1-128 characters; values must be strings.
357
+ # The map is budgeted in aggregate at 1,047,552 bytes (1023 KiB) rather than
358
+ # capped per value. `streaming_audio`, `ai_assistant_streaming_audio` and
359
+ # `meeting_session_id` are reserved and rejected with `400 invalid_request` --
360
+ # they toggle provider infrastructure or are set by the service rather than fill a
361
+ # prompt template.
362
+ dynamic_variables: nil,
363
+ # Leave the meeting when the Assistant's conversation reaches a terminal state --
364
+ # `ended` **or** `failed`. Off by default, which leaves the bot in the meeting
365
+ # after the Assistant stops. Fires once: a second terminal transition does not
366
+ # leave twice, and a leave the provider refuses is logged without changing how the
367
+ # session settles.
368
+ leave_on_end: nil
309
369
  )
310
370
  end
311
371
 
@@ -313,18 +373,22 @@ module Telnyx
313
373
  override.returns(
314
374
  {
315
375
  id: String,
316
- call_control_connection_id: String,
317
- from: String,
318
- loopback_sip_uri: String,
319
376
  audio_gate:
320
- Telnyx::MeetingSessionCreateParams::Assistant::AudioGate::OrSymbol
377
+ Telnyx::MeetingSessionCreateParams::Assistant::AudioGate::OrSymbol,
378
+ dynamic_variables: T::Hash[Symbol, String],
379
+ leave_on_end: T::Boolean
321
380
  }
322
381
  )
323
382
  end
324
383
  def to_hash
325
384
  end
326
385
 
327
- # Audio gating strategy for the assistant call leg.
386
+ # Audio gating strategy for the assistant call leg. `half_duplex` (default) sends
387
+ # the assistant a single mixed meeting stream and mutes it while the assistant
388
+ # speaks, so the assistant cannot hear itself and cannot be interrupted.
389
+ # `full_duplex` sends a separate stream per participant, which allows barge-in and
390
+ # removes self-hearing, and COSTS SIGNIFICANTLY MORE: per-participant streams
391
+ # multiply the per-minute cost by the number of participants.
328
392
  module AudioGate
329
393
  extend Telnyx::Internal::Type::Enum
330
394
 
@@ -337,14 +401,14 @@ module Telnyx
337
401
  end
338
402
  OrSymbol = T.type_alias { T.any(Symbol, String) }
339
403
 
340
- NONE =
404
+ HALF_DUPLEX =
341
405
  T.let(
342
- :none,
406
+ :half_duplex,
343
407
  Telnyx::MeetingSessionCreateParams::Assistant::AudioGate::TaggedSymbol
344
408
  )
345
- HALF_DUPLEX =
409
+ FULL_DUPLEX =
346
410
  T.let(
347
- :half_duplex,
411
+ :full_duplex,
348
412
  Telnyx::MeetingSessionCreateParams::Assistant::AudioGate::TaggedSymbol
349
413
  )
350
414
 
@@ -18,23 +18,34 @@ module Telnyx
18
18
  sig { returns(String) }
19
19
  attr_accessor :id
20
20
 
21
- # Type of artifact to generate from the session.
21
+ # One of two shapes: a named type on its own, or `custom` with the prompt it
22
+ # answers.
22
23
  sig do
23
- returns(Telnyx::MeetingSessions::ArtifactCreateParams::Type::OrSymbol)
24
+ returns(
25
+ T.any(
26
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact,
27
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::CustomArtifact
28
+ )
29
+ )
24
30
  end
25
- attr_accessor :type
31
+ attr_accessor :body
26
32
 
27
33
  sig do
28
34
  params(
29
35
  id: String,
30
- type: Telnyx::MeetingSessions::ArtifactCreateParams::Type::OrSymbol,
36
+ body:
37
+ T.any(
38
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::OrHash,
39
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::CustomArtifact::OrHash
40
+ ),
31
41
  request_options: Telnyx::RequestOptions::OrHash
32
42
  ).returns(T.attached_class)
33
43
  end
34
44
  def self.new(
35
45
  id:,
36
- # Type of artifact to generate from the session.
37
- type:,
46
+ # One of two shapes: a named type on its own, or `custom` with the prompt it
47
+ # answers.
48
+ body:,
38
49
  request_options: {}
39
50
  )
40
51
  end
@@ -43,8 +54,11 @@ module Telnyx
43
54
  override.returns(
44
55
  {
45
56
  id: String,
46
- type:
47
- Telnyx::MeetingSessions::ArtifactCreateParams::Type::OrSymbol,
57
+ body:
58
+ T.any(
59
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact,
60
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::CustomArtifact
61
+ ),
48
62
  request_options: Telnyx::RequestOptions
49
63
  }
50
64
  )
@@ -52,35 +66,158 @@ module Telnyx
52
66
  def to_hash
53
67
  end
54
68
 
55
- # Type of artifact to generate from the session.
56
- module Type
57
- extend Telnyx::Internal::Type::Enum
69
+ # One of two shapes: a named type on its own, or `custom` with the prompt it
70
+ # answers.
71
+ module Body
72
+ extend Telnyx::Internal::Type::Union
58
73
 
59
- TaggedSymbol =
74
+ Variants =
60
75
  T.type_alias do
61
- T.all(Symbol, Telnyx::MeetingSessions::ArtifactCreateParams::Type)
76
+ T.any(
77
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact,
78
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::CustomArtifact
79
+ )
80
+ end
81
+
82
+ class NamedArtifact < Telnyx::Internal::Type::BaseModel
83
+ OrHash =
84
+ T.type_alias do
85
+ T.any(
86
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact,
87
+ Telnyx::Internal::AnyHash
88
+ )
89
+ end
90
+
91
+ # What to generate from the transcript. `custom` is answered from a `prompt` you
92
+ # supply; the five named types need none.
93
+ sig do
94
+ returns(
95
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::OrSymbol
96
+ )
62
97
  end
63
- OrSymbol = T.type_alias { T.any(Symbol, String) }
98
+ attr_accessor :type
64
99
 
65
- SUMMARY =
66
- T.let(
67
- :summary,
68
- Telnyx::MeetingSessions::ArtifactCreateParams::Type::TaggedSymbol
100
+ sig do
101
+ params(
102
+ type:
103
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::OrSymbol
104
+ ).returns(T.attached_class)
105
+ end
106
+ def self.new(
107
+ # What to generate from the transcript. `custom` is answered from a `prompt` you
108
+ # supply; the five named types need none.
109
+ type:
69
110
  )
70
- ACTION_ITEMS =
71
- T.let(
72
- :action_items,
73
- Telnyx::MeetingSessions::ArtifactCreateParams::Type::TaggedSymbol
111
+ end
112
+
113
+ sig do
114
+ override.returns(
115
+ {
116
+ type:
117
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::OrSymbol
118
+ }
119
+ )
120
+ end
121
+ def to_hash
122
+ end
123
+
124
+ # What to generate from the transcript. `custom` is answered from a `prompt` you
125
+ # supply; the five named types need none.
126
+ module Type
127
+ extend Telnyx::Internal::Type::Enum
128
+
129
+ TaggedSymbol =
130
+ T.type_alias do
131
+ T.all(
132
+ Symbol,
133
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type
134
+ )
135
+ end
136
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
137
+
138
+ SUMMARY =
139
+ T.let(
140
+ :summary,
141
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::TaggedSymbol
142
+ )
143
+ ACTION_ITEMS =
144
+ T.let(
145
+ :action_items,
146
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::TaggedSymbol
147
+ )
148
+ DECISIONS =
149
+ T.let(
150
+ :decisions,
151
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::TaggedSymbol
152
+ )
153
+ TOPICS =
154
+ T.let(
155
+ :topics,
156
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::TaggedSymbol
157
+ )
158
+ OPEN_QUESTIONS =
159
+ T.let(
160
+ :open_questions,
161
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::TaggedSymbol
162
+ )
163
+
164
+ sig do
165
+ override.returns(
166
+ T::Array[
167
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::NamedArtifact::Type::TaggedSymbol
168
+ ]
169
+ )
170
+ end
171
+ def self.values
172
+ end
173
+ end
174
+ end
175
+
176
+ class CustomArtifact < Telnyx::Internal::Type::BaseModel
177
+ OrHash =
178
+ T.type_alias do
179
+ T.any(
180
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::CustomArtifact,
181
+ Telnyx::Internal::AnyHash
182
+ )
183
+ end
184
+
185
+ # An open-ended request answered from the transcript. Required when `type` is
186
+ # `custom`, and rejected with 400 on any named type. Trimmed before storage and
187
+ # echoed back in artifact responses and the `artifact.completed` webhook.
188
+ sig { returns(String) }
189
+ attr_accessor :prompt
190
+
191
+ # Answered from the `prompt` below rather than a fixed question.
192
+ sig { returns(Symbol) }
193
+ attr_accessor :type
194
+
195
+ sig do
196
+ params(prompt: String, type: Symbol).returns(T.attached_class)
197
+ end
198
+ def self.new(
199
+ # An open-ended request answered from the transcript. Required when `type` is
200
+ # `custom`, and rejected with 400 on any named type. Trimmed before storage and
201
+ # echoed back in artifact responses and the `artifact.completed` webhook.
202
+ prompt:,
203
+ # Answered from the `prompt` below rather than a fixed question.
204
+ type: :custom
74
205
  )
206
+ end
207
+
208
+ sig { override.returns({ prompt: String, type: Symbol }) }
209
+ def to_hash
210
+ end
211
+ end
75
212
 
76
213
  sig do
77
214
  override.returns(
78
215
  T::Array[
79
- Telnyx::MeetingSessions::ArtifactCreateParams::Type::TaggedSymbol
216
+ Telnyx::MeetingSessions::ArtifactCreateParams::Body::Variants
80
217
  ]
81
218
  )
82
219
  end
83
- def self.values
220
+ def self.variants
84
221
  end
85
222
  end
86
223
  end
@@ -59,6 +59,11 @@ module Telnyx
59
59
  end
60
60
  attr_writer :model_provenance
61
61
 
62
+ # The prompt that produced this artifact, or null for a named type. Non-null only
63
+ # when `type` is `custom`; the five named types always return `null`.
64
+ sig { returns(T.nilable(String)) }
65
+ attr_accessor :prompt
66
+
62
67
  sig { returns(String) }
63
68
  attr_accessor :session_id
64
69
 
@@ -92,6 +97,7 @@ module Telnyx
92
97
  T.nilable(
93
98
  Telnyx::MeetingSessions::MeetingSessionArtifact::ModelProvenance::OrHash
94
99
  ),
100
+ prompt: T.nilable(String),
95
101
  session_id: String,
96
102
  status:
97
103
  Telnyx::MeetingSessions::MeetingSessionArtifact::Status::OrSymbol,
@@ -106,6 +112,9 @@ module Telnyx
106
112
  created_at:,
107
113
  failure_reason:,
108
114
  model_provenance:,
115
+ # The prompt that produced this artifact, or null for a named type. Non-null only
116
+ # when `type` is `custom`; the five named types always return `null`.
117
+ prompt:,
109
118
  session_id:,
110
119
  status:,
111
120
  type:,
@@ -127,6 +136,7 @@ module Telnyx
127
136
  T.nilable(
128
137
  Telnyx::MeetingSessions::MeetingSessionArtifact::ModelProvenance
129
138
  ),
139
+ prompt: T.nilable(String),
130
140
  session_id: String,
131
141
  status:
132
142
  Telnyx::MeetingSessions::MeetingSessionArtifact::Status::TaggedSymbol,
@@ -247,6 +257,26 @@ module Telnyx
247
257
  :action_items,
248
258
  Telnyx::MeetingSessions::MeetingSessionArtifact::Type::TaggedSymbol
249
259
  )
260
+ DECISIONS =
261
+ T.let(
262
+ :decisions,
263
+ Telnyx::MeetingSessions::MeetingSessionArtifact::Type::TaggedSymbol
264
+ )
265
+ TOPICS =
266
+ T.let(
267
+ :topics,
268
+ Telnyx::MeetingSessions::MeetingSessionArtifact::Type::TaggedSymbol
269
+ )
270
+ OPEN_QUESTIONS =
271
+ T.let(
272
+ :open_questions,
273
+ Telnyx::MeetingSessions::MeetingSessionArtifact::Type::TaggedSymbol
274
+ )
275
+ CUSTOM =
276
+ T.let(
277
+ :custom,
278
+ Telnyx::MeetingSessions::MeetingSessionArtifact::Type::TaggedSymbol
279
+ )
250
280
 
251
281
  sig do
252
282
  override.returns(
@@ -6,9 +6,29 @@ module Telnyx
6
6
  OrHash =
7
7
  T.type_alias { T.any(Telnyx::MessageEvent, Telnyx::Internal::AnyHash) }
8
8
 
9
+ # Additive canonical outcome name, prefixed with `email.`. Gateway rejection is
10
+ # `email.gw_reject`, ambiguous injection timeout is `email.injection_timeout`, and
11
+ # MTA expiration is `email.expired`. Unchanged outcomes retain their names.
12
+ # Existing stored rows are translated only when recorded payload evidence proves
13
+ # the outcome; a legacy failed row is not guessed or sharpened.
14
+ sig { returns(String) }
15
+ attr_accessor :canonical_event_type
16
+
17
+ # Legacy customer-visible event name, prefixed with `email.`. Gateway rejections
18
+ # render `email.failed`; MTA expirations render `email.bounced`. Webhook
19
+ # subscription allowlists match the legacy name.
20
+ sig { returns(String) }
21
+ attr_accessor :event_type
22
+
9
23
  sig { returns(Time) }
10
24
  attr_accessor :occurred_at
11
25
 
26
+ # Bare stored event names returned by message history. In addition to the normal
27
+ # send and delivery lifecycle, polling can expose suppression, scan, and
28
+ # quarantine lifecycle rows. Sharp canonical names gw_reject, injection_timeout,
29
+ # and expired distinguish gateway rejection, ambiguous injection timeout, and MTA
30
+ # expiration. The failed and bounced names remain valid for system/admin failures
31
+ # and hard bounces respectively. Existing stored rows retain their original names.
12
32
  sig { returns(Telnyx::EmailEventType::TaggedSymbol) }
13
33
  attr_accessor :type
14
34
 
@@ -18,19 +38,46 @@ module Telnyx
18
38
  sig { params(payload: T::Hash[Symbol, T.anything]).void }
19
39
  attr_writer :payload
20
40
 
41
+ # An event on the per-message events endpoint. The legacy event_type and additive
42
+ # canonical_event_type are email.-prefixed. The deprecated type preserves the bare
43
+ # stored event name for compatibility.
21
44
  sig do
22
45
  params(
46
+ canonical_event_type: String,
47
+ event_type: String,
23
48
  occurred_at: Time,
24
49
  type: Telnyx::EmailEventType::OrSymbol,
25
50
  payload: T::Hash[Symbol, T.anything]
26
51
  ).returns(T.attached_class)
27
52
  end
28
- def self.new(occurred_at:, type:, payload: nil)
53
+ def self.new(
54
+ # Additive canonical outcome name, prefixed with `email.`. Gateway rejection is
55
+ # `email.gw_reject`, ambiguous injection timeout is `email.injection_timeout`, and
56
+ # MTA expiration is `email.expired`. Unchanged outcomes retain their names.
57
+ # Existing stored rows are translated only when recorded payload evidence proves
58
+ # the outcome; a legacy failed row is not guessed or sharpened.
59
+ canonical_event_type:,
60
+ # Legacy customer-visible event name, prefixed with `email.`. Gateway rejections
61
+ # render `email.failed`; MTA expirations render `email.bounced`. Webhook
62
+ # subscription allowlists match the legacy name.
63
+ event_type:,
64
+ occurred_at:,
65
+ # Bare stored event names returned by message history. In addition to the normal
66
+ # send and delivery lifecycle, polling can expose suppression, scan, and
67
+ # quarantine lifecycle rows. Sharp canonical names gw_reject, injection_timeout,
68
+ # and expired distinguish gateway rejection, ambiguous injection timeout, and MTA
69
+ # expiration. The failed and bounced names remain valid for system/admin failures
70
+ # and hard bounces respectively. Existing stored rows retain their original names.
71
+ type:,
72
+ payload: nil
73
+ )
29
74
  end
30
75
 
31
76
  sig do
32
77
  override.returns(
33
78
  {
79
+ canonical_event_type: String,
80
+ event_type: String,
34
81
  occurred_at: Time,
35
82
  type: Telnyx::EmailEventType::TaggedSymbol,
36
83
  payload: T::Hash[Symbol, T.anything]
@@ -11,30 +11,24 @@ module Telnyx
11
11
  )
12
12
  end
13
13
 
14
- sig do
15
- returns(T.nilable(T::Array[Telnyx::MessagingOutboundMessagePayload]))
16
- end
14
+ sig { returns(T.nilable(T::Array[Telnyx::OutboundMessagePayload])) }
17
15
  attr_reader :data
18
16
 
19
17
  sig do
20
- params(
21
- data: T::Array[Telnyx::MessagingOutboundMessagePayload::OrHash]
22
- ).void
18
+ params(data: T::Array[Telnyx::OutboundMessagePayload::OrHash]).void
23
19
  end
24
20
  attr_writer :data
25
21
 
26
22
  sig do
27
- params(
28
- data: T::Array[Telnyx::MessagingOutboundMessagePayload::OrHash]
29
- ).returns(T.attached_class)
23
+ params(data: T::Array[Telnyx::OutboundMessagePayload::OrHash]).returns(
24
+ T.attached_class
25
+ )
30
26
  end
31
27
  def self.new(data: nil)
32
28
  end
33
29
 
34
30
  sig do
35
- override.returns(
36
- { data: T::Array[Telnyx::MessagingOutboundMessagePayload] }
37
- )
31
+ override.returns({ data: T::Array[Telnyx::OutboundMessagePayload] })
38
32
  end
39
33
  def to_hash
40
34
  end