telnyx 5.155.0 → 5.157.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 (211) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +1 -0
  5. data/lib/telnyx/internal/type/union.rb +4 -4
  6. data/lib/telnyx/models/ai/anthropic/v1_messages_params.rb +209 -0
  7. data/lib/telnyx/models/ai/anthropic/v1_messages_response.rb +12 -0
  8. data/lib/telnyx/models/ai/assistant_create_params.rb +2 -2
  9. data/lib/telnyx/models/ai/assistant_tool.rb +118 -1
  10. data/lib/telnyx/models/ai/assistant_update_params.rb +2 -2
  11. data/lib/telnyx/models/ai/assistants/update_assistant.rb +2 -2
  12. data/lib/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rb +103 -0
  13. data/lib/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rb +54 -0
  14. data/lib/telnyx/models/ai/inference_embedding.rb +6 -6
  15. data/lib/telnyx/models/ai/pay_tool_params.rb +46 -0
  16. data/lib/telnyx/models/ai/tool_create_params.rb +13 -1
  17. data/lib/telnyx/models/ai/tool_update_params.rb +13 -1
  18. data/lib/telnyx/models/ai/transcription_settings.rb +3 -3
  19. data/lib/telnyx/models/call_dial_params.rb +13 -1
  20. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +3 -0
  21. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +6 -0
  22. data/lib/telnyx/models/calls/action_speak_params.rb +6 -0
  23. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +3 -0
  24. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +3 -0
  25. data/lib/telnyx/models/calls/telnyx_voice_settings.rb +2 -1
  26. data/lib/telnyx/models/calls/transcription_config.rb +8 -4
  27. data/lib/telnyx/models/calls/transcription_engine_parakeet_config.rb +1 -1
  28. data/lib/telnyx/models/conferences/action_speak_params.rb +6 -0
  29. data/lib/telnyx/models/conversation_relay_embedded_config.rb +3 -0
  30. data/lib/telnyx/models/doc_reqs_requirement.rb +29 -4
  31. data/lib/telnyx/models/inbound_message.rb +278 -28
  32. data/lib/telnyx/models/inbound_message_webhook_event.rb +70 -3
  33. data/lib/telnyx/models/managed_account_list_params.rb +45 -3
  34. data/lib/telnyx/models/models_response.rb +0 -1
  35. data/lib/telnyx/models/phone_number_delete_response.rb +12 -1
  36. data/lib/telnyx/models/phone_number_detailed.rb +12 -1
  37. data/lib/telnyx/models/phone_number_slim_list_response.rb +12 -1
  38. data/lib/telnyx/models/requirement_list_params.rb +10 -1
  39. data/lib/telnyx/models/requirement_retrieve_params.rb +14 -1
  40. data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +1 -1
  41. data/lib/telnyx/models/storage/cloudf_create_params.rb +56 -0
  42. data/lib/telnyx/models/storage/cloudf_delete_params.rb +22 -0
  43. data/lib/telnyx/models/storage/cloudf_list_params.rb +109 -0
  44. data/lib/telnyx/models/storage/cloudf_list_response.rb +165 -0
  45. data/lib/telnyx/models/storage/cloudf_retrieve_params.rb +22 -0
  46. data/lib/telnyx/models/storage/cloudf_update_params.rb +36 -0
  47. data/lib/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rb +30 -0
  48. data/lib/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rb +129 -0
  49. data/lib/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rb +129 -0
  50. data/lib/telnyx/models/storage/cloudfs_filesystem_status.rb +28 -0
  51. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +13 -8
  52. data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +4 -4
  53. data/lib/telnyx/models/verify_profile.rb +2 -2
  54. data/lib/telnyx/models/verify_profile_create_params.rb +2 -2
  55. data/lib/telnyx/models/verify_profile_update_params.rb +2 -2
  56. data/lib/telnyx/models.rb +0 -6
  57. data/lib/telnyx/resources/ai/anthropic/v1.rb +91 -0
  58. data/lib/telnyx/resources/ai/anthropic.rb +20 -0
  59. data/lib/telnyx/resources/ai/assistants/versions.rb +1 -1
  60. data/lib/telnyx/resources/ai/assistants.rb +2 -2
  61. data/lib/telnyx/resources/ai/chat.rb +0 -81
  62. data/lib/telnyx/resources/ai/conversations/conversation_insights.rb +55 -0
  63. data/lib/telnyx/resources/ai/conversations.rb +5 -0
  64. data/lib/telnyx/resources/ai/tools.rb +8 -2
  65. data/lib/telnyx/resources/ai.rb +3 -56
  66. data/lib/telnyx/resources/calls.rb +3 -1
  67. data/lib/telnyx/resources/messages.rb +1 -32
  68. data/lib/telnyx/resources/requirements.rb +13 -3
  69. data/lib/telnyx/resources/storage/cloudfs/actions.rb +54 -0
  70. data/lib/telnyx/resources/storage/cloudfs.rb +187 -0
  71. data/lib/telnyx/resources/storage.rb +6 -0
  72. data/lib/telnyx/version.rb +1 -1
  73. data/lib/telnyx.rb +20 -7
  74. data/rbi/telnyx/client.rbi +1 -0
  75. data/rbi/telnyx/models/ai/anthropic/v1_messages_params.rbi +314 -0
  76. data/rbi/telnyx/models/ai/anthropic/v1_messages_response.rbi +15 -0
  77. data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -4
  78. data/rbi/telnyx/models/ai/assistant_tool.rbi +258 -1
  79. data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -4
  80. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -4
  81. data/rbi/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rbi +188 -0
  82. data/rbi/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rbi +94 -0
  83. data/rbi/telnyx/models/ai/inference_embedding.rbi +18 -6
  84. data/rbi/telnyx/models/ai/pay_tool_params.rbi +71 -0
  85. data/rbi/telnyx/models/ai/tool_create_params.rbi +18 -0
  86. data/rbi/telnyx/models/ai/tool_update_params.rbi +18 -0
  87. data/rbi/telnyx/models/ai/transcription_settings.rbi +5 -5
  88. data/rbi/telnyx/models/call_dial_params.rbi +19 -0
  89. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +6 -0
  90. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +12 -0
  91. data/rbi/telnyx/models/calls/action_speak_params.rbi +12 -0
  92. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +6 -0
  93. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +6 -0
  94. data/rbi/telnyx/models/calls/telnyx_voice_settings.rbi +4 -2
  95. data/rbi/telnyx/models/calls/transcription_config.rbi +15 -7
  96. data/rbi/telnyx/models/calls/transcription_engine_parakeet_config.rbi +2 -2
  97. data/rbi/telnyx/models/conferences/action_speak_params.rbi +12 -0
  98. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +6 -0
  99. data/rbi/telnyx/models/doc_reqs_requirement.rbi +38 -9
  100. data/rbi/telnyx/models/inbound_message.rbi +324 -58
  101. data/rbi/telnyx/models/inbound_message_webhook_event.rbi +173 -4
  102. data/rbi/telnyx/models/managed_account_list_params.rbi +130 -6
  103. data/rbi/telnyx/models/phone_number_delete_response.rbi +14 -0
  104. data/rbi/telnyx/models/phone_number_detailed.rbi +14 -0
  105. data/rbi/telnyx/models/phone_number_slim_list_response.rbi +14 -0
  106. data/rbi/telnyx/models/requirement_list_params.rbi +13 -0
  107. data/rbi/telnyx/models/requirement_retrieve_params.rbi +21 -2
  108. data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +2 -2
  109. data/rbi/telnyx/models/storage/cloudf_create_params.rbi +103 -0
  110. data/rbi/telnyx/models/storage/cloudf_delete_params.rbi +40 -0
  111. data/rbi/telnyx/models/storage/cloudf_list_params.rbi +232 -0
  112. data/rbi/telnyx/models/storage/cloudf_list_response.rbi +327 -0
  113. data/rbi/telnyx/models/storage/cloudf_retrieve_params.rbi +40 -0
  114. data/rbi/telnyx/models/storage/cloudf_update_params.rbi +61 -0
  115. data/rbi/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rbi +50 -0
  116. data/rbi/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rbi +229 -0
  117. data/rbi/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rbi +227 -0
  118. data/rbi/telnyx/models/storage/cloudfs_filesystem_status.rbi +57 -0
  119. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +21 -13
  120. data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +8 -8
  121. data/rbi/telnyx/models/verify_profile.rbi +2 -2
  122. data/rbi/telnyx/models/verify_profile_create_params.rbi +2 -2
  123. data/rbi/telnyx/models/verify_profile_update_params.rbi +2 -2
  124. data/rbi/telnyx/models.rbi +0 -7
  125. data/rbi/telnyx/resources/ai/anthropic/v1.rbi +106 -0
  126. data/rbi/telnyx/resources/ai/anthropic.rbi +17 -0
  127. data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -1
  128. data/rbi/telnyx/resources/ai/assistants.rbi +6 -2
  129. data/rbi/telnyx/resources/ai/chat.rbi +0 -129
  130. data/rbi/telnyx/resources/ai/conversations/conversation_insights.rbi +68 -0
  131. data/rbi/telnyx/resources/ai/conversations.rbi +6 -0
  132. data/rbi/telnyx/resources/ai/tools.rbi +8 -0
  133. data/rbi/telnyx/resources/ai.rbi +2 -32
  134. data/rbi/telnyx/resources/calls/actions.rbi +21 -0
  135. data/rbi/telnyx/resources/calls.rbi +7 -0
  136. data/rbi/telnyx/resources/conferences/actions.rbi +6 -0
  137. data/rbi/telnyx/resources/managed_accounts.rbi +1 -1
  138. data/rbi/telnyx/resources/messages.rbi +1 -28
  139. data/rbi/telnyx/resources/requirements.rbi +8 -0
  140. data/rbi/telnyx/resources/storage/cloudfs/actions.rbi +46 -0
  141. data/rbi/telnyx/resources/storage/cloudfs.rbi +152 -0
  142. data/rbi/telnyx/resources/storage.rbi +5 -0
  143. data/rbi/telnyx/resources/text_to_speech.rbi +11 -9
  144. data/sig/telnyx/models/ai/anthropic/v1_messages_params.rbs +175 -0
  145. data/sig/telnyx/models/ai/anthropic/v1_messages_response.rbs +11 -0
  146. data/sig/telnyx/models/ai/assistant_tool.rbs +108 -0
  147. data/sig/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rbs +74 -0
  148. data/sig/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rbs +34 -0
  149. data/sig/telnyx/models/ai/pay_tool_params.rbs +41 -0
  150. data/sig/telnyx/models/ai/tool_create_params.rbs +14 -0
  151. data/sig/telnyx/models/ai/tool_update_params.rbs +14 -0
  152. data/sig/telnyx/models/ai/transcription_settings.rbs +2 -2
  153. data/sig/telnyx/models/call_dial_params.rbs +7 -0
  154. data/sig/telnyx/models/calls/transcription_config.rbs +2 -2
  155. data/sig/telnyx/models/calls/transcription_engine_parakeet_config.rbs +2 -2
  156. data/sig/telnyx/models/doc_reqs_requirement.rbs +25 -8
  157. data/sig/telnyx/models/inbound_message.rbs +204 -35
  158. data/sig/telnyx/models/inbound_message_webhook_event.rbs +81 -5
  159. data/sig/telnyx/models/managed_account_list_params.rbs +47 -3
  160. data/sig/telnyx/models/phone_number_delete_response.rbs +5 -0
  161. data/sig/telnyx/models/phone_number_detailed.rbs +5 -0
  162. data/sig/telnyx/models/phone_number_slim_list_response.rbs +5 -0
  163. data/sig/telnyx/models/requirement_list_params.rbs +8 -1
  164. data/sig/telnyx/models/requirement_retrieve_params.rbs +12 -2
  165. data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +2 -2
  166. data/sig/telnyx/models/storage/cloudf_create_params.rbs +50 -0
  167. data/sig/telnyx/models/storage/cloudf_delete_params.rbs +22 -0
  168. data/sig/telnyx/models/storage/cloudf_list_params.rbs +112 -0
  169. data/sig/telnyx/models/storage/cloudf_list_response.rbs +163 -0
  170. data/sig/telnyx/models/storage/cloudf_retrieve_params.rbs +22 -0
  171. data/sig/telnyx/models/storage/cloudf_update_params.rbs +32 -0
  172. data/sig/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rbs +32 -0
  173. data/sig/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rbs +115 -0
  174. data/sig/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rbs +115 -0
  175. data/sig/telnyx/models/storage/cloudfs_filesystem_status.rbs +21 -0
  176. data/sig/telnyx/models.rbs +0 -6
  177. data/sig/telnyx/resources/ai/anthropic/v1.rbs +35 -0
  178. data/sig/telnyx/resources/ai/anthropic.rbs +11 -0
  179. data/sig/telnyx/resources/ai/chat.rbs +0 -30
  180. data/sig/telnyx/resources/ai/conversations/conversation_insights.rbs +20 -0
  181. data/sig/telnyx/resources/ai/conversations.rbs +2 -0
  182. data/sig/telnyx/resources/ai/tools.rbs +4 -0
  183. data/sig/telnyx/resources/ai.rbs +1 -8
  184. data/sig/telnyx/resources/calls.rbs +1 -0
  185. data/sig/telnyx/resources/messages.rbs +0 -10
  186. data/sig/telnyx/resources/requirements.rbs +2 -0
  187. data/sig/telnyx/resources/storage/cloudfs/actions.rbs +17 -0
  188. data/sig/telnyx/resources/storage/cloudfs.rbs +45 -0
  189. data/sig/telnyx/resources/storage.rbs +2 -0
  190. metadata +62 -23
  191. data/lib/telnyx/models/ai/chat_create_completion_params.rb +0 -16
  192. data/lib/telnyx/models/ai/chat_create_completion_response.rb +0 -10
  193. data/lib/telnyx/models/ai_create_response_deprecated_params.rb +0 -20
  194. data/lib/telnyx/models/ai_create_response_deprecated_response.rb +0 -8
  195. data/lib/telnyx/models/ai_retrieve_models_params.rb +0 -14
  196. data/lib/telnyx/models/message_send_whatsapp_params.rb +0 -71
  197. data/lib/telnyx/models/message_send_whatsapp_response.rb +0 -178
  198. data/rbi/telnyx/models/ai/chat_create_completion_params.rbi +0 -32
  199. data/rbi/telnyx/models/ai/chat_create_completion_response.rbi +0 -13
  200. data/rbi/telnyx/models/ai_create_response_deprecated_params.rbi +0 -41
  201. data/rbi/telnyx/models/ai_create_response_deprecated_response.rbi +0 -11
  202. data/rbi/telnyx/models/ai_retrieve_models_params.rbi +0 -27
  203. data/rbi/telnyx/models/message_send_whatsapp_params.rbi +0 -124
  204. data/rbi/telnyx/models/message_send_whatsapp_response.rbi +0 -379
  205. data/sig/telnyx/models/ai/chat_create_completion_params.rbs +0 -17
  206. data/sig/telnyx/models/ai/chat_create_completion_response.rbs +0 -9
  207. data/sig/telnyx/models/ai_create_response_deprecated_params.rbs +0 -24
  208. data/sig/telnyx/models/ai_create_response_deprecated_response.rbs +0 -7
  209. data/sig/telnyx/models/ai_retrieve_models_params.rbs +0 -15
  210. data/sig/telnyx/models/message_send_whatsapp_params.rbs +0 -69
  211. data/sig/telnyx/models/message_send_whatsapp_response.rbs +0 -191
