telnyx 5.0.0 → 5.2.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 (289) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +4 -0
  5. data/lib/telnyx/internal/type/union.rb +1 -1
  6. data/lib/telnyx/models/ai/assistant.rb +39 -4
  7. data/lib/telnyx/models/ai/assistant_create_params.rb +17 -6
  8. data/lib/telnyx/models/ai/assistant_imports_params.rb +10 -1
  9. data/lib/telnyx/models/ai/assistant_tool.rb +400 -3
  10. data/lib/telnyx/models/ai/assistant_update_params.rb +17 -6
  11. data/lib/telnyx/models/ai/assistants/update_assistant.rb +17 -6
  12. data/lib/telnyx/models/ai/audio_visualizer_config.rb +43 -0
  13. data/lib/telnyx/models/ai/bucket_ids.rb +7 -1
  14. data/lib/telnyx/models/ai/chat_create_completion_params.rb +4 -4
  15. data/lib/telnyx/models/ai/inference_embedding.rb +17 -6
  16. data/lib/telnyx/models/ai/messaging_settings.rb +10 -1
  17. data/lib/telnyx/models/ai/retrieval_tool.rb +3 -3
  18. data/lib/telnyx/models/ai/telephony_settings.rb +142 -1
  19. data/lib/telnyx/models/ai/transfer_tool.rb +46 -3
  20. data/lib/telnyx/models/ai/voice_settings.rb +1 -1
  21. data/lib/telnyx/models/ai/webhook_tool.rb +256 -3
  22. data/lib/telnyx/models/ai/widget_settings.rb +138 -0
  23. data/lib/telnyx/models/call_control_application_list_params.rb +16 -18
  24. data/lib/telnyx/models/call_event_list_params.rb +16 -18
  25. data/lib/telnyx/models/calls/action_add_ai_assistant_messages_params.rb +289 -0
  26. data/lib/telnyx/models/calls/action_add_ai_assistant_messages_response.rb +18 -0
  27. data/lib/telnyx/models/calls/action_start_noise_suppression_params.rb +7 -4
  28. data/lib/telnyx/models/conference_list_params.rb +16 -18
  29. data/lib/telnyx/models/conference_list_participants_params.rb +16 -18
  30. data/lib/telnyx/models/connection_list_active_calls_params.rb +16 -18
  31. data/lib/telnyx/models/connection_noise_suppression_details.rb +61 -0
  32. data/lib/telnyx/models/credential_connection.rb +3 -61
  33. data/lib/telnyx/models/credential_connection_create_params.rb +3 -61
  34. data/lib/telnyx/models/credential_connection_update_params.rb +3 -61
  35. data/lib/telnyx/models/fax_create_params.rb +10 -1
  36. data/lib/telnyx/models/fqdn_connection.rb +3 -60
  37. data/lib/telnyx/models/fqdn_connection_create_params.rb +3 -60
  38. data/lib/telnyx/models/fqdn_connection_update_params.rb +3 -60
  39. data/lib/telnyx/models/ip_connection.rb +3 -60
  40. data/lib/telnyx/models/ip_connection_create_params.rb +3 -60
  41. data/lib/telnyx/models/ip_connection_update_params.rb +3 -60
  42. data/lib/telnyx/models/messaging_10dlc/brand_retrieve_sms_otp_status_params.rb +1 -9
  43. data/lib/telnyx/models/messaging_profile.rb +11 -1
  44. data/lib/telnyx/models/messaging_profile_create_params.rb +11 -1
  45. data/lib/telnyx/models/messaging_profile_update_params.rb +11 -1
  46. data/lib/telnyx/models/messaging_tollfree/verification/tf_verification_request.rb +14 -1
  47. data/lib/telnyx/models/messaging_tollfree/verification/verification_request_egress.rb +17 -1
  48. data/lib/telnyx/models/messaging_tollfree/verification/verification_request_status.rb +17 -1
  49. data/lib/telnyx/models/organizations/user_get_groups_report_params.rb +32 -0
  50. data/lib/telnyx/models/organizations/user_get_groups_report_response.rb +110 -0
  51. data/lib/telnyx/models/organizations/user_group_reference.rb +28 -0
  52. data/lib/telnyx/models/organizations/user_list_params.rb +73 -0
  53. data/lib/telnyx/models/organizations/user_list_response.rb +96 -0
  54. data/lib/telnyx/models/organizations/user_retrieve_params.rb +29 -0
  55. data/lib/telnyx/models/organizations/user_retrieve_response.rb +107 -0
  56. data/lib/telnyx/models/organizations/users/action_remove_params.rb +18 -0
  57. data/lib/telnyx/models/organizations/users/action_remove_response.rb +111 -0
  58. data/lib/telnyx/models/private_wireless_gateway_status.rb +3 -2
  59. data/lib/telnyx/models/queues/call_list_params.rb +16 -18
  60. data/lib/telnyx/models/sim_card_list_params.rb +11 -3
  61. data/lib/telnyx/models/texml/accounts/queue_list_params.rb +64 -0
  62. data/lib/telnyx/models/texml/accounts/queue_list_response.rb +155 -0
  63. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +1 -7
  64. data/lib/telnyx/models/unwrap_webhook_event.rb +1 -7
  65. data/lib/telnyx/models.rb +4 -6
  66. data/lib/telnyx/resources/ai/assistants/tools.rb +2 -2
  67. data/lib/telnyx/resources/ai/assistants/versions.rb +18 -16
  68. data/lib/telnyx/resources/ai/assistants.rb +15 -9
  69. data/lib/telnyx/resources/ai/clusters.rb +1 -1
  70. data/lib/telnyx/resources/ai/embeddings.rb +1 -1
  71. data/lib/telnyx/resources/bundle_pricing/user_bundles.rb +1 -1
  72. data/lib/telnyx/resources/call_control_applications.rb +8 -4
  73. data/lib/telnyx/resources/call_events.rb +8 -4
  74. data/lib/telnyx/resources/calls/actions.rb +31 -0
  75. data/lib/telnyx/resources/conferences.rb +16 -8
  76. data/lib/telnyx/resources/connections.rb +8 -4
  77. data/lib/telnyx/resources/credential_connections.rb +2 -2
  78. data/lib/telnyx/resources/faxes.rb +3 -1
  79. data/lib/telnyx/resources/fqdn_connections.rb +2 -2
  80. data/lib/telnyx/resources/ip_connections.rb +2 -2
  81. data/lib/telnyx/resources/messages.rb +1 -1
  82. data/lib/telnyx/resources/messaging_10dlc/brand.rb +10 -14
  83. data/lib/telnyx/resources/messaging_profiles/autoresp_configs.rb +6 -6
  84. data/lib/telnyx/resources/messaging_profiles.rb +6 -2
  85. data/lib/telnyx/resources/messaging_tollfree/verification/requests.rb +6 -2
  86. data/lib/telnyx/resources/operator_connect/actions.rb +1 -1
  87. data/lib/telnyx/resources/organizations/users/actions.rb +38 -0
  88. data/lib/telnyx/resources/organizations/users.rb +114 -0
  89. data/lib/telnyx/resources/organizations.rb +18 -0
  90. data/lib/telnyx/resources/phone_numbers/jobs.rb +1 -1
  91. data/lib/telnyx/resources/queues/calls.rb +8 -4
  92. data/lib/telnyx/resources/sim_cards/actions.rb +6 -6
  93. data/lib/telnyx/resources/texml/accounts/calls/recordings.rb +1 -1
  94. data/lib/telnyx/resources/texml/accounts/queues.rb +41 -0
  95. data/lib/telnyx/resources/usage_reports.rb +2 -2
  96. data/lib/telnyx/resources/webhooks.rb +2 -2
  97. data/lib/telnyx/version.rb +1 -1
  98. data/lib/telnyx.rb +19 -69
  99. data/rbi/telnyx/client.rbi +3 -0
  100. data/rbi/telnyx/models/ai/assistant.rbi +91 -5
  101. data/rbi/telnyx/models/ai/assistant_create_params.rbi +31 -14
  102. data/rbi/telnyx/models/ai/assistant_imports_params.rbi +13 -0
  103. data/rbi/telnyx/models/ai/assistant_tool.rbi +910 -2
  104. data/rbi/telnyx/models/ai/assistant_update_params.rbi +31 -14
  105. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +36 -17
  106. data/rbi/telnyx/models/ai/audio_visualizer_config.rbi +107 -0
  107. data/rbi/telnyx/models/ai/bucket_ids.rbi +6 -0
  108. data/rbi/telnyx/models/ai/chat_create_completion_params.rbi +6 -13
  109. data/rbi/telnyx/models/ai/inference_embedding.rbi +30 -13
  110. data/rbi/telnyx/models/ai/messaging_settings.rbi +13 -0
  111. data/rbi/telnyx/models/ai/retrieval_tool.rbi +4 -8
  112. data/rbi/telnyx/models/ai/telephony_settings.rbi +347 -3
  113. data/rbi/telnyx/models/ai/transfer_tool.rbi +87 -6
  114. data/rbi/telnyx/models/ai/voice_settings.rbi +2 -2
  115. data/rbi/telnyx/models/ai/webhook_tool.rbi +584 -8
  116. data/rbi/telnyx/models/ai/widget_settings.rbi +225 -0
  117. data/rbi/telnyx/models/call_control_application_list_params.rbi +23 -35
  118. data/rbi/telnyx/models/call_event_list_params.rbi +23 -35
  119. data/rbi/telnyx/models/calls/action_add_ai_assistant_messages_params.rbi +583 -0
  120. data/rbi/telnyx/models/calls/action_add_ai_assistant_messages_response.rbi +39 -0
  121. data/rbi/telnyx/models/calls/action_start_noise_suppression_params.rbi +14 -6
  122. data/rbi/telnyx/models/conference_list_params.rbi +23 -35
  123. data/rbi/telnyx/models/conference_list_participants_params.rbi +23 -35
  124. data/rbi/telnyx/models/connection_list_active_calls_params.rbi +23 -35
  125. data/rbi/telnyx/models/connection_noise_suppression_details.rbi +141 -0
  126. data/rbi/telnyx/models/credential_connection.rbi +4 -152
  127. data/rbi/telnyx/models/credential_connection_create_params.rbi +4 -154
  128. data/rbi/telnyx/models/credential_connection_update_params.rbi +4 -154
  129. data/rbi/telnyx/models/fax_create_params.rbi +13 -0
  130. data/rbi/telnyx/models/fqdn_connection.rbi +4 -150
  131. data/rbi/telnyx/models/fqdn_connection_create_params.rbi +4 -152
  132. data/rbi/telnyx/models/fqdn_connection_update_params.rbi +4 -152
  133. data/rbi/telnyx/models/ip_connection.rbi +4 -148
  134. data/rbi/telnyx/models/ip_connection_create_params.rbi +4 -152
  135. data/rbi/telnyx/models/ip_connection_update_params.rbi +4 -152
  136. data/rbi/telnyx/models/messaging_10dlc/brand_retrieve_sms_otp_status_params.rbi +5 -21
  137. data/rbi/telnyx/models/messaging_profile.rbi +15 -0
  138. data/rbi/telnyx/models/messaging_profile_create_params.rbi +15 -0
  139. data/rbi/telnyx/models/messaging_profile_update_params.rbi +15 -0
  140. data/rbi/telnyx/models/messaging_tollfree/verification/tf_verification_request.rbi +12 -0
  141. data/rbi/telnyx/models/messaging_tollfree/verification/verification_request_egress.rbi +10 -0
  142. data/rbi/telnyx/models/messaging_tollfree/verification/verification_request_status.rbi +10 -0
  143. data/rbi/telnyx/models/organizations/user_get_groups_report_params.rbi +93 -0
  144. data/rbi/telnyx/models/organizations/user_get_groups_report_response.rbi +210 -0
  145. data/rbi/telnyx/models/organizations/user_group_reference.rbi +39 -0
  146. data/rbi/telnyx/models/organizations/user_list_params.rbi +152 -0
  147. data/rbi/telnyx/models/organizations/user_list_response.rbi +188 -0
  148. data/rbi/telnyx/models/organizations/user_retrieve_params.rbi +55 -0
  149. data/rbi/telnyx/models/organizations/user_retrieve_response.rbi +232 -0
  150. data/rbi/telnyx/models/organizations/users/action_remove_params.rbi +34 -0
  151. data/rbi/telnyx/models/organizations/users/action_remove_response.rbi +239 -0
  152. data/rbi/telnyx/models/private_wireless_gateway_status.rbi +4 -2
  153. data/rbi/telnyx/models/queues/call_list_params.rbi +23 -35
  154. data/rbi/telnyx/models/sim_card_list_params.rbi +14 -3
  155. data/rbi/telnyx/models/texml/accounts/queue_list_params.rbi +103 -0
  156. data/rbi/telnyx/models/texml/accounts/queue_list_response.rbi +269 -0
  157. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +0 -3
  158. data/rbi/telnyx/models/unwrap_webhook_event.rbi +0 -3
  159. data/rbi/telnyx/models.rbi +5 -6
  160. data/rbi/telnyx/resources/ai/assistants/tools.rbi +2 -2
  161. data/rbi/telnyx/resources/ai/assistants/versions.rbi +25 -19
  162. data/rbi/telnyx/resources/ai/assistants.rbi +30 -14
  163. data/rbi/telnyx/resources/ai/chat.rbi +1 -1
  164. data/rbi/telnyx/resources/ai/clusters.rbi +1 -1
  165. data/rbi/telnyx/resources/ai/embeddings.rbi +1 -1
  166. data/rbi/telnyx/resources/bundle_pricing/user_bundles.rbi +1 -1
  167. data/rbi/telnyx/resources/call_control_applications.rbi +7 -1
  168. data/rbi/telnyx/resources/call_events.rbi +5 -1
  169. data/rbi/telnyx/resources/calls/actions.rbi +37 -2
  170. data/rbi/telnyx/resources/conferences.rbi +10 -2
  171. data/rbi/telnyx/resources/connections.rbi +5 -1
  172. data/rbi/telnyx/resources/credential_connections.rbi +2 -2
  173. data/rbi/telnyx/resources/faxes.rbi +4 -0
  174. data/rbi/telnyx/resources/fqdn_connections.rbi +2 -2
  175. data/rbi/telnyx/resources/ip_connections.rbi +2 -2
  176. data/rbi/telnyx/resources/messages.rbi +1 -1
  177. data/rbi/telnyx/resources/messaging_10dlc/brand.rbi +8 -11
  178. data/rbi/telnyx/resources/messaging_profiles/autoresp_configs.rbi +6 -6
  179. data/rbi/telnyx/resources/messaging_profiles.rbi +10 -0
  180. data/rbi/telnyx/resources/messaging_tollfree/verification/requests.rbi +10 -0
  181. data/rbi/telnyx/resources/operator_connect/actions.rbi +1 -1
  182. data/rbi/telnyx/resources/organizations/users/actions.rbi +32 -0
  183. data/rbi/telnyx/resources/organizations/users.rbi +88 -0
  184. data/rbi/telnyx/resources/organizations.rbi +15 -0
  185. data/rbi/telnyx/resources/phone_numbers/jobs.rbi +1 -1
  186. data/rbi/telnyx/resources/queues/calls.rbi +5 -1
  187. data/rbi/telnyx/resources/sim_cards/actions.rbi +6 -6
  188. data/rbi/telnyx/resources/sim_cards.rbi +1 -1
  189. data/rbi/telnyx/resources/texml/accounts/calls/recordings.rbi +1 -1
  190. data/rbi/telnyx/resources/texml/accounts/queues.rbi +32 -0
  191. data/rbi/telnyx/resources/usage_reports.rbi +2 -2
  192. data/rbi/telnyx/resources/webhooks.rbi +0 -6
  193. data/sig/telnyx/client.rbs +2 -0
  194. data/sig/telnyx/models/ai/assistant.rbs +44 -1
  195. data/sig/telnyx/models/ai/assistant_create_params.rbs +10 -1
  196. data/sig/telnyx/models/ai/assistant_imports_params.rbs +8 -1
  197. data/sig/telnyx/models/ai/assistant_tool.rbs +367 -2
  198. data/sig/telnyx/models/ai/assistant_update_params.rbs +10 -1
  199. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +12 -3
  200. data/sig/telnyx/models/ai/audio_visualizer_config.rbs +48 -0
  201. data/sig/telnyx/models/ai/chat_create_completion_params.rbs +4 -7
  202. data/sig/telnyx/models/ai/inference_embedding.rbs +12 -3
  203. data/sig/telnyx/models/ai/messaging_settings.rbs +7 -0
  204. data/sig/telnyx/models/ai/retrieval_tool.rbs +4 -4
  205. data/sig/telnyx/models/ai/telephony_settings.rbs +133 -4
  206. data/sig/telnyx/models/ai/transfer_tool.rbs +42 -4
  207. data/sig/telnyx/models/ai/webhook_tool.rbs +241 -4
  208. data/sig/telnyx/models/ai/widget_settings.rbs +127 -0
  209. data/sig/telnyx/models/call_control_application_list_params.rbs +17 -26
  210. data/sig/telnyx/models/call_event_list_params.rbs +18 -27
  211. data/sig/telnyx/models/calls/action_add_ai_assistant_messages_params.rbs +240 -0
  212. data/sig/telnyx/models/calls/action_add_ai_assistant_messages_response.rbs +20 -0
  213. data/sig/telnyx/models/calls/action_start_noise_suppression_params.rbs +2 -1
  214. data/sig/telnyx/models/conference_list_params.rbs +17 -26
  215. data/sig/telnyx/models/conference_list_participants_params.rbs +17 -26
  216. data/sig/telnyx/models/connection_list_active_calls_params.rbs +20 -27
  217. data/sig/telnyx/models/connection_noise_suppression_details.rbs +54 -0
  218. data/sig/telnyx/models/credential_connection.rbs +6 -57
  219. data/sig/telnyx/models/credential_connection_create_params.rbs +6 -57
  220. data/sig/telnyx/models/credential_connection_update_params.rbs +6 -57
  221. data/sig/telnyx/models/fax_create_params.rbs +7 -0
  222. data/sig/telnyx/models/fqdn_connection.rbs +6 -57
  223. data/sig/telnyx/models/fqdn_connection_create_params.rbs +6 -57
  224. data/sig/telnyx/models/fqdn_connection_update_params.rbs +6 -57
  225. data/sig/telnyx/models/ip_connection.rbs +6 -57
  226. data/sig/telnyx/models/ip_connection_create_params.rbs +6 -57
  227. data/sig/telnyx/models/ip_connection_update_params.rbs +6 -57
  228. data/sig/telnyx/models/messaging_10dlc/brand_retrieve_sms_otp_status_params.rbs +3 -13
  229. data/sig/telnyx/models/messaging_profile.rbs +7 -0
  230. data/sig/telnyx/models/messaging_profile_create_params.rbs +7 -0
  231. data/sig/telnyx/models/messaging_profile_update_params.rbs +7 -0
  232. data/sig/telnyx/models/messaging_tollfree/verification/tf_verification_request.rbs +5 -0
  233. data/sig/telnyx/models/messaging_tollfree/verification/verification_request_egress.rbs +5 -0
  234. data/sig/telnyx/models/messaging_tollfree/verification/verification_request_status.rbs +5 -0
  235. data/sig/telnyx/models/organizations/user_get_groups_report_params.rbs +43 -0
  236. data/sig/telnyx/models/organizations/user_get_groups_report_response.rbs +92 -0
  237. data/sig/telnyx/models/organizations/user_group_reference.rbs +17 -0
  238. data/sig/telnyx/models/organizations/user_list_params.rbs +72 -0
  239. data/sig/telnyx/models/organizations/user_list_response.rbs +87 -0
  240. data/sig/telnyx/models/organizations/user_retrieve_params.rbs +27 -0
  241. data/sig/telnyx/models/organizations/user_retrieve_response.rbs +106 -0
  242. data/sig/telnyx/models/organizations/users/action_remove_params.rbs +19 -0
  243. data/sig/telnyx/models/organizations/users/action_remove_response.rbs +110 -0
  244. data/sig/telnyx/models/queues/call_list_params.rbs +20 -27
  245. data/sig/telnyx/models/sim_card_list_params.rbs +7 -0
  246. data/sig/telnyx/models/texml/accounts/queue_list_params.rbs +60 -0
  247. data/sig/telnyx/models/texml/accounts/queue_list_response.rbs +152 -0
  248. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +0 -3
  249. data/sig/telnyx/models/unwrap_webhook_event.rbs +0 -3
  250. data/sig/telnyx/models.rbs +4 -6
  251. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  252. data/sig/telnyx/resources/ai/assistants.rbs +3 -0
  253. data/sig/telnyx/resources/call_control_applications.rbs +3 -1
  254. data/sig/telnyx/resources/call_events.rbs +3 -1
  255. data/sig/telnyx/resources/calls/actions.rbs +8 -0
  256. data/sig/telnyx/resources/conferences.rbs +6 -2
  257. data/sig/telnyx/resources/connections.rbs +3 -1
  258. data/sig/telnyx/resources/credential_connections.rbs +2 -2
  259. data/sig/telnyx/resources/faxes.rbs +1 -0
  260. data/sig/telnyx/resources/fqdn_connections.rbs +2 -2
  261. data/sig/telnyx/resources/ip_connections.rbs +2 -2
  262. data/sig/telnyx/resources/messaging_10dlc/brand.rbs +1 -2
  263. data/sig/telnyx/resources/messaging_profiles.rbs +2 -0
  264. data/sig/telnyx/resources/messaging_tollfree/verification/requests.rbs +2 -0
  265. data/sig/telnyx/resources/organizations/users/actions.rbs +16 -0
  266. data/sig/telnyx/resources/organizations/users.rbs +31 -0
  267. data/sig/telnyx/resources/organizations.rbs +9 -0
  268. data/sig/telnyx/resources/queues/calls.rbs +3 -1
  269. data/sig/telnyx/resources/texml/accounts/queues.rbs +10 -0
  270. data/sig/telnyx/resources/webhooks.rbs +0 -6
  271. metadata +59 -20
  272. data/lib/telnyx/models/ai/inference_embedding_bucket_ids.rb +0 -31
  273. data/lib/telnyx/models/ai/inference_embedding_transfer_tool_params.rb +0 -93
  274. data/lib/telnyx/models/ai/inference_embedding_webhook_tool_params.rb +0 -265
  275. data/lib/telnyx/models/streaming_failed_webhook_event.rb +0 -15
  276. data/lib/telnyx/models/streaming_started_webhook_event.rb +0 -15
  277. data/lib/telnyx/models/streaming_stopped_webhook_event.rb +0 -15
  278. data/rbi/telnyx/models/ai/inference_embedding_bucket_ids.rbi +0 -54
  279. data/rbi/telnyx/models/ai/inference_embedding_transfer_tool_params.rbi +0 -185
  280. data/rbi/telnyx/models/ai/inference_embedding_webhook_tool_params.rbi +0 -621
  281. data/rbi/telnyx/models/streaming_failed_webhook_event.rbi +0 -30
  282. data/rbi/telnyx/models/streaming_started_webhook_event.rbi +0 -30
  283. data/rbi/telnyx/models/streaming_stopped_webhook_event.rbi +0 -30
  284. data/sig/telnyx/models/ai/inference_embedding_bucket_ids.rbs +0 -26
  285. data/sig/telnyx/models/ai/inference_embedding_transfer_tool_params.rbs +0 -75
  286. data/sig/telnyx/models/ai/inference_embedding_webhook_tool_params.rbs +0 -242
  287. data/sig/telnyx/models/streaming_failed_webhook_event.rbs +0 -15
  288. data/sig/telnyx/models/streaming_started_webhook_event.rbs +0 -16
  289. data/sig/telnyx/models/streaming_stopped_webhook_event.rbs +0 -16
