telnyx 5.0.0 → 5.1.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 (241) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -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 +187 -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 +187 -6
  11. data/lib/telnyx/models/ai/assistants/update_assistant.rb +189 -6
  12. data/lib/telnyx/models/ai/bucket_ids.rb +7 -1
  13. data/lib/telnyx/models/ai/chat_create_completion_params.rb +4 -4
  14. data/lib/telnyx/models/ai/inference_embedding.rb +187 -6
  15. data/lib/telnyx/models/ai/messaging_settings.rb +10 -1
  16. data/lib/telnyx/models/ai/retrieval_tool.rb +3 -3
  17. data/lib/telnyx/models/ai/telephony_settings.rb +142 -1
  18. data/lib/telnyx/models/ai/transfer_tool.rb +46 -3
  19. data/lib/telnyx/models/ai/voice_settings.rb +1 -1
  20. data/lib/telnyx/models/ai/webhook_tool.rb +256 -3
  21. data/lib/telnyx/models/call_control_application_list_params.rb +16 -18
  22. data/lib/telnyx/models/call_event_list_params.rb +16 -18
  23. data/lib/telnyx/models/calls/action_add_ai_assistant_messages_params.rb +289 -0
  24. data/lib/telnyx/models/calls/action_add_ai_assistant_messages_response.rb +18 -0
  25. data/lib/telnyx/models/calls/action_start_noise_suppression_params.rb +7 -4
  26. data/lib/telnyx/models/conference_list_params.rb +16 -18
  27. data/lib/telnyx/models/conference_list_participants_params.rb +16 -18
  28. data/lib/telnyx/models/connection_list_active_calls_params.rb +16 -18
  29. data/lib/telnyx/models/fax_create_params.rb +10 -1
  30. data/lib/telnyx/models/messaging_10dlc/brand_retrieve_sms_otp_status_params.rb +1 -9
  31. data/lib/telnyx/models/messaging_profile.rb +11 -1
  32. data/lib/telnyx/models/messaging_profile_create_params.rb +11 -1
  33. data/lib/telnyx/models/messaging_profile_update_params.rb +11 -1
  34. data/lib/telnyx/models/messaging_tollfree/verification/tf_verification_request.rb +14 -1
  35. data/lib/telnyx/models/messaging_tollfree/verification/verification_request_egress.rb +17 -1
  36. data/lib/telnyx/models/messaging_tollfree/verification/verification_request_status.rb +17 -1
  37. data/lib/telnyx/models/organizations/user_get_groups_report_params.rb +32 -0
  38. data/lib/telnyx/models/organizations/user_get_groups_report_response.rb +132 -0
  39. data/lib/telnyx/models/organizations/user_list_params.rb +73 -0
  40. data/lib/telnyx/models/organizations/user_list_response.rb +118 -0
  41. data/lib/telnyx/models/organizations/user_retrieve_params.rb +29 -0
  42. data/lib/telnyx/models/organizations/user_retrieve_response.rb +129 -0
  43. data/lib/telnyx/models/organizations/users/action_remove_params.rb +18 -0
  44. data/lib/telnyx/models/organizations/users/action_remove_response.rb +133 -0
  45. data/lib/telnyx/models/private_wireless_gateway_status.rb +3 -2
  46. data/lib/telnyx/models/queues/call_list_params.rb +16 -18
  47. data/lib/telnyx/models/sim_card_list_params.rb +11 -3
  48. data/lib/telnyx/models/texml/accounts/queue_list_params.rb +64 -0
  49. data/lib/telnyx/models/texml/accounts/queue_list_response.rb +155 -0
  50. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +1 -7
  51. data/lib/telnyx/models/unwrap_webhook_event.rb +1 -7
  52. data/lib/telnyx/models.rb +2 -6
  53. data/lib/telnyx/resources/ai/assistants/tools.rb +2 -2
  54. data/lib/telnyx/resources/ai/assistants/versions.rb +18 -16
  55. data/lib/telnyx/resources/ai/assistants.rb +15 -9
  56. data/lib/telnyx/resources/ai/clusters.rb +1 -1
  57. data/lib/telnyx/resources/ai/embeddings.rb +1 -1
  58. data/lib/telnyx/resources/bundle_pricing/user_bundles.rb +1 -1
  59. data/lib/telnyx/resources/call_control_applications.rb +8 -4
  60. data/lib/telnyx/resources/call_events.rb +8 -4
  61. data/lib/telnyx/resources/calls/actions.rb +31 -0
  62. data/lib/telnyx/resources/conferences.rb +16 -8
  63. data/lib/telnyx/resources/connections.rb +8 -4
  64. data/lib/telnyx/resources/faxes.rb +3 -1
  65. data/lib/telnyx/resources/messages.rb +1 -1
  66. data/lib/telnyx/resources/messaging_10dlc/brand.rb +10 -14
  67. data/lib/telnyx/resources/messaging_profiles/autoresp_configs.rb +6 -6
  68. data/lib/telnyx/resources/messaging_profiles.rb +6 -2
  69. data/lib/telnyx/resources/messaging_tollfree/verification/requests.rb +6 -2
  70. data/lib/telnyx/resources/operator_connect/actions.rb +1 -1
  71. data/lib/telnyx/resources/organizations/users/actions.rb +38 -0
  72. data/lib/telnyx/resources/organizations/users.rb +114 -0
  73. data/lib/telnyx/resources/organizations.rb +18 -0
  74. data/lib/telnyx/resources/phone_numbers/jobs.rb +1 -1
  75. data/lib/telnyx/resources/queues/calls.rb +8 -4
  76. data/lib/telnyx/resources/sim_cards/actions.rb +6 -6
  77. data/lib/telnyx/resources/texml/accounts/calls/recordings.rb +1 -1
  78. data/lib/telnyx/resources/texml/accounts/queues.rb +41 -0
  79. data/lib/telnyx/resources/usage_reports.rb +2 -2
  80. data/lib/telnyx/resources/webhooks.rb +2 -2
  81. data/lib/telnyx/version.rb +1 -1
  82. data/lib/telnyx.rb +15 -69
  83. data/rbi/telnyx/client.rbi +3 -0
  84. data/rbi/telnyx/models/ai/assistant.rbi +91 -5
  85. data/rbi/telnyx/models/ai/assistant_create_params.rbi +449 -14
  86. data/rbi/telnyx/models/ai/assistant_imports_params.rbi +13 -0
  87. data/rbi/telnyx/models/ai/assistant_tool.rbi +910 -2
  88. data/rbi/telnyx/models/ai/assistant_update_params.rbi +449 -14
  89. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +454 -17
  90. data/rbi/telnyx/models/ai/bucket_ids.rbi +6 -0
  91. data/rbi/telnyx/models/ai/chat_create_completion_params.rbi +6 -13
  92. data/rbi/telnyx/models/ai/inference_embedding.rbi +447 -13
  93. data/rbi/telnyx/models/ai/messaging_settings.rbi +13 -0
  94. data/rbi/telnyx/models/ai/retrieval_tool.rbi +4 -8
  95. data/rbi/telnyx/models/ai/telephony_settings.rbi +347 -3
  96. data/rbi/telnyx/models/ai/transfer_tool.rbi +87 -6
  97. data/rbi/telnyx/models/ai/voice_settings.rbi +2 -2
  98. data/rbi/telnyx/models/ai/webhook_tool.rbi +584 -8
  99. data/rbi/telnyx/models/call_control_application_list_params.rbi +23 -35
  100. data/rbi/telnyx/models/call_event_list_params.rbi +23 -35
  101. data/rbi/telnyx/models/calls/action_add_ai_assistant_messages_params.rbi +583 -0
  102. data/rbi/telnyx/models/calls/action_add_ai_assistant_messages_response.rbi +39 -0
  103. data/rbi/telnyx/models/calls/action_start_noise_suppression_params.rbi +14 -6
  104. data/rbi/telnyx/models/conference_list_params.rbi +23 -35
  105. data/rbi/telnyx/models/conference_list_participants_params.rbi +23 -35
  106. data/rbi/telnyx/models/connection_list_active_calls_params.rbi +23 -35
  107. data/rbi/telnyx/models/fax_create_params.rbi +13 -0
  108. data/rbi/telnyx/models/messaging_10dlc/brand_retrieve_sms_otp_status_params.rbi +5 -21
  109. data/rbi/telnyx/models/messaging_profile.rbi +15 -0
  110. data/rbi/telnyx/models/messaging_profile_create_params.rbi +15 -0
  111. data/rbi/telnyx/models/messaging_profile_update_params.rbi +15 -0
  112. data/rbi/telnyx/models/messaging_tollfree/verification/tf_verification_request.rbi +12 -0
  113. data/rbi/telnyx/models/messaging_tollfree/verification/verification_request_egress.rbi +10 -0
  114. data/rbi/telnyx/models/messaging_tollfree/verification/verification_request_status.rbi +10 -0
  115. data/rbi/telnyx/models/organizations/user_get_groups_report_params.rbi +93 -0
  116. data/rbi/telnyx/models/organizations/user_get_groups_report_response.rbi +253 -0
  117. data/rbi/telnyx/models/organizations/user_list_params.rbi +152 -0
  118. data/rbi/telnyx/models/organizations/user_list_response.rbi +231 -0
  119. data/rbi/telnyx/models/organizations/user_retrieve_params.rbi +55 -0
  120. data/rbi/telnyx/models/organizations/user_retrieve_response.rbi +275 -0
  121. data/rbi/telnyx/models/organizations/users/action_remove_params.rbi +34 -0
  122. data/rbi/telnyx/models/organizations/users/action_remove_response.rbi +282 -0
  123. data/rbi/telnyx/models/private_wireless_gateway_status.rbi +4 -2
  124. data/rbi/telnyx/models/queues/call_list_params.rbi +23 -35
  125. data/rbi/telnyx/models/sim_card_list_params.rbi +14 -3
  126. data/rbi/telnyx/models/texml/accounts/queue_list_params.rbi +103 -0
  127. data/rbi/telnyx/models/texml/accounts/queue_list_response.rbi +269 -0
  128. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +0 -3
  129. data/rbi/telnyx/models/unwrap_webhook_event.rbi +0 -3
  130. data/rbi/telnyx/models.rbi +2 -6
  131. data/rbi/telnyx/resources/ai/assistants/tools.rbi +2 -2
  132. data/rbi/telnyx/resources/ai/assistants/versions.rbi +26 -19
  133. data/rbi/telnyx/resources/ai/assistants.rbi +32 -14
  134. data/rbi/telnyx/resources/ai/chat.rbi +1 -1
  135. data/rbi/telnyx/resources/ai/clusters.rbi +1 -1
  136. data/rbi/telnyx/resources/ai/embeddings.rbi +1 -1
  137. data/rbi/telnyx/resources/bundle_pricing/user_bundles.rbi +1 -1
  138. data/rbi/telnyx/resources/call_control_applications.rbi +7 -1
  139. data/rbi/telnyx/resources/call_events.rbi +5 -1
  140. data/rbi/telnyx/resources/calls/actions.rbi +37 -2
  141. data/rbi/telnyx/resources/conferences.rbi +10 -2
  142. data/rbi/telnyx/resources/connections.rbi +5 -1
  143. data/rbi/telnyx/resources/faxes.rbi +4 -0
  144. data/rbi/telnyx/resources/messages.rbi +1 -1
  145. data/rbi/telnyx/resources/messaging_10dlc/brand.rbi +8 -11
  146. data/rbi/telnyx/resources/messaging_profiles/autoresp_configs.rbi +6 -6
  147. data/rbi/telnyx/resources/messaging_profiles.rbi +10 -0
  148. data/rbi/telnyx/resources/messaging_tollfree/verification/requests.rbi +10 -0
  149. data/rbi/telnyx/resources/operator_connect/actions.rbi +1 -1
  150. data/rbi/telnyx/resources/organizations/users/actions.rbi +32 -0
  151. data/rbi/telnyx/resources/organizations/users.rbi +88 -0
  152. data/rbi/telnyx/resources/organizations.rbi +15 -0
  153. data/rbi/telnyx/resources/phone_numbers/jobs.rbi +1 -1
  154. data/rbi/telnyx/resources/queues/calls.rbi +5 -1
  155. data/rbi/telnyx/resources/sim_cards/actions.rbi +6 -6
  156. data/rbi/telnyx/resources/sim_cards.rbi +1 -1
  157. data/rbi/telnyx/resources/texml/accounts/calls/recordings.rbi +1 -1
  158. data/rbi/telnyx/resources/texml/accounts/queues.rbi +32 -0
  159. data/rbi/telnyx/resources/usage_reports.rbi +2 -2
  160. data/rbi/telnyx/resources/webhooks.rbi +0 -6
  161. data/sig/telnyx/client.rbs +2 -0
  162. data/sig/telnyx/models/ai/assistant.rbs +44 -1
  163. data/sig/telnyx/models/ai/assistant_create_params.rbs +176 -1
  164. data/sig/telnyx/models/ai/assistant_imports_params.rbs +8 -1
  165. data/sig/telnyx/models/ai/assistant_tool.rbs +367 -2
  166. data/sig/telnyx/models/ai/assistant_update_params.rbs +176 -1
  167. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +178 -3
  168. data/sig/telnyx/models/ai/chat_create_completion_params.rbs +4 -7
  169. data/sig/telnyx/models/ai/inference_embedding.rbs +178 -3
  170. data/sig/telnyx/models/ai/messaging_settings.rbs +7 -0
  171. data/sig/telnyx/models/ai/retrieval_tool.rbs +4 -4
  172. data/sig/telnyx/models/ai/telephony_settings.rbs +133 -4
  173. data/sig/telnyx/models/ai/transfer_tool.rbs +42 -4
  174. data/sig/telnyx/models/ai/webhook_tool.rbs +241 -4
  175. data/sig/telnyx/models/call_control_application_list_params.rbs +17 -26
  176. data/sig/telnyx/models/call_event_list_params.rbs +18 -27
  177. data/sig/telnyx/models/calls/action_add_ai_assistant_messages_params.rbs +240 -0
  178. data/sig/telnyx/models/calls/action_add_ai_assistant_messages_response.rbs +20 -0
  179. data/sig/telnyx/models/calls/action_start_noise_suppression_params.rbs +2 -1
  180. data/sig/telnyx/models/conference_list_params.rbs +17 -26
  181. data/sig/telnyx/models/conference_list_participants_params.rbs +17 -26
  182. data/sig/telnyx/models/connection_list_active_calls_params.rbs +20 -27
  183. data/sig/telnyx/models/fax_create_params.rbs +7 -0
  184. data/sig/telnyx/models/messaging_10dlc/brand_retrieve_sms_otp_status_params.rbs +3 -13
  185. data/sig/telnyx/models/messaging_profile.rbs +7 -0
  186. data/sig/telnyx/models/messaging_profile_create_params.rbs +7 -0
  187. data/sig/telnyx/models/messaging_profile_update_params.rbs +7 -0
  188. data/sig/telnyx/models/messaging_tollfree/verification/tf_verification_request.rbs +5 -0
  189. data/sig/telnyx/models/messaging_tollfree/verification/verification_request_egress.rbs +5 -0
  190. data/sig/telnyx/models/messaging_tollfree/verification/verification_request_status.rbs +5 -0
  191. data/sig/telnyx/models/organizations/user_get_groups_report_params.rbs +43 -0
  192. data/sig/telnyx/models/organizations/user_get_groups_report_response.rbs +104 -0
  193. data/sig/telnyx/models/organizations/user_list_params.rbs +72 -0
  194. data/sig/telnyx/models/organizations/user_list_response.rbs +99 -0
  195. data/sig/telnyx/models/organizations/user_retrieve_params.rbs +27 -0
  196. data/sig/telnyx/models/organizations/user_retrieve_response.rbs +118 -0
  197. data/sig/telnyx/models/organizations/users/action_remove_params.rbs +19 -0
  198. data/sig/telnyx/models/organizations/users/action_remove_response.rbs +122 -0
  199. data/sig/telnyx/models/queues/call_list_params.rbs +20 -27
  200. data/sig/telnyx/models/sim_card_list_params.rbs +7 -0
  201. data/sig/telnyx/models/texml/accounts/queue_list_params.rbs +60 -0
  202. data/sig/telnyx/models/texml/accounts/queue_list_response.rbs +152 -0
  203. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +0 -3
  204. data/sig/telnyx/models/unwrap_webhook_event.rbs +0 -3
  205. data/sig/telnyx/models.rbs +2 -6
  206. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  207. data/sig/telnyx/resources/ai/assistants.rbs +3 -0
  208. data/sig/telnyx/resources/call_control_applications.rbs +3 -1
  209. data/sig/telnyx/resources/call_events.rbs +3 -1
  210. data/sig/telnyx/resources/calls/actions.rbs +8 -0
  211. data/sig/telnyx/resources/conferences.rbs +6 -2
  212. data/sig/telnyx/resources/connections.rbs +3 -1
  213. data/sig/telnyx/resources/faxes.rbs +1 -0
  214. data/sig/telnyx/resources/messaging_10dlc/brand.rbs +1 -2
  215. data/sig/telnyx/resources/messaging_profiles.rbs +2 -0
  216. data/sig/telnyx/resources/messaging_tollfree/verification/requests.rbs +2 -0
  217. data/sig/telnyx/resources/organizations/users/actions.rbs +16 -0
  218. data/sig/telnyx/resources/organizations/users.rbs +31 -0
  219. data/sig/telnyx/resources/organizations.rbs +9 -0
  220. data/sig/telnyx/resources/queues/calls.rbs +3 -1
  221. data/sig/telnyx/resources/texml/accounts/queues.rbs +10 -0
  222. data/sig/telnyx/resources/webhooks.rbs +0 -6
  223. metadata +47 -20
  224. data/lib/telnyx/models/ai/inference_embedding_bucket_ids.rb +0 -31
  225. data/lib/telnyx/models/ai/inference_embedding_transfer_tool_params.rb +0 -93
  226. data/lib/telnyx/models/ai/inference_embedding_webhook_tool_params.rb +0 -265
  227. data/lib/telnyx/models/streaming_failed_webhook_event.rb +0 -15
  228. data/lib/telnyx/models/streaming_started_webhook_event.rb +0 -15
  229. data/lib/telnyx/models/streaming_stopped_webhook_event.rb +0 -15
  230. data/rbi/telnyx/models/ai/inference_embedding_bucket_ids.rbi +0 -54
  231. data/rbi/telnyx/models/ai/inference_embedding_transfer_tool_params.rbi +0 -185
  232. data/rbi/telnyx/models/ai/inference_embedding_webhook_tool_params.rbi +0 -621
  233. data/rbi/telnyx/models/streaming_failed_webhook_event.rbi +0 -30
  234. data/rbi/telnyx/models/streaming_started_webhook_event.rbi +0 -30
  235. data/rbi/telnyx/models/streaming_stopped_webhook_event.rbi +0 -30
  236. data/sig/telnyx/models/ai/inference_embedding_bucket_ids.rbs +0 -26
  237. data/sig/telnyx/models/ai/inference_embedding_transfer_tool_params.rbs +0 -75
  238. data/sig/telnyx/models/ai/inference_embedding_webhook_tool_params.rbs +0 -242
  239. data/sig/telnyx/models/streaming_failed_webhook_event.rbs +0 -15
  240. data/sig/telnyx/models/streaming_started_webhook_event.rbs +0 -16
  241. data/sig/telnyx/models/streaming_stopped_webhook_event.rbs +0 -16