@@ -0,0 +1,229 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ class CloudfsFilesystemDetailResponseWrapper < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # A CloudFS filesystem as returned by get, update, and delete. `meta_url` omits
16
+ # the credential and there is no `meta_token` field — the token is only returned
17
+ # by create and rotate-meta-token.
18
+ sig do
19
+ returns(
20
+ T.nilable(
21
+ Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper::Data
22
+ )
23
+ )
24
+ end
25
+ attr_reader :data
26
+
27
+ sig do
28
+ params(
29
+ data:
30
+ Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper::Data::OrHash
31
+ ).void
32
+ end
33
+ attr_writer :data
34
+
35
+ sig do
36
+ params(
37
+ data:
38
+ Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper::Data::OrHash
39
+ ).returns(T.attached_class)
40
+ end
41
+ def self.new(
42
+ # A CloudFS filesystem as returned by get, update, and delete. `meta_url` omits
43
+ # the credential and there is no `meta_token` field — the token is only returned
44
+ # by create and rotate-meta-token.
45
+ data: nil
46
+ )
47
+ end
48
+
49
+ sig do
50
+ override.returns(
51
+ {
52
+ data:
53
+ Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper::Data
54
+ }
55
+ )
56
+ end
57
+ def to_hash
58
+ end
59
+
60
+ class Data < Telnyx::Internal::Type::BaseModel
61
+ OrHash =
62
+ T.type_alias do
63
+ T.any(
64
+ Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper::Data,
65
+ Telnyx::Internal::AnyHash
66
+ )
67
+ end
68
+
69
+ sig { returns(T.nilable(String)) }
70
+ attr_reader :id
71
+
72
+ sig { params(id: String).void }
73
+ attr_writer :id
74
+
75
+ sig { returns(T.nilable(Time)) }
76
+ attr_reader :created_at
77
+
78
+ sig { params(created_at: Time).void }
79
+ attr_writer :created_at
80
+
81
+ # Explanation of the most recent failed lifecycle action. Present only when the
82
+ # filesystem is in a `failed` state.
83
+ sig { returns(T.nilable(String)) }
84
+ attr_reader :error
85
+
86
+ sig { params(error: String).void }
87
+ attr_writer :error
88
+
89
+ # PostgreSQL connection URL for the filesystem's metadata database, without the
90
+ # credential. Combine it with your stored metadata token, or issue a new token
91
+ # with rotate-meta-token.
92
+ sig { returns(T.nilable(String)) }
93
+ attr_reader :meta_url
94
+
95
+ sig { params(meta_url: String).void }
96
+ attr_writer :meta_url
97
+
98
+ sig { returns(T.nilable(String)) }
99
+ attr_reader :name
100
+
101
+ sig { params(name: String).void }
102
+ attr_writer :name
103
+
104
+ sig { returns(T.nilable(String)) }
105
+ attr_reader :record_type
106
+
107
+ sig { params(record_type: String).void }
108
+ attr_writer :record_type
109
+
110
+ sig { returns(T.nilable(String)) }
111
+ attr_reader :region
112
+
113
+ sig { params(region: String).void }
114
+ attr_writer :region
115
+
116
+ # Name of the bucket that stores this filesystem's data. Created during
117
+ # provisioning.
118
+ sig { returns(T.nilable(String)) }
119
+ attr_reader :s3_bucket
120
+
121
+ sig { params(s3_bucket: String).void }
122
+ attr_writer :s3_bucket
123
+
124
+ # URL of the Telnyx Cloud Storage endpoint backing this filesystem.
125
+ sig { returns(T.nilable(String)) }
126
+ attr_reader :s3_endpoint
127
+
128
+ sig { params(s3_endpoint: String).void }
129
+ attr_writer :s3_endpoint
130
+
131
+ # Lifecycle status of the filesystem. `ready` means it is fully provisioned and
132
+ # usable. `needs_format` means the storage bucket and metadata database were
133
+ # provisioned but the filesystem has not yet been formatted — run `juicefs format`
134
+ # with the filesystem's `meta_url` before mounting. `failed` means the last
135
+ # lifecycle action failed — see the filesystem's `error` message. `deleted`
136
+ # appears only in the delete response: deleted filesystems are excluded from list
137
+ # results and return a `404` on retrieval.
138
+ sig do
139
+ returns(
140
+ T.nilable(Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol)
141
+ )
142
+ end
143
+ attr_reader :status
144
+
145
+ sig do
146
+ params(
147
+ status: Telnyx::Storage::CloudfsFilesystemStatus::OrSymbol
148
+ ).void
149
+ end
150
+ attr_writer :status
151
+
152
+ sig { returns(T.nilable(Time)) }
153
+ attr_reader :updated_at
154
+
155
+ sig { params(updated_at: Time).void }
156
+ attr_writer :updated_at
157
+
158
+ # A CloudFS filesystem as returned by get, update, and delete. `meta_url` omits
159
+ # the credential and there is no `meta_token` field — the token is only returned
160
+ # by create and rotate-meta-token.
161
+ sig do
162
+ params(
163
+ id: String,
164
+ created_at: Time,
165
+ error: String,
166
+ meta_url: String,
167
+ name: String,
168
+ record_type: String,
169
+ region: String,
170
+ s3_bucket: String,
171
+ s3_endpoint: String,
172
+ status: Telnyx::Storage::CloudfsFilesystemStatus::OrSymbol,
173
+ updated_at: Time
174
+ ).returns(T.attached_class)
175
+ end
176
+ def self.new(
177
+ id: nil,
178
+ created_at: nil,
179
+ # Explanation of the most recent failed lifecycle action. Present only when the
180
+ # filesystem is in a `failed` state.
181
+ error: nil,
182
+ # PostgreSQL connection URL for the filesystem's metadata database, without the
183
+ # credential. Combine it with your stored metadata token, or issue a new token
184
+ # with rotate-meta-token.
185
+ meta_url: nil,
186
+ name: nil,
187
+ record_type: nil,
188
+ region: nil,
189
+ # Name of the bucket that stores this filesystem's data. Created during
190
+ # provisioning.
191
+ s3_bucket: nil,
192
+ # URL of the Telnyx Cloud Storage endpoint backing this filesystem.
193
+ s3_endpoint: nil,
194
+ # Lifecycle status of the filesystem. `ready` means it is fully provisioned and
195
+ # usable. `needs_format` means the storage bucket and metadata database were
196
+ # provisioned but the filesystem has not yet been formatted — run `juicefs format`
197
+ # with the filesystem's `meta_url` before mounting. `failed` means the last
198
+ # lifecycle action failed — see the filesystem's `error` message. `deleted`
199
+ # appears only in the delete response: deleted filesystems are excluded from list
200
+ # results and return a `404` on retrieval.
201
+ status: nil,
202
+ updated_at: nil
203
+ )
204
+ end
205
+
206
+ sig do
207
+ override.returns(
208
+ {
209
+ id: String,
210
+ created_at: Time,
211
+ error: String,
212
+ meta_url: String,
213
+ name: String,
214
+ record_type: String,
215
+ region: String,
216
+ s3_bucket: String,
217
+ s3_endpoint: String,
218
+ status: Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol,
219
+ updated_at: Time
220
+ }
221
+ )
222
+ end
223
+ def to_hash
224
+ end
225
+ end
226
+ end
227
+ end
228
+ end
229
+ end
@@ -0,0 +1,227 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ class CloudfsFilesystemResponseWrapper < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Storage::CloudfsFilesystemResponseWrapper,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # A CloudFS filesystem, including its metadata credential. This shape is returned
16
+ # only by create and rotate-meta-token.
17
+ sig do
18
+ returns(
19
+ T.nilable(Telnyx::Storage::CloudfsFilesystemResponseWrapper::Data)
20
+ )
21
+ end
22
+ attr_reader :data
23
+
24
+ sig do
25
+ params(
26
+ data:
27
+ Telnyx::Storage::CloudfsFilesystemResponseWrapper::Data::OrHash
28
+ ).void
29
+ end
30
+ attr_writer :data
31
+
32
+ sig do
33
+ params(
34
+ data:
35
+ Telnyx::Storage::CloudfsFilesystemResponseWrapper::Data::OrHash
36
+ ).returns(T.attached_class)
37
+ end
38
+ def self.new(
39
+ # A CloudFS filesystem, including its metadata credential. This shape is returned
40
+ # only by create and rotate-meta-token.
41
+ data: nil
42
+ )
43
+ end
44
+
45
+ sig do
46
+ override.returns(
47
+ { data: Telnyx::Storage::CloudfsFilesystemResponseWrapper::Data }
48
+ )
49
+ end
50
+ def to_hash
51
+ end
52
+
53
+ class Data < Telnyx::Internal::Type::BaseModel
54
+ OrHash =
55
+ T.type_alias do
56
+ T.any(
57
+ Telnyx::Storage::CloudfsFilesystemResponseWrapper::Data,
58
+ Telnyx::Internal::AnyHash
59
+ )
60
+ end
61
+
62
+ sig { returns(T.nilable(String)) }
63
+ attr_reader :id
64
+
65
+ sig { params(id: String).void }
66
+ attr_writer :id
67
+
68
+ sig { returns(T.nilable(Time)) }
69
+ attr_reader :created_at
70
+
71
+ sig { params(created_at: Time).void }
72
+ attr_writer :created_at
73
+
74
+ # Metadata access token, in cleartext. Returned only by create and
75
+ # rotate-meta-token and not retrievable afterwards — store it securely.
76
+ sig { returns(T.nilable(String)) }
77
+ attr_reader :meta_token
78
+
79
+ sig { params(meta_token: String).void }
80
+ attr_writer :meta_token
81
+
82
+ # PostgreSQL connection URL for the filesystem's metadata database. In create and
83
+ # rotate-meta-token responses it embeds the metadata token as the password:
84
+ # `postgres://<database>:<meta_token>@us-east-1.telnyxcloudfs.com:5432/<database>?sslmode=require`
85
+ # (the example below is shown without the credential; the actual response includes
86
+ # it). Pass it to `juicefs mount`: the storage configuration is baked in at
87
+ # provisioning, so the metadata URL is all a client needs to mount the filesystem.
88
+ sig { returns(T.nilable(String)) }
89
+ attr_reader :meta_url
90
+
91
+ sig { params(meta_url: String).void }
92
+ attr_writer :meta_url
93
+
94
+ sig { returns(T.nilable(String)) }
95
+ attr_reader :name
96
+
97
+ sig { params(name: String).void }
98
+ attr_writer :name
99
+
100
+ sig { returns(T.nilable(String)) }
101
+ attr_reader :record_type
102
+
103
+ sig { params(record_type: String).void }
104
+ attr_writer :record_type
105
+
106
+ sig { returns(T.nilable(String)) }
107
+ attr_reader :region
108
+
109
+ sig { params(region: String).void }
110
+ attr_writer :region
111
+
112
+ # Name of the bucket that stores this filesystem's data. Created during
113
+ # provisioning.
114
+ sig { returns(T.nilable(String)) }
115
+ attr_reader :s3_bucket
116
+
117
+ sig { params(s3_bucket: String).void }
118
+ attr_writer :s3_bucket
119
+
120
+ # URL of the Telnyx Cloud Storage endpoint backing this filesystem.
121
+ sig { returns(T.nilable(String)) }
122
+ attr_reader :s3_endpoint
123
+
124
+ sig { params(s3_endpoint: String).void }
125
+ attr_writer :s3_endpoint
126
+
127
+ # Lifecycle status of the filesystem. `ready` means it is fully provisioned and
128
+ # usable. `needs_format` means the storage bucket and metadata database were
129
+ # provisioned but the filesystem has not yet been formatted — run `juicefs format`
130
+ # with the filesystem's `meta_url` before mounting. `failed` means the last
131
+ # lifecycle action failed — see the filesystem's `error` message. `deleted`
132
+ # appears only in the delete response: deleted filesystems are excluded from list
133
+ # results and return a `404` on retrieval.
134
+ sig do
135
+ returns(
136
+ T.nilable(Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol)
137
+ )
138
+ end
139
+ attr_reader :status
140
+
141
+ sig do
142
+ params(
143
+ status: Telnyx::Storage::CloudfsFilesystemStatus::OrSymbol
144
+ ).void
145
+ end
146
+ attr_writer :status
147
+
148
+ sig { returns(T.nilable(Time)) }
149
+ attr_reader :updated_at
150
+
151
+ sig { params(updated_at: Time).void }
152
+ attr_writer :updated_at
153
+
154
+ # A CloudFS filesystem, including its metadata credential. This shape is returned
155
+ # only by create and rotate-meta-token.
156
+ sig do
157
+ params(
158
+ id: String,
159
+ created_at: Time,
160
+ meta_token: String,
161
+ meta_url: String,
162
+ name: String,
163
+ record_type: String,
164
+ region: String,
165
+ s3_bucket: String,
166
+ s3_endpoint: String,
167
+ status: Telnyx::Storage::CloudfsFilesystemStatus::OrSymbol,
168
+ updated_at: Time
169
+ ).returns(T.attached_class)
170
+ end
171
+ def self.new(
172
+ id: nil,
173
+ created_at: nil,
174
+ # Metadata access token, in cleartext. Returned only by create and
175
+ # rotate-meta-token and not retrievable afterwards — store it securely.
176
+ meta_token: nil,
177
+ # PostgreSQL connection URL for the filesystem's metadata database. In create and
178
+ # rotate-meta-token responses it embeds the metadata token as the password:
179
+ # `postgres://<database>:<meta_token>@us-east-1.telnyxcloudfs.com:5432/<database>?sslmode=require`
180
+ # (the example below is shown without the credential; the actual response includes
181
+ # it). Pass it to `juicefs mount`: the storage configuration is baked in at
182
+ # provisioning, so the metadata URL is all a client needs to mount the filesystem.
183
+ meta_url: nil,
184
+ name: nil,
185
+ record_type: nil,
186
+ region: nil,
187
+ # Name of the bucket that stores this filesystem's data. Created during
188
+ # provisioning.
189
+ s3_bucket: nil,
190
+ # URL of the Telnyx Cloud Storage endpoint backing this filesystem.
191
+ s3_endpoint: nil,
192
+ # Lifecycle status of the filesystem. `ready` means it is fully provisioned and
193
+ # usable. `needs_format` means the storage bucket and metadata database were
194
+ # provisioned but the filesystem has not yet been formatted — run `juicefs format`
195
+ # with the filesystem's `meta_url` before mounting. `failed` means the last
196
+ # lifecycle action failed — see the filesystem's `error` message. `deleted`
197
+ # appears only in the delete response: deleted filesystems are excluded from list
198
+ # results and return a `404` on retrieval.
199
+ status: nil,
200
+ updated_at: nil
201
+ )
202
+ end
203
+
204
+ sig do
205
+ override.returns(
206
+ {
207
+ id: String,
208
+ created_at: Time,
209
+ meta_token: String,
210
+ meta_url: String,
211
+ name: String,
212
+ record_type: String,
213
+ region: String,
214
+ s3_bucket: String,
215
+ s3_endpoint: String,
216
+ status: Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol,
217
+ updated_at: Time
218
+ }
219
+ )
220
+ end
221
+ def to_hash
222
+ end
223
+ end
224
+ end
225
+ end
226
+ end
227
+ end
@@ -0,0 +1,57 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ # Lifecycle status of the filesystem. `ready` means it is fully provisioned and
7
+ # usable. `needs_format` means the storage bucket and metadata database were
8
+ # provisioned but the filesystem has not yet been formatted — run `juicefs format`
9
+ # with the filesystem's `meta_url` before mounting. `failed` means the last
10
+ # lifecycle action failed — see the filesystem's `error` message. `deleted`
11
+ # appears only in the delete response: deleted filesystems are excluded from list
12
+ # results and return a `404` on retrieval.
13
+ module CloudfsFilesystemStatus
14
+ extend Telnyx::Internal::Type::Enum
15
+
16
+ TaggedSymbol =
17
+ T.type_alias do
18
+ T.all(Symbol, Telnyx::Storage::CloudfsFilesystemStatus)
19
+ end
20
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
21
+
22
+ PROVISIONING =
23
+ T.let(
24
+ :provisioning,
25
+ Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol
26
+ )
27
+ READY =
28
+ T.let(:ready, Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol)
29
+ NEEDS_FORMAT =
30
+ T.let(
31
+ :needs_format,
32
+ Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol
33
+ )
34
+ DELETING =
35
+ T.let(
36
+ :deleting,
37
+ Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol
38
+ )
39
+ FAILED =
40
+ T.let(:failed, Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol)
41
+ DELETED =
42
+ T.let(
43
+ :deleted,
44
+ Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol
45
+ )
46
+
47
+ sig do
48
+ override.returns(
49
+ T::Array[Telnyx::Storage::CloudfsFilesystemStatus::TaggedSymbol]
50
+ )
51
+ end
52
+ def self.values
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -148,7 +148,9 @@ module Telnyx
148
148
 