@@ -11,7 +11,7 @@ module Telnyx
11
11
 
12
12
  discriminator :type
13
13
 
14
- variant :webhook, -> { Telnyx::AI::WebhookTool }
14
+ variant :webhook, -> { Telnyx::AI::AssistantTool::Webhook }
15
15
 
16
16
  variant :retrieval, -> { Telnyx::AI::RetrievalTool }
17
17
 
@@ -20,7 +20,7 @@ module Telnyx
20
20
 
21
21
  variant :hangup, -> { Telnyx::AI::HangupTool }
22
22
 
23
- variant :transfer, -> { Telnyx::AI::TransferTool }
23
+ variant :transfer, -> { Telnyx::AI::AssistantTool::Transfer }
24
24
 
25
25
  variant :refer, -> { Telnyx::AI::AssistantTool::Refer }
26
26
 
@@ -29,6 +29,300 @@ module Telnyx
29
29
  # The send_message tool allows the assistant to send SMS or MMS messages to the end user. The 'to' and 'from' addresses are automatically determined from the conversation context, and the message text is generated by the assistant.
30
30
  variant :send_message, -> { Telnyx::AI::AssistantTool::SendMessage }
31
31
 
32
+ class Webhook < Telnyx::Internal::Type::BaseModel
33
+ # @!attribute type
34
+ #
35
+ # @return [Symbol, :webhook]
36
+ required :type, const: :webhook
37
+
38
+ # @!attribute webhook
39
+ #
40
+ # @return [Telnyx::Models::AI::AssistantTool::Webhook::Webhook]
41
+ required :webhook, -> { Telnyx::AI::AssistantTool::Webhook::Webhook }
42
+
43
+ # @!method initialize(webhook:, type: :webhook)
44
+ # @param webhook [Telnyx::Models::AI::AssistantTool::Webhook::Webhook]
45
+ # @param type [Symbol, :webhook]
46
+
47
+ # @see Telnyx::Models::AI::AssistantTool::Webhook#webhook
48
+ class Webhook < Telnyx::Internal::Type::BaseModel
49
+ # @!attribute description
50
+ # The description of the tool.
51
+ #
52
+ # @return [String]
53
+ required :description, String
54
+
55
+ # @!attribute name
56
+ # The name of the tool.
57
+ #
58
+ # @return [String]
59
+ required :name, String
60
+
61
+ # @!attribute url
62
+ # The URL of the external tool to be called. This URL is going to be used by the
63
+ # assistant. The URL can be templated like: `https://example.com/api/v1/{id}`,
64
+ # where `{id}` is a placeholder for a value that will be provided by the assistant
65
+ # if `path_parameters` are provided with the `id` attribute.
66
+ #
67
+ # @return [String]
68
+ required :url, String
69
+
70
+ # @!attribute async
71
+ # If async, the assistant will move forward without waiting for your server to
72
+ # respond.
73
+ #
74
+ # @return [Boolean, nil]
75
+ optional :async, Telnyx::Internal::Type::Boolean
76
+
77
+ # @!attribute body_parameters
78
+ # The body parameters the webhook tool accepts, described as a JSON Schema object.
79
+ # These parameters will be passed to the webhook as the body of the request. See
80
+ # the [JSON Schema reference](https://json-schema.org/understanding-json-schema)
81
+ # for documentation about the format
82
+ #
83
+ # @return [Telnyx::Models::AI::AssistantTool::Webhook::Webhook::BodyParameters, nil]
84
+ optional :body_parameters, -> { Telnyx::AI::AssistantTool::Webhook::Webhook::BodyParameters }
85
+
86
+ # @!attribute headers
87
+ # The headers to be sent to the external tool.
88
+ #
89
+ # @return [Array<Telnyx::Models::AI::AssistantTool::Webhook::Webhook::Header>, nil]
90
+ optional :headers,
91
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantTool::Webhook::Webhook::Header] }
92
+
93
+ # @!attribute method_
94
+ # The HTTP method to be used when calling the external tool.
95
+ #
96
+ # @return [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::Method, nil]
97
+ optional :method_,
98
+ enum: -> {
99
+ Telnyx::AI::AssistantTool::Webhook::Webhook::Method
100
+ },
101
+ api_name: :method
102
+
103
+ # @!attribute path_parameters
104
+ # The path parameters the webhook tool accepts, described as a JSON Schema object.
105
+ # These parameters will be passed to the webhook as the path of the request if the
106
+ # URL contains a placeholder for a value. See the
107
+ # [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
108
+ # documentation about the format
109
+ #
110
+ # @return [Telnyx::Models::AI::AssistantTool::Webhook::Webhook::PathParameters, nil]
111
+ optional :path_parameters, -> { Telnyx::AI::AssistantTool::Webhook::Webhook::PathParameters }
112
+
113
+ # @!attribute query_parameters
114
+ # The query parameters the webhook tool accepts, described as a JSON Schema
115
+ # object. These parameters will be passed to the webhook as the query of the
116
+ # request. See the
117
+ # [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
118
+ # documentation about the format
119
+ #
120
+ # @return [Telnyx::Models::AI::AssistantTool::Webhook::Webhook::QueryParameters, nil]
121
+ optional :query_parameters, -> { Telnyx::AI::AssistantTool::Webhook::Webhook::QueryParameters }
122
+
123
+ # @!attribute timeout_ms
124
+ # The maximum number of milliseconds to wait for the webhook to respond. Only
125
+ # applicable when async is false.
126
+ #
127
+ # @return [Integer, nil]
128
+ optional :timeout_ms, Integer
129
+
130
+ # @!method initialize(description:, name:, url:, async: nil, body_parameters: nil, headers: nil, method_: nil, path_parameters: nil, query_parameters: nil, timeout_ms: nil)
131
+ # Some parameter documentations has been truncated, see
132
+ # {Telnyx::Models::AI::AssistantTool::Webhook::Webhook} for more details.
133
+ #
134
+ # @param description [String] The description of the tool.
135
+ #
136
+ # @param name [String] The name of the tool.
137
+ #
138
+ # @param url [String] The URL of the external tool to be called. This URL is going to be used by the a
139
+ #
140
+ # @param async [Boolean] If async, the assistant will move forward without waiting for your server to res
141
+ #
142
+ # @param body_parameters [Telnyx::Models::AI::AssistantTool::Webhook::Webhook::BodyParameters] The body parameters the webhook tool accepts, described as a JSON Schema object.
143
+ #
144
+ # @param headers [Array<Telnyx::Models::AI::AssistantTool::Webhook::Webhook::Header>] The headers to be sent to the external tool.
145
+ #
146
+ # @param method_ [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::Method] The HTTP method to be used when calling the external tool.
147
+ #
148
+ # @param path_parameters [Telnyx::Models::AI::AssistantTool::Webhook::Webhook::PathParameters] The path parameters the webhook tool accepts, described as a JSON Schema object.
149
+ #
150
+ # @param query_parameters [Telnyx::Models::AI::AssistantTool::Webhook::Webhook::QueryParameters] The query parameters the webhook tool accepts, described as a JSON Schema object
151
+ #
152
+ # @param timeout_ms [Integer] The maximum number of milliseconds to wait for the webhook to respond. Only appl
153
+
154
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook#body_parameters
155
+ class BodyParameters < Telnyx::Internal::Type::BaseModel
156
+ # @!attribute properties
157
+ # The properties of the body parameters.
158
+ #
159
+ # @return [Hash{Symbol=>Object}, nil]
160
+ optional :properties, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
161
+
162
+ # @!attribute required
163
+ # The required properties of the body parameters.
164
+ #
165
+ # @return [Array<String>, nil]
166
+ optional :required, Telnyx::Internal::Type::ArrayOf[String]
167
+
168
+ # @!attribute type
169
+ #
170
+ # @return [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::BodyParameters::Type, nil]
171
+ optional :type, enum: -> { Telnyx::AI::AssistantTool::Webhook::Webhook::BodyParameters::Type }
172
+
173
+ # @!method initialize(properties: nil, required: nil, type: nil)
174
+ # The body parameters the webhook tool accepts, described as a JSON Schema object.
175
+ # These parameters will be passed to the webhook as the body of the request. See
176
+ # the [JSON Schema reference](https://json-schema.org/understanding-json-schema)
177
+ # for documentation about the format
178
+ #
179
+ # @param properties [Hash{Symbol=>Object}] The properties of the body parameters.
180
+ #
181
+ # @param required [Array<String>] The required properties of the body parameters.
182
+ #
183
+ # @param type [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::BodyParameters::Type]
184
+
185
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook::BodyParameters#type
186
+ module Type
187
+ extend Telnyx::Internal::Type::Enum
188
+
189
+ OBJECT = :object
190
+
191
+ # @!method self.values
192
+ # @return [Array<Symbol>]
193
+ end
194
+ end
195
+
196
+ class Header < Telnyx::Internal::Type::BaseModel
197
+ # @!attribute name
198
+ #
199
+ # @return [String, nil]
200
+ optional :name, String
201
+
202
+ # @!attribute value
203
+ # The value of the header. Note that we support mustache templating for the value.
204
+ # For example you can use
205
+ # `Bearer {{#integration_secret}}test-secret{{/integration_secret}}` to pass the
206
+ # value of the integration secret as the bearer token.
207
+ # [Telnyx signature headers](https://developers.telnyx.com/docs/voice/programmable-voice/voice-api-webhooks)
208
+ # will be automatically added to the request.
209
+ #
210
+ # @return [String, nil]
211
+ optional :value, String
212
+
213
+ # @!method initialize(name: nil, value: nil)
214
+ # Some parameter documentations has been truncated, see
215
+ # {Telnyx::Models::AI::AssistantTool::Webhook::Webhook::Header} for more details.
216
+ #
217
+ # @param name [String]
218
+ #
219
+ # @param value [String] The value of the header. Note that we support mustache templating for the value.
220
+ end
221
+
222
+ # The HTTP method to be used when calling the external tool.
223
+ #
224
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook#method_
225
+ module Method
226
+ extend Telnyx::Internal::Type::Enum
227
+
228
+ GET = :GET
229
+ POST = :POST
230
+ PUT = :PUT
231
+ DELETE = :DELETE
232
+ PATCH = :PATCH
233
+
234
+ # @!method self.values
235
+ # @return [Array<Symbol>]
236
+ end
237
+
238
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook#path_parameters
239
+ class PathParameters < Telnyx::Internal::Type::BaseModel
240
+ # @!attribute properties
241
+ # The properties of the path parameters.
242
+ #
243
+ # @return [Hash{Symbol=>Object}, nil]
244
+ optional :properties, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
245
+
246
+ # @!attribute required
247
+ # The required properties of the path parameters.
248
+ #
249
+ # @return [Array<String>, nil]
250
+ optional :required, Telnyx::Internal::Type::ArrayOf[String]
251
+
252
+ # @!attribute type
253
+ #
254
+ # @return [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::PathParameters::Type, nil]
255
+ optional :type, enum: -> { Telnyx::AI::AssistantTool::Webhook::Webhook::PathParameters::Type }
256
+
257
+ # @!method initialize(properties: nil, required: nil, type: nil)
258
+ # The path parameters the webhook tool accepts, described as a JSON Schema object.
259
+ # These parameters will be passed to the webhook as the path of the request if the
260
+ # URL contains a placeholder for a value. See the
261
+ # [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
262
+ # documentation about the format
263
+ #
264
+ # @param properties [Hash{Symbol=>Object}] The properties of the path parameters.
265
+ #
266
+ # @param required [Array<String>] The required properties of the path parameters.
267
+ #
268
+ # @param type [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::PathParameters::Type]
269
+
270
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook::PathParameters#type
271
+ module Type
272
+ extend Telnyx::Internal::Type::Enum
273
+
274
+ OBJECT = :object
275
+
276
+ # @!method self.values
277
+ # @return [Array<Symbol>]
278
+ end
279
+ end
280
+
281
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook#query_parameters
282
+ class QueryParameters < Telnyx::Internal::Type::BaseModel
283
+ # @!attribute properties
284
+ # The properties of the query parameters.
285
+ #
286
+ # @return [Hash{Symbol=>Object}, nil]
287
+ optional :properties, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
288
+
289
+ # @!attribute required
290
+ # The required properties of the query parameters.
291
+ #
292
+ # @return [Array<String>, nil]
293
+ optional :required, Telnyx::Internal::Type::ArrayOf[String]
294
+
295
+ # @!attribute type
296
+ #
297
+ # @return [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::QueryParameters::Type, nil]
298
+ optional :type, enum: -> { Telnyx::AI::AssistantTool::Webhook::Webhook::QueryParameters::Type }
299
+
300
+ # @!method initialize(properties: nil, required: nil, type: nil)
301
+ # The query parameters the webhook tool accepts, described as a JSON Schema
302
+ # object. These parameters will be passed to the webhook as the query of the
303
+ # request. See the
304
+ # [JSON Schema reference](https://json-schema.org/understanding-json-schema) for
305
+ # documentation about the format
306
+ #
307
+ # @param properties [Hash{Symbol=>Object}] The properties of the query parameters.
308
+ #
309
+ # @param required [Array<String>] The required properties of the query parameters.
310
+ #
311
+ # @param type [Symbol, Telnyx::Models::AI::AssistantTool::Webhook::Webhook::QueryParameters::Type]
312
+
313
+ # @see Telnyx::Models::AI::AssistantTool::Webhook::Webhook::QueryParameters#type
314
+ module Type
315
+ extend Telnyx::Internal::Type::Enum
316
+
317
+ OBJECT = :object
318
+
319
+ # @!method self.values
320
+ # @return [Array<Symbol>]
321
+ end
322
+ end
323
+ end
324
+ end
325
+
32
326
  class Handoff < Telnyx::Internal::Type::BaseModel