@@ -0,0 +1,583 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Calls
6
+ class ActionAddAIAssistantMessagesParams < Telnyx::Internal::Type::BaseModel
7
+ extend Telnyx::Internal::Type::RequestParameters::Converter
8
+ include Telnyx::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams,
14
+ Telnyx::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # Use this field to add state to every subsequent webhook. It must be a valid
19
+ # Base-64 encoded string.
20
+ sig { returns(T.nilable(String)) }
21
+ attr_reader :client_state
22
+
23
+ sig { params(client_state: String).void }
24
+ attr_writer :client_state
25
+
26
+ # Use this field to avoid duplicate commands. Telnyx will ignore any command with
27
+ # the same `command_id` for the same `call_control_id`.
28
+ sig { returns(T.nilable(String)) }
29
+ attr_reader :command_id
30
+
31
+ sig { params(command_id: String).void }
32
+ attr_writer :command_id
33
+
34
+ # The messages to add to the conversation.
35
+ sig do
36
+ returns(
37
+ T.nilable(
38
+ T::Array[
39
+ T.any(
40
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::User,
41
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant,
42
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Tool,
43
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::System,
44
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Developer
45
+ )
46
+ ]
47
+ )
48
+ )
49
+ end
50
+ attr_reader :messages
51
+
52
+ sig do
53
+ params(
54
+ messages:
55
+ T::Array[
56
+ T.any(
57
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::User::OrHash,
58
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::OrHash,
59
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Tool::OrHash,
60
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::System::OrHash,
61
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Developer::OrHash
62
+ )
63
+ ]
64
+ ).void
65
+ end
66
+ attr_writer :messages
67
+
68
+ sig do
69
+ params(
70
+ client_state: String,
71
+ command_id: String,
72
+ messages:
73
+ T::Array[
74
+ T.any(
75
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::User::OrHash,
76
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::OrHash,
77
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Tool::OrHash,
78
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::System::OrHash,
79
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Developer::OrHash
80
+ )
81
+ ],
82
+ request_options: Telnyx::RequestOptions::OrHash
83
+ ).returns(T.attached_class)
84
+ end
85
+ def self.new(
86
+ # Use this field to add state to every subsequent webhook. It must be a valid
87
+ # Base-64 encoded string.
88
+ client_state: nil,
89
+ # Use this field to avoid duplicate commands. Telnyx will ignore any command with
90
+ # the same `command_id` for the same `call_control_id`.
91
+ command_id: nil,
92
+ # The messages to add to the conversation.
93
+ messages: nil,
94
+ request_options: {}
95
+ )
96
+ end
97
+
98
+ sig do
99
+ override.returns(
100
+ {
101
+ client_state: String,
102
+ command_id: String,
103
+ messages:
104
+ T::Array[
105
+ T.any(
106
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::User,
107
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant,
108
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Tool,
109
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::System,
110
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Developer
111
+ )
112
+ ],
113
+ request_options: Telnyx::RequestOptions
114
+ }
115
+ )
116
+ end
117
+ def to_hash
118
+ end
119
+
120
+ # Messages sent by an end user
121
+ module Message
122
+ extend Telnyx::Internal::Type::Union
123
+
124
+ Variants =
125
+ T.type_alias do
126
+ T.any(
127
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::User,
128
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant,
129
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Tool,
130
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::System,
131
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Developer
132
+ )
133
+ end
134
+
135
+ class User < Telnyx::Internal::Type::BaseModel
136
+ OrHash =
137
+ T.type_alias do
138
+ T.any(
139
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::User,
140
+ Telnyx::Internal::AnyHash
141
+ )
142
+ end
143
+
144
+ # The contents of the user message.
145
+ sig { returns(String) }
146
+ attr_accessor :content
147
+
148
+ # The role of the messages author, in this case `user`.
149
+ sig { returns(Symbol) }
150
+ attr_accessor :role
151
+
152
+ # Metadata to add to the message
153
+ sig { returns(T.nilable(T.anything)) }
154
+ attr_reader :metadata
155
+
156
+ sig { params(metadata: T.anything).void }
157
+ attr_writer :metadata
158
+
159
+ # Messages sent by an end user
160
+ sig do
161
+ params(
162
+ content: String,
163
+ metadata: T.anything,
164
+ role: Symbol
165
+ ).returns(T.attached_class)
166
+ end
167
+ def self.new(
168
+ # The contents of the user message.
169
+ content:,
170
+ # Metadata to add to the message
171
+ metadata: nil,
172
+ # The role of the messages author, in this case `user`.
173
+ role: :user
174
+ )
175
+ end
176
+
177
+ sig do
178
+ override.returns(
179
+ { content: String, role: Symbol, metadata: T.anything }
180
+ )
181
+ end
182
+ def to_hash
183
+ end
184
+ end
185
+
186
+ class Assistant < Telnyx::Internal::Type::BaseModel
187
+ OrHash =
188
+ T.type_alias do
189
+ T.any(
190
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant,
191
+ Telnyx::Internal::AnyHash
192
+ )
193
+ end
194
+
195
+ # The role of the messages author, in this case `assistant`.
196
+ sig { returns(Symbol) }
197
+ attr_accessor :role
198
+
199
+ # The contents of the assistant message. Required unless `tool_calls`
200
+ sig { returns(T.nilable(String)) }
201
+ attr_reader :content
202
+
203
+ sig { params(content: String).void }
204
+ attr_writer :content
205
+
206
+ # Metadata to add to the message
207
+ sig { returns(T.nilable(T.anything)) }
208
+ attr_reader :metadata
209
+
210
+ sig { params(metadata: T.anything).void }
211
+ attr_writer :metadata
212
+
213
+ # The tool calls generated by the model, such as function calls.
214
+ sig do
215
+ returns(
216
+ T.nilable(
217
+ T::Array[
218
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall
219
+ ]
220
+ )
221
+ )
222
+ end
223
+ attr_reader :tool_calls
224
+
225
+ sig do
226
+ params(
227
+ tool_calls:
228
+ T::Array[
229
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::OrHash
230
+ ]
231
+ ).void
232
+ end
233
+ attr_writer :tool_calls
234
+
235
+ # Messages sent by the model in response to user messages.
236
+ sig do
237
+ params(
238
+ content: String,
239
+ metadata: T.anything,
240
+ tool_calls:
241
+ T::Array[
242
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::OrHash
243
+ ],
244
+ role: Symbol
245
+ ).returns(T.attached_class)
246
+ end
247
+ def self.new(
248
+ # The contents of the assistant message. Required unless `tool_calls`
249
+ content: nil,
250
+ # Metadata to add to the message
251
+ metadata: nil,
252
+ # The tool calls generated by the model, such as function calls.
253
+ tool_calls: nil,
254
+ # The role of the messages author, in this case `assistant`.
255
+ role: :assistant
256
+ )
257
+ end
258
+
259
+ sig do
260
+ override.returns(
261
+ {
262
+ role: Symbol,
263
+ content: String,
264
+ metadata: T.anything,
265
+ tool_calls:
266
+ T::Array[
267
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall
268
+ ]
269
+ }
270
+ )
271
+ end
272
+ def to_hash
273
+ end
274
+
275
+ class ToolCall < Telnyx::Internal::Type::BaseModel
276
+ OrHash =
277
+ T.type_alias do
278
+ T.any(
279
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall,
280
+ Telnyx::Internal::AnyHash
281
+ )
282
+ end
283
+
284
+ # The ID of the tool call.
285
+ sig { returns(String) }
286
+ attr_accessor :id
287
+
288
+ # The function that the model called.
289
+ sig do
290
+ returns(
291
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Function
292
+ )
293
+ end
294
+ attr_reader :function
295
+
296
+ sig do
297
+ params(
298
+ function:
299
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Function::OrHash
300
+ ).void
301
+ end
302
+ attr_writer :function
303
+
304
+ # The type of the tool. Currently, only `function` is supported.
305
+ sig do
306
+ returns(
307
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Type::OrSymbol
308
+ )
309
+ end
310
+ attr_accessor :type
311
+
312
+ # A call to a function tool created by the model.
313
+ sig do
314
+ params(
315
+ id: String,
316
+ function:
317
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Function::OrHash,
318
+ type:
319
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Type::OrSymbol
320
+ ).returns(T.attached_class)
321
+ end
322
+ def self.new(
323
+ # The ID of the tool call.
324
+ id:,
325
+ # The function that the model called.
326
+ function:,
327
+ # The type of the tool. Currently, only `function` is supported.
328
+ type:
329
+ )
330
+ end
331
+
332
+ sig do
333
+ override.returns(
334
+ {
335
+ id: String,
336
+ function:
337
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Function,
338
+ type:
339
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Type::OrSymbol
340
+ }
341
+ )
342
+ end
343
+ def to_hash
344
+ end
345
+
346
+ class Function < Telnyx::Internal::Type::BaseModel
347
+ OrHash =
348
+ T.type_alias do
349
+ T.any(
350
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Function,
351
+ Telnyx::Internal::AnyHash
352
+ )
353
+ end
354
+
355
+ # The name of the function to call.
356
+ sig { returns(String) }
357
+ attr_accessor :name
358
+
359
+ # The function that the model called.
360
+ sig { params(name: String).returns(T.attached_class) }
361
+ def self.new(
362
+ # The name of the function to call.
363
+ name:
364
+ )
365
+ end
366
+
367
+ sig { override.returns({ name: String }) }
368
+ def to_hash
369
+ end
370
+ end
371
+
372
+ # The type of the tool. Currently, only `function` is supported.
373
+ module Type
374
+ extend Telnyx::Internal::Type::Enum
375
+
376
+ TaggedSymbol =
377
+ T.type_alias do
378
+ T.all(
379
+ Symbol,
380
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Type
381
+ )
382
+ end
383
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
384
+
385
+ FUNCTION =
386
+ T.let(
387
+ :function,
388
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Type::TaggedSymbol
389
+ )
390
+
391
+ sig do
392
+ override.returns(
393
+ T::Array[
394
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Assistant::ToolCall::Type::TaggedSymbol
395
+ ]
396
+ )
397
+ end
398
+ def self.values
399
+ end
400
+ end
401
+ end
402
+ end
403
+
404
+ class Tool < Telnyx::Internal::Type::BaseModel
405
+ OrHash =
406
+ T.type_alias do
407
+ T.any(
408
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Tool,
409
+ Telnyx::Internal::AnyHash
410
+ )
411
+ end
412
+
413
+ # The contents of the tool message.
414
+ sig { returns(String) }
415
+ attr_accessor :content
416
+
417
+ # The role of the messages author, in this case `tool`.
418
+ sig { returns(Symbol) }
419
+ attr_accessor :role
420
+
421
+ # Tool call that this message is responding to.
422
+ sig { returns(String) }
423
+ attr_accessor :tool_call_id
424
+
425
+ # Metadata to add to the message
426
+ sig { returns(T.nilable(T.anything)) }
427
+ attr_reader :metadata
428
+
429
+ sig { params(metadata: T.anything).void }
430
+ attr_writer :metadata
431
+
432
+ sig do
433
+ params(
434
+ content: String,
435
+ tool_call_id: String,
436
+ metadata: T.anything,
437
+ role: Symbol
438
+ ).returns(T.attached_class)
439
+ end
440
+ def self.new(
441
+ # The contents of the tool message.
442
+ content:,
443
+ # Tool call that this message is responding to.
444
+ tool_call_id:,
445
+ # Metadata to add to the message
446
+ metadata: nil,
447
+ # The role of the messages author, in this case `tool`.
448
+ role: :tool
449
+ )
450
+ end
451
+
452
+ sig do
453
+ override.returns(
454
+ {
455
+ content: String,
456
+ role: Symbol,
457
+ tool_call_id: String,
458
+ metadata: T.anything
459
+ }
460
+ )
461
+ end
462
+ def to_hash
463
+ end
464
+ end
465
+
466
+ class System < Telnyx::Internal::Type::BaseModel
467
+ OrHash =
468
+ T.type_alias do
469
+ T.any(
470
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::System,
471
+ Telnyx::Internal::AnyHash
472
+ )
473
+ end
474
+
475
+ # The contents of the system message.
476
+ sig { returns(String) }
477
+ attr_accessor :content
478
+
479
+ # The role of the messages author, in this case `system`.
480
+ sig { returns(Symbol) }
481
+ attr_accessor :role
482
+
483
+ # Metadata to add to the message
484
+ sig { returns(T.nilable(T.anything)) }
485
+ attr_reader :metadata
486
+
487
+ sig { params(metadata: T.anything).void }
488
+ attr_writer :metadata
489
+
490
+ # Developer-provided instructions that the model should follow, regardless of
491
+ # messages sent by the user.
492
+ sig do
493
+ params(
494
+ content: String,
495
+ metadata: T.anything,
496
+ role: Symbol
497
+ ).returns(T.attached_class)
498
+ end
499
+ def self.new(
500
+ # The contents of the system message.
501
+ content:,
502
+ # Metadata to add to the message
503
+ metadata: nil,
504
+ # The role of the messages author, in this case `system`.
505
+ role: :system
506
+ )
507
+ end
508
+
509
+ sig do
510
+ override.returns(
511
+ { content: String, role: Symbol, metadata: T.anything }
512
+ )
513
+ end
514
+ def to_hash
515
+ end
516
+ end
517
+
518
+ class Developer < Telnyx::Internal::Type::BaseModel
519
+ OrHash =
520
+ T.type_alias do
521
+ T.any(
522
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Developer,
523
+ Telnyx::Internal::AnyHash
524
+ )
525
+ end
526
+
527
+ # The contents of the developer message.
528
+ sig { returns(String) }
529
+ attr_accessor :content
530
+
531
+ # The role of the messages author, in this case developer.
532
+ sig { returns(Symbol) }
533
+ attr_accessor :role
534
+
535
+ # Metadata to add to the message
536
+ sig { returns(T.nilable(T.anything)) }
537
+ attr_reader :metadata
538
+
539
+ sig { params(metadata: T.anything).void }
540
+ attr_writer :metadata
541
+
542
+ # Developer-provided instructions that the model should follow, regardless of
543
+ # messages sent by the user.
544
+ sig do
545
+ params(
546
+ content: String,
547
+ metadata: T.anything,
548
+ role: Symbol
549
+ ).returns(T.attached_class)
550
+ end
551
+ def self.new(
552
+ # The contents of the developer message.
553
+ content:,
554
+ # Metadata to add to the message
555
+ metadata: nil,
556
+ # The role of the messages author, in this case developer.
557
+ role: :developer
558
+ )
559
+ end
560
+
561
+ sig do
562
+ override.returns(
563
+ { content: String, role: Symbol, metadata: T.anything }
564
+ )
565
+ end
566
+ def to_hash
567
+ end
568
+ end
569
+
570
+ sig do
571
+ override.returns(
572
+ T::Array[
573
+ Telnyx::Calls::ActionAddAIAssistantMessagesParams::Message::Variants
574
+ ]
575
+ )
576
+ end
577
+ def self.variants
578
+ end
579
+ end
580
+ end
581
+ end
582
+ end
583
+ end
@@ -0,0 +1,39 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Calls
6
+ class ActionAddAIAssistantMessagesResponse < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Models::Calls::ActionAddAIAssistantMessagesResponse,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(T.nilable(Telnyx::Calls::CallControlCommandResult)) }
16
+ attr_reader :data
17
+
18
+ sig do
19
+ params(data: Telnyx::Calls::CallControlCommandResult::OrHash).void
20
+ end
21
+ attr_writer :data
22
+
23
+ sig do
24
+ params(data: Telnyx::Calls::CallControlCommandResult::OrHash).returns(
25
+ T.attached_class
26
+ )
27
+ end
28
+ def self.new(data: nil)
29
+ end
30
+
31
+ sig do
32
+ override.returns({ data: Telnyx::Calls::CallControlCommandResult })
33
+ end
34
+ def to_hash
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -49,8 +49,9 @@ module Telnyx
49
49
  end