149
149
  # Telnyx provider-specific parameters. Use `voice_speed` and `temperature` for
150
150
  # `Natural` and `NaturalHD` models. For the `Ultra` model, use `voice_speed`,
151
- # `volume`, and `emotion`.
151
+ # `volume`, and `emotion`. `Bayan` and `Sukhan` don't use `temperature`, `volume`,
152
+ # or `emotion`, and don't support `voice_speed`. `Sukhan`'s `response_format` is
153
+ # restricted to `mp3` or `pcm` (no `wav`).
152
154
  sig do
153
155
  returns(T.nilable(::Telnyx::TextToSpeechGenerateSpeechParams::Telnyx))
154
156
  end
@@ -188,10 +190,10 @@ module Telnyx
188
190
 
189
191
  # Voice identifier in the format `provider.model_id.voice_id` or
190
192
  # `provider.voice_id`. Examples: `telnyx.NaturalHD.Alloy`,
191
- # `Telnyx.Ultra.<voice_id>`, `azure.en-US-AvaMultilingualNeural`,
192
- # `aws.Polly.Generative.Lucia`. When provided, `provider`, `model_id`, and
193
- # `voice_id` are extracted automatically and take precedence over individual
194
- # parameters.
193
+ # `Telnyx.Ultra.<voice_id>`, `Telnyx.Bayan.Ahmed`, `Telnyx.Sukhan.urdu-professor`,
194
+ # `azure.en-US-AvaMultilingualNeural`, `aws.Polly.Generative.Lucia`. When
195
+ # provided, `provider`, `model_id`, and `voice_id` are extracted automatically and
196
+ # take precedence over individual parameters.
195
197
  sig { returns(T.nilable(String)) }