33
327
  # @!attribute handoff
34
328
  #
@@ -111,6 +405,109 @@ module Telnyx
111
405
  end
112
406
  end
113
407
 
408
+ class Transfer < Telnyx::Internal::Type::BaseModel
409
+ # @!attribute transfer
410
+ #
411
+ # @return [Telnyx::Models::AI::AssistantTool::Transfer::Transfer]
412
+ required :transfer, -> { Telnyx::AI::AssistantTool::Transfer::Transfer }
413
+
414
+ # @!attribute type
415
+ #
416
+ # @return [Symbol, :transfer]
417
+ required :type, const: :transfer
418
+
419
+ # @!method initialize(transfer:, type: :transfer)
420
+ # @param transfer [Telnyx::Models::AI::AssistantTool::Transfer::Transfer]
421
+ # @param type [Symbol, :transfer]
422
+
423
+ # @see Telnyx::Models::AI::AssistantTool::Transfer#transfer
424
+ class Transfer < Telnyx::Internal::Type::BaseModel
425
+ # @!attribute from
426
+ # Number or SIP URI placing the call.
427
+ #
428
+ # @return [String]
429
+ required :from, String
430
+
431
+ # @!attribute targets
432
+ # The different possible targets of the transfer. The assistant will be able to
433
+ # choose one of the targets to transfer the call to.
434
+ #
435
+ # @return [Array<Telnyx::Models::AI::AssistantTool::Transfer::Transfer::Target>]
436
+ required :targets,
437
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantTool::Transfer::Transfer::Target] }
438
+
439
+ # @!attribute custom_headers
440
+ # Custom headers to be added to the SIP INVITE for the transfer command.
441
+ #
442
+ # @return [Array<Telnyx::Models::AI::AssistantTool::Transfer::Transfer::CustomHeader>, nil]
443
+ optional :custom_headers,
444
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantTool::Transfer::Transfer::CustomHeader] }
445
+
446
+ # @!attribute warm_transfer_instructions
447
+ # Natural language instructions for your agent for how to provide context for the
448
+ # transfer recipient.
449
+ #
450
+ # @return [String, nil]
451
+ optional :warm_transfer_instructions, String
452
+
453
+ # @!method initialize(from:, targets:, custom_headers: nil, warm_transfer_instructions: nil)
454
+ # Some parameter documentations has been truncated, see
455
+ # {Telnyx::Models::AI::AssistantTool::Transfer::Transfer} for more details.
456
+ #
457
+ # @param from [String] Number or SIP URI placing the call.
458
+ #
459
+ # @param targets [Array<Telnyx::Models::AI::AssistantTool::Transfer::Transfer::Target>] The different possible targets of the transfer. The assistant will be able to ch
460
+ #
461
+ # @param custom_headers [Array<Telnyx::Models::AI::AssistantTool::Transfer::Transfer::CustomHeader>] Custom headers to be added to the SIP INVITE for the transfer command.
462
+ #
463
+ # @param warm_transfer_instructions [String] Natural language instructions for your agent for how to provide context for the
464
+
465
+ class Target < Telnyx::Internal::Type::BaseModel
466
+ # @!attribute name
467
+ # The name of the target.
468
+ #
469
+ # @return [String, nil]
470
+ optional :name, String
471
+
472
+ # @!attribute to
473
+ # The destination number or SIP URI of the call.
474
+ #
475
+ # @return [String, nil]
476
+ optional :to, String
477
+
478
+ # @!method initialize(name: nil, to: nil)
479
+ # @param name [String] The name of the target.
480
+ #
481
+ # @param to [String] The destination number or SIP URI of the call.
482
+ end
483
+
484
+ class CustomHeader < Telnyx::Internal::Type::BaseModel
485
+ # @!attribute name
486
+ #
487
+ # @return [String, nil]
488
+ optional :name, String
489
+
490
+ # @!attribute value
491
+ # The value of the header. Note that we support mustache templating for the value.
492
+ # For example you can use
493
+ # `{{#integration_secret}}test-secret{{/integration_secret}}` to pass the value of
494
+ # the integration secret.
495
+ #
496
+ # @return [String, nil]
497
+ optional :value, String
498
+
499
+ # @!method initialize(name: nil, value: nil)
500
+ # Some parameter documentations has been truncated, see
501
+ # {Telnyx::Models::AI::AssistantTool::Transfer::Transfer::CustomHeader} for more
502
+ # details.
503
+ #
504
+ # @param name [String]
505
+ #
506
+ # @param value [String] The value of the header. Note that we support mustache templating for the value.
507
+ end
508
+ end
509
+ end
510
+
114
511
  class Refer < Telnyx::Internal::Type::BaseModel