50
50
  attr_writer :direction
51
51
 
52
- # The engine to use for noise suppression. For backward compatibility, engines A
53
- # and B are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
52
+ # The engine to use for noise suppression. For backward compatibility, engines A,
53
+ # B, and C are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
54
+ # C - Krisp
54
55
  sig do
55
56
  returns(
56
57
  T.nilable(
@@ -108,8 +109,9 @@ module Telnyx
108
109
  command_id: nil,
109
110
  # The direction of the audio stream to be noise suppressed.
110
111
  direction: nil,
111
- # The engine to use for noise suppression. For backward compatibility, engines A
112
- # and B are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
112
+ # The engine to use for noise suppression. For backward compatibility, engines A,
113
+ # B, and C are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
114
+ # C - Krisp
113
115
  noise_suppression_engine: nil,
114
116
  # Configuration parameters for noise suppression engines.
115
117
  noise_suppression_engine_config: nil,
@@ -175,8 +177,9 @@ module Telnyx
175
177
  end
176
178
  end
177
179
 
178
- # The engine to use for noise suppression. For backward compatibility, engines A
179
- # and B are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
180
+ # The engine to use for noise suppression. For backward compatibility, engines A,
181
+ # B, and C are also supported, but are deprecated: A - Denoiser B - DeepFilterNet
182
+ # C - Krisp
180
183
  module NoiseSuppressionEngine
181
184
  extend Telnyx::Internal::Type::Enum
182
185
 
@@ -199,6 +202,11 @@ module Telnyx
199
202
  :DeepFilterNet,
200
203
  Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngine::TaggedSymbol
201
204
  )
205
+ KRISP =
206
+ T.let(
207
+ :Krisp,
208
+ Telnyx::Calls::ActionStartNoiseSuppressionParams::NoiseSuppressionEngine::TaggedSymbol
209
+ )
202
210
 
203
211
  sig do
204
212
  override.returns(