196
198
  attr_reader :voice
197
199
 
@@ -269,7 +271,9 @@ module Telnyx
269
271
  rime: nil,
270
272
  # Telnyx provider-specific parameters. Use `voice_speed` and `temperature` for
271
273
  # `Natural` and `NaturalHD` models. For the `Ultra` model, use `voice_speed`,
272
- # `volume`, and `emotion`.
274
+ # `volume`, and `emotion`. `Bayan` and `Sukhan` don't use `temperature`, `volume`,
275
+ # or `emotion`, and don't support `voice_speed`. `Sukhan`'s `response_format` is
276
+ # restricted to `mp3` or `pcm` (no `wav`).
273
277
  telnyx: nil,
274
278
  # The text to convert to speech.
275
279
  text: nil,
@@ -277,10 +281,10 @@ module Telnyx
277
281
  text_type: nil,
278
282
  # Voice identifier in the format `provider.model_id.voice_id` or
279
283
  # `provider.voice_id`. Examples: `telnyx.NaturalHD.Alloy`,
280
- # `Telnyx.Ultra.<voice_id>`, `azure.en-US-AvaMultilingualNeural`,
281
- # `aws.Polly.Generative.Lucia`. When provided, `provider`, `model_id`, and
282
- # `voice_id` are extracted automatically and take precedence over individual
283
- # parameters.
284
+ # `Telnyx.Ultra.<voice_id>`, `Telnyx.Bayan.Ahmed`, `Telnyx.Sukhan.urdu-professor`,
285
+ # `azure.en-US-AvaMultilingualNeural`, `aws.Polly.Generative.Lucia`. When
286
+ # provided, `provider`, `model_id`, and `voice_id` are extracted automatically and
287
+ # take precedence over individual parameters.
284
288
  voice: nil,