115
512
  # @!attribute refer
116
513
  #
@@ -294,7 +691,7 @@ module Telnyx
294
691
  end
295
692
 
296
693
  # @!method self.variants
297
- # @return [Array(Telnyx::Models::AI::WebhookTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::TransferTool, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage)]
694
+ # @return [Array(Telnyx::Models::AI::AssistantTool::Webhook, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage)]
298
695
  end
299
696
  end
300
697
  end
@@ -36,7 +36,10 @@ module Telnyx
36
36
  # @!attribute greeting
37
37
  # Text that the assistant will use to start the conversation. This may be
38
38
  # templated with
39
- # [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
39
+ # [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables).
40
+ # Use an empty string to have the assistant wait for the user to speak first. Use
41
+ # the special value `<assistant-speaks-first-with-model-generated-message>` to
42
+ # have the assistant generate the greeting based on the system instructions.
40
43
  #
41
44
  # @return [String, nil]
42
45
  optional :greeting, String
@@ -56,7 +59,7 @@ module Telnyx
56
59
  # @!attribute llm_api_key_ref
57
60
  # This is only needed when using third-party inference providers. The `identifier`
58
61
  # for an integration secret
59
- # [/v2/integration_secrets](https://developers.telnyx.com/api/secrets-manager/integration-secrets/create-integration-secret)
62
+ # [/v2/integration_secrets](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
60
63
  # that refers to your LLM provider's API key. Warning: Free plans are unlikely to
61
64
  # work with this integration.
62
65
  #
@@ -70,7 +73,7 @@ module Telnyx
70
73
 
71
74
  # @!attribute model
72
75
  # ID of the model to use. You can use the
73
- # [Get models API](https://developers.telnyx.com/api/inference/inference-embedding/get-models-public-models-get)
76
+ # [Get models API](https://developers.telnyx.com/api-reference/chat/get-available-models)
74
77
  # to see all of your available models,
75
78
  #
76
79
  # @return [String, nil]
@@ -102,7 +105,7 @@ module Telnyx
102
105
  # The tools that the assistant can use. These may be templated with
103
106
  # [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
104
107
  #
105
- # @return [Array<Telnyx::Models::AI::WebhookTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::TransferTool, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>, nil]
108
+ # @return [Array<Telnyx::Models::AI::AssistantTool::Webhook, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>, nil]
106
109
  optional :tools, -> { Telnyx::Internal::Type::ArrayOf[union: Telnyx::AI::AssistantTool] }
107
110
 
108
111
  # @!attribute transcription
@@ -115,7 +118,13 @@ module Telnyx
115
118
  # @return [Telnyx::Models::AI::VoiceSettings, nil]
116
119
  optional :voice_settings, -> { Telnyx::AI::VoiceSettings }