285
289
  # Provider-specific voice settings. Contents vary by provider — see
286
290
  # provider-specific parameter objects below.
@@ -1039,7 +1043,8 @@ module Telnyx
1039
1043
  sig { params(temperature: Float).void }
1040
1044
  attr_writer :temperature
1041
1045
 
1042
- # Voice speed multiplier. Applies to all models. Range: 0.5 to 2.0.
1046
+ # Voice speed multiplier. Applies to all models except `Bayan` and `Sukhan`, which
1047
+ # don't support it. Range: 0.5 to 2.0.
1043
1048
  sig { returns(T.nilable(Float)) }
1044
1049
  attr_reader :voice_speed
1045
1050
 
@@ -1055,7 +1060,9 @@ module Telnyx
1055
1060
 
1056
1061
  # Telnyx provider-specific parameters. Use `voice_speed` and `temperature` for
1057
1062
  # `Natural` and `NaturalHD` models. For the `Ultra` model, use `voice_speed`,
1058
- # `volume`, and `emotion`.
1063
+ # `volume`, and `emotion`. `Bayan` and `Sukhan` don't use `temperature`, `volume`,
1064
+ # or `emotion`, and don't support `voice_speed`. `Sukhan`'s `response_format` is
1065
+ # restricted to `mp3` or `pcm` (no `wav`).
1059
1066
  sig do