117
120
 
118
- # @!method initialize(description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, privacy_settings: nil, promote_to_main: nil, telephony_settings: nil, tools: nil, transcription: nil, voice_settings: nil, request_options: {})
121
+ # @!attribute widget_settings
122
+ # Configuration settings for the assistant's web widget.
123
+ #
124
+ # @return [Telnyx::Models::AI::WidgetSettings, nil]
125
+ optional :widget_settings, -> { Telnyx::AI::WidgetSettings }
126
+
127
+ # @!method initialize(description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, privacy_settings: nil, promote_to_main: nil, telephony_settings: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, request_options: {})
119
128
  # Some parameter documentations has been truncated, see
120
129
  # {Telnyx::Models::AI::AssistantUpdateParams} for more details.
121
130
  #
@@ -147,12 +156,14 @@ module Telnyx
147
156
  #
148
157
  # @param telephony_settings [Telnyx::Models::AI::TelephonySettings]
149
158
  #
150
- # @param tools [Array<Telnyx::Models::AI::WebhookTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::TransferTool, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>] The tools that the assistant can use. These may be templated with [dynamic varia
159
+ # @param tools [Array<Telnyx::Models::AI::AssistantTool::Webhook, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>] The tools that the assistant can use. These may be templated with [dynamic varia
151
160
  #
152
161
  # @param transcription [Telnyx::Models::AI::TranscriptionSettings]
153
162
  #
154
163
  # @param voice_settings [Telnyx::Models::AI::VoiceSettings]
155
164
  #
165
+ # @param widget_settings [Telnyx::Models::AI::WidgetSettings] Configuration settings for the assistant's web widget.
166
+ #
156
167
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
157
168
  end
158
169
  end
@@ -33,7 +33,10 @@ module Telnyx
33
33
  # @!attribute greeting
34
34
  # Text that the assistant will use to start the conversation. This may be
35
35
  # templated with
36
- # [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
36
+ # [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables).
37
+ # Use an empty string to have the assistant wait for the user to speak first. Use
38
+ # the special value `<assistant-speaks-first-with-model-generated-message>` to
39
+ # have the assistant generate the greeting based on the system instructions.
37
40
  #
38
41
  # @return [String, nil]
39
42
  optional :greeting, String
@@ -53,7 +56,7 @@ module Telnyx
53
56
  # @!attribute llm_api_key_ref
54
57
  # This is only needed when using third-party inference providers. The `identifier`
55
58
  # for an integration secret
56
- # [/v2/integration_secrets](https://developers.telnyx.com/api/secrets-manager/integration-secrets/create-integration-secret)
59
+ # [/v2/integration_secrets](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
57
60
  # that refers to your LLM provider's API key. Warning: Free plans are unlikely to