1060
1067
  params(
1061
1068
  emotion:
@@ -1077,7 +1084,8 @@ module Telnyx
1077
1084
  sampling_rate: nil,
1078
1085
  # Sampling temperature. Applies to `Natural` and `NaturalHD` models only.
1079
1086
  temperature: nil,
1080
- # Voice speed multiplier. Applies to all models. Range: 0.5 to 2.0.
1087
+ # Voice speed multiplier. Applies to all models except `Bayan` and `Sukhan`, which
1088
+ # don't support it. Range: 0.5 to 2.0.
1081
1089
  voice_speed: nil,
1082
1090
  # Volume level for the Ultra model. Range: 0.0 to 2.0.
1083
1091
  volume: nil
@@ -77,10 +77,10 @@ module Telnyx
77
77
 
78
78
  # Voice identifier in the format `provider.model_id.voice_id` or
79
79
  # `provider.voice_id` (e.g. `telnyx.NaturalHD.Telnyx_Alloy`,
80
- # `Telnyx.Ultra.<voice_id>`, or `azure.en-US-AvaMultilingualNeural`). When
81
- # provided, the `provider`, `model_id`, and `voice_id` are extracted
82
- # automatically. Takes precedence over individual `provider`/`model_id`/`voice_id`
83
- # parameters.
80
+ # `Telnyx.Ultra.<voice_id>`, `Telnyx.Bayan.Ahmed`, `Telnyx.Sukhan.urdu-professor`,
81
+ # or `azure.en-US-AvaMultilingualNeural`). When provided, the `provider`,
82
+ # `model_id`, and `voice_id` are extracted automatically. Takes precedence over
83
+ # individual `provider`/`model_id`/`voice_id` parameters.
84
84
  sig { returns(T.nilable(String)) }
85
85
  attr_reader :voice
86
86
 
@@ -126,10 +126,10 @@ module Telnyx
126
126
  socket_id: nil,
127
127
  # Voice identifier in the format `provider.model_id.voice_id` or
128
128
  # `provider.voice_id` (e.g. `telnyx.NaturalHD.Telnyx_Alloy`,
129
- # `Telnyx.Ultra.<voice_id>`, or `azure.en-US-AvaMultilingualNeural`). When
130
- # provided, the `provider`, `model_id`, and `voice_id` are extracted
131
- # automatically. Takes precedence over individual `provider`/`model_id`/`voice_id`
132
- # parameters.
129
+ # `Telnyx.Ultra.<voice_id>`, `Telnyx.Bayan.Ahmed`, `Telnyx.Sukhan.urdu-professor`,
130
+ # or `azure.en-US-AvaMultilingualNeural`). When provided, the `provider`,
131
+ # `model_id`, and `voice_id` are extracted automatically. Takes precedence over
132
+ # individual `provider`/`model_id`/`voice_id` parameters.
133
133
  voice: nil,
134
134
  # Voice identifier for the chosen provider.
135
135
  voice_id: nil,
@@ -475,7 +475,7 @@ module Telnyx
475
475
  sig { returns(T.nilable(String)) }
476
476
  attr_accessor :sender_phone_number
477
477
 
478
- # Customer pre-approved authentication template name registered on Meta
478
+ # Customer pre-approved authentication template ID registered on Meta
479
479
  sig { returns(T.nilable(String)) }
480
480
  attr_accessor :template_id
481
481
 
@@ -521,7 +521,7 @@ module Telnyx
521
521
  messaging_template_id: nil,
522
522
  # Phone number registered on the customer WABA to send OTPs from
523
523
  sender_phone_number: nil,
524
- # Customer pre-approved authentication template name registered on Meta
524
+ # Customer pre-approved authentication template ID registered on Meta
525
525
  template_id: nil,
526
526
  # Customer Meta WABA ID for Bring-Your-Own-WABA sending
527
527
  waba_id: nil,
@@ -435,7 +435,7 @@ module Telnyx
435
435
  sig { returns(T.nilable(String)) }
436
436
  attr_accessor :sender_phone_number
437
437
 
438
- # Customer pre-approved authentication template name registered on Meta
438
+ # Customer pre-approved authentication template ID registered on Meta
439
439
  sig { returns(T.nilable(String)) }
440
440
  attr_accessor :template_id
441
441
 
@@ -471,7 +471,7 @@ module Telnyx
471
471
  default_verification_timeout_secs: nil,
472
472
  # Phone number registered on the customer WABA to send OTPs from
473
473
  sender_phone_number: nil,
474
- # Customer pre-approved authentication template name registered on Meta
474
+ # Customer pre-approved authentication template ID registered on Meta
475
475
  template_id: nil,
476
476
  # Customer Meta WABA ID for Bring-Your-Own-WABA sending
477
477
  waba_id: nil,
@@ -355,7 +355,7 @@ module Telnyx
355
355
  sig { returns(T.nilable(String)) }
356
356
  attr_accessor :sender_phone_number
357
357
 
358
- # Customer pre-approved authentication template name registered on Meta
358
+ # Customer pre-approved authentication template ID registered on Meta
359
359
  sig { returns(T.nilable(String)) }
360
360
  attr_accessor :template_id
361
361
 
@@ -391,7 +391,7 @@ module Telnyx
391
391
  default_verification_timeout_secs: nil,
392
392
  # Phone number registered on the customer WABA to send OTPs from
393
393
  sender_phone_number: nil,
394
- # Customer pre-approved authentication template name registered on Meta
394
+ # Customer pre-approved authentication template ID registered on Meta
395
395
  template_id: nil,
396
396
  # Customer Meta WABA ID for Bring-Your-Own-WABA sending
397
397
  waba_id: nil,