58
61
  # work with this integration.
59
62
  #
@@ -67,7 +70,7 @@ module Telnyx
67
70
 
68
71
  # @!attribute model
69
72
  # ID of the model to use. You can use the
70
- # [Get models API](https://developers.telnyx.com/api/inference/inference-embedding/get-models-public-models-get)
73
+ # [Get models API](https://developers.telnyx.com/api-reference/chat/get-available-models)
71
74
  # to see all of your available models,
72
75
  #
73
76
  # @return [String, nil]
@@ -92,7 +95,7 @@ module Telnyx
92
95
  # The tools that the assistant can use. These may be templated with
93
96
  # [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
94
97
  #
95
- # @return [Array<Telnyx::Models::AI::WebhookTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::TransferTool, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>, nil]
98
+ # @return [Array<Telnyx::Models::AI::AssistantTool::Webhook, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>, nil]
96
99
  optional :tools, -> { Telnyx::Internal::Type::ArrayOf[union: Telnyx::AI::AssistantTool] }
97
100
 
98
101
  # @!attribute transcription
@@ -105,7 +108,13 @@ module Telnyx
105
108
  # @return [Telnyx::Models::AI::VoiceSettings, nil]
106
109
  optional :voice_settings, -> { Telnyx::AI::VoiceSettings }
107
110
 
108
- # @!method initialize(description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, privacy_settings: nil, telephony_settings: nil, tools: nil, transcription: nil, voice_settings: nil)
111
+ # @!attribute widget_settings
112
+ # Configuration settings for the assistant's web widget.
113
+ #
114
+ # @return [Telnyx::Models::AI::WidgetSettings, nil]
115
+ optional :widget_settings, -> { Telnyx::AI::WidgetSettings }
116
+
117
+ # @!method initialize(description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, privacy_settings: nil, telephony_settings: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil)
109
118
  # Some parameter documentations has been truncated, see
110
119
  # {Telnyx::Models::AI::Assistants::UpdateAssistant} for more details.
111
120
  #
@@ -135,11 +144,13 @@ module Telnyx
135
144
  #
136
145
  # @param telephony_settings [Telnyx::Models::AI::TelephonySettings]
137
146
  #
138
- # @param tools [Array<Telnyx::Models::AI::WebhookTool, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::TransferTool, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>] The tools that the assistant can use. These may be templated with [dynamic varia
147
+ # @param tools [Array<Telnyx::Models::AI::AssistantTool::Webhook, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage>] The tools that the assistant can use. These may be templated with [dynamic varia
139
148
  #
140
149
  # @param transcription [Telnyx::Models::AI::TranscriptionSettings]
141
150
  #
142
151
  # @param voice_settings [Telnyx::Models::AI::VoiceSettings]
152
+ #
153
+ # @param widget_settings [Telnyx::Models::AI::WidgetSettings] Configuration settings for the assistant's web widget.
143
154
  end
144
155
  end
145
156
 
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module AI
6
+ class AudioVisualizerConfig < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute color
8
+ # The color theme for the audio visualizer.
9
+ #
10
+ # @return [Symbol, Telnyx::Models::AI::AudioVisualizerConfig::Color, nil]
11
+ optional :color, enum: -> { Telnyx::AI::AudioVisualizerConfig::Color }
12
+
13
+ # @!attribute preset
14
+ # The preset style for the audio visualizer.
15
+ #
16
+ # @return [String, nil]
17
+ optional :preset, String
18
+
19
+ # @!method initialize(color: nil, preset: nil)
20
+ # @param color [Symbol, Telnyx::Models::AI::AudioVisualizerConfig::Color] The color theme for the audio visualizer.
21
+ #
22
+ # @param preset [String] The preset style for the audio visualizer.
23
+
24
+ # The color theme for the audio visualizer.
25
+ #
26
+ # @see Telnyx::Models::AI::AudioVisualizerConfig#color
27
+ module Color
28
+ extend Telnyx::Internal::Type::Enum
29
+
30
+ VERDANT = :verdant
31
+ TWILIGHT = :twilight
32
+ BLOOM = :bloom
33
+ MYSTIC = :mystic
34
+ FLARE = :flare
35
+ GLACIER = :glacier
36
+
37
+ # @!method self.values
38
+ # @return [Array<Symbol>]
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -5,6 +5,9 @@ module Telnyx
5
5
  module AI
6
6
  class BucketIDs < Telnyx::Internal::Type::BaseModel
7
7
  # @!attribute bucket_ids
8
+ # List of
9
+ # [embedded storage buckets](https://developers.telnyx.com/api-reference/embeddings/embed-documents)
10
+ # to use for retrieval-augmented generation.
8
11
  #
9
12
  # @return [Array<String>]
10
13
  required :bucket_ids, Telnyx::Internal::Type::ArrayOf[String]
@@ -16,7 +19,10 @@ module Telnyx
16
19
  optional :max_num_results, Integer
17
20
 
18
21
  # @!method initialize(bucket_ids:, max_num_results: nil)
19
- # @param bucket_ids [Array<String>]
22
+ # Some parameter documentations has been truncated, see
23
+ # {Telnyx::Models::AI::BucketIDs} for more details.
24
+ #
25
+ # @param bucket_ids [Array<String>] List of [embedded storage buckets](https://developers.telnyx.com/api-reference/e
20
26
  #
21
27
  # @param max_num_results [Integer] The maximum number of results to retrieve as context for the language model.
22
28
  end