telnyx 5.70.0 → 5.71.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 (105) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/assistant.rb +6 -149
  5. data/lib/telnyx/models/book_appointment_tool.rb +31 -0
  6. data/lib/telnyx/models/book_appointment_tool_params.rb +51 -0
  7. data/lib/telnyx/models/call_assistant_request.rb +176 -0
  8. data/lib/telnyx/models/call_control_bucket_ids.rb +23 -0
  9. data/lib/telnyx/models/call_control_retrieval_tool.rb +31 -0
  10. data/lib/telnyx/models/call_dial_params.rb +11 -1
  11. data/lib/telnyx/models/calls/action_answer_params.rb +11 -1
  12. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +6 -39
  13. data/lib/telnyx/models/check_availability_tool.rb +31 -0
  14. data/lib/telnyx/models/check_availability_tool_params.rb +31 -0
  15. data/lib/telnyx/models/pronunciation_dict_alias_item.rb +51 -0
  16. data/lib/telnyx/models/pronunciation_dict_create_params.rb +5 -93
  17. data/lib/telnyx/models/pronunciation_dict_create_response.rb +3 -191
  18. data/lib/telnyx/models/pronunciation_dict_data.rb +101 -0
  19. data/lib/telnyx/models/pronunciation_dict_phoneme_item.rb +71 -0
  20. data/lib/telnyx/models/pronunciation_dict_retrieve_response.rb +3 -191
  21. data/lib/telnyx/models/pronunciation_dict_update_params.rb +5 -93
  22. data/lib/telnyx/models/pronunciation_dict_update_response.rb +3 -191
  23. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +203 -191
  24. data/lib/telnyx/models/voice_clone_create_from_design_params.rb +3 -3
  25. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +61 -54
  26. data/lib/telnyx/models/voice_clone_create_params.rb +28 -28
  27. data/lib/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_params.rb +26 -0
  28. data/lib/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_response.rb +54 -0
  29. data/lib/telnyx/models.rb +20 -0
  30. data/lib/telnyx/resources/calls/actions.rb +4 -2
  31. data/lib/telnyx/resources/calls.rb +3 -1
  32. data/lib/telnyx/resources/pronunciation_dicts.rb +4 -4
  33. data/lib/telnyx/resources/texml/accounts/calls.rb +3 -3
  34. data/lib/telnyx/resources/voice_clones.rb +6 -6
  35. data/lib/telnyx/resources/whatsapp/phone_numbers/profile/photo.rb +20 -0
  36. data/lib/telnyx/version.rb +1 -1
  37. data/lib/telnyx.rb +12 -1
  38. data/rbi/telnyx/models/ai/assistant.rbi +15 -329
  39. data/rbi/telnyx/models/book_appointment_tool.rbi +65 -0
  40. data/rbi/telnyx/models/book_appointment_tool_params.rbi +83 -0
  41. data/rbi/telnyx/models/call_assistant_request.rbi +322 -0
  42. data/rbi/telnyx/models/call_control_bucket_ids.rbi +42 -0
  43. data/rbi/telnyx/models/call_control_retrieval_tool.rbi +63 -0
  44. data/rbi/telnyx/models/call_dial_params.rbi +15 -0
  45. data/rbi/telnyx/models/calls/action_answer_params.rbi +15 -0
  46. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +10 -77
  47. data/rbi/telnyx/models/check_availability_tool.rbi +67 -0
  48. data/rbi/telnyx/models/check_availability_tool_params.rbi +45 -0
  49. data/rbi/telnyx/models/pronunciation_dict_alias_item.rbi +79 -0
  50. data/rbi/telnyx/models/pronunciation_dict_create_params.rbi +8 -154
  51. data/rbi/telnyx/models/pronunciation_dict_create_response.rbi +6 -366
  52. data/rbi/telnyx/models/pronunciation_dict_data.rbi +186 -0
  53. data/rbi/telnyx/models/pronunciation_dict_phoneme_item.rbi +117 -0
  54. data/rbi/telnyx/models/pronunciation_dict_retrieve_response.rbi +6 -366
  55. data/rbi/telnyx/models/pronunciation_dict_update_params.rbi +10 -156
  56. data/rbi/telnyx/models/pronunciation_dict_update_response.rbi +6 -366
  57. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +391 -403
  58. data/rbi/telnyx/models/voice_clone_create_from_design_params.rbi +10 -10
  59. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +94 -92
  60. data/rbi/telnyx/models/voice_clone_create_params.rbi +53 -53
  61. data/rbi/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_params.rbi +47 -0
  62. data/rbi/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_response.rbi +118 -0
  63. data/rbi/telnyx/models.rbi +20 -0
  64. data/rbi/telnyx/resources/calls/actions.rbi +9 -3
  65. data/rbi/telnyx/resources/calls.rbi +5 -0
  66. data/rbi/telnyx/resources/pronunciation_dicts.rbi +5 -7
  67. data/rbi/telnyx/resources/texml/accounts/calls.rbi +5 -5
  68. data/rbi/telnyx/resources/voice_clones.rbi +9 -9
  69. data/rbi/telnyx/resources/whatsapp/phone_numbers/profile/photo.rbi +16 -0
  70. data/sig/telnyx/models/ai/assistant.rbs +3 -142
  71. data/sig/telnyx/models/book_appointment_tool.rbs +35 -0
  72. data/sig/telnyx/models/book_appointment_tool_params.rbs +39 -0
  73. data/sig/telnyx/models/call_assistant_request.rbs +132 -0
  74. data/sig/telnyx/models/call_control_bucket_ids.rbs +21 -0
  75. data/sig/telnyx/models/call_control_retrieval_tool.rbs +35 -0
  76. data/sig/telnyx/models/call_dial_params.rbs +9 -0
  77. data/sig/telnyx/models/calls/action_answer_params.rbs +9 -0
  78. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +6 -35
  79. data/sig/telnyx/models/check_availability_tool.rbs +35 -0
  80. data/sig/telnyx/models/check_availability_tool_params.rbs +16 -0
  81. data/sig/telnyx/models/pronunciation_dict_alias_item.rbs +40 -0
  82. data/sig/telnyx/models/pronunciation_dict_create_params.rbs +2 -58
  83. data/sig/telnyx/models/pronunciation_dict_create_response.rbs +6 -155
  84. data/sig/telnyx/models/pronunciation_dict_data.rbs +88 -0
  85. data/sig/telnyx/models/pronunciation_dict_phoneme_item.rbs +55 -0
  86. data/sig/telnyx/models/pronunciation_dict_retrieve_response.rbs +6 -155
  87. data/sig/telnyx/models/pronunciation_dict_update_params.rbs +2 -58
  88. data/sig/telnyx/models/pronunciation_dict_update_response.rbs +6 -155
  89. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +317 -325
  90. data/sig/telnyx/models/voice_clone_create_from_design_params.rbs +7 -7
  91. data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +63 -61
  92. data/sig/telnyx/models/voice_clone_create_params.rbs +35 -35
  93. data/sig/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_params.rbs +30 -0
  94. data/sig/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_response.rbs +63 -0
  95. data/sig/telnyx/models.rbs +20 -0
  96. data/sig/telnyx/resources/calls/actions.rbs +2 -1
  97. data/sig/telnyx/resources/calls.rbs +1 -0
  98. data/sig/telnyx/resources/pronunciation_dicts.rbs +1 -1
  99. data/sig/telnyx/resources/texml/accounts/calls.rbs +1 -1
  100. data/sig/telnyx/resources/voice_clones.rbs +2 -2
  101. data/sig/telnyx/resources/whatsapp/phone_numbers/profile/photo.rbs +5 -0
  102. metadata +38 -5
  103. data/lib/telnyx/models/pronunciation_dict_list_response.rb +0 -190
  104. data/rbi/telnyx/models/pronunciation_dict_list_response.rbi +0 -353
  105. data/sig/telnyx/models/pronunciation_dict_list_response.rbs +0 -144
@@ -0,0 +1,45 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ class CheckAvailabilityToolParams < Telnyx::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Telnyx::CheckAvailabilityToolParams, Telnyx::Internal::AnyHash)
9
+ end
10
+
11
+ # Reference to an integration secret that contains your Cal.com API key. You would
12
+ # pass the `identifier` for an integration secret
13
+ # [/v2/integration_secrets](https://developers.telnyx.com/api/secrets-manager/integration-secrets/create-integration-secret)
14
+ # that refers to your Cal.com API key.
15
+ sig { returns(String) }
16
+ attr_accessor :api_key_ref
17
+
18
+ # Event Type ID for which slots are being fetched.
19
+ # [cal.com](https://cal.com/docs/api-reference/v2/slots/get-available-slots#parameter-event-type-id)
20
+ sig { returns(Integer) }
21
+ attr_accessor :event_type_id
22
+
23
+ sig do
24
+ params(api_key_ref: String, event_type_id: Integer).returns(
25
+ T.attached_class
26
+ )
27
+ end
28
+ def self.new(
29
+ # Reference to an integration secret that contains your Cal.com API key. You would
30
+ # pass the `identifier` for an integration secret
31
+ # [/v2/integration_secrets](https://developers.telnyx.com/api/secrets-manager/integration-secrets/create-integration-secret)
32
+ # that refers to your Cal.com API key.
33
+ api_key_ref:,
34
+ # Event Type ID for which slots are being fetched.
35
+ # [cal.com](https://cal.com/docs/api-reference/v2/slots/get-available-slots#parameter-event-type-id)
36
+ event_type_id:
37
+ )
38
+ end
39
+
40
+ sig { override.returns({ api_key_ref: String, event_type_id: Integer }) }
41
+ def to_hash
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,79 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ class PronunciationDictAliasItem < Telnyx::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Telnyx::PronunciationDictAliasItem, Telnyx::Internal::AnyHash)
9
+ end
10
+
11
+ # The replacement text that will be spoken instead.
12
+ sig { returns(String) }
13
+ attr_accessor :alias_
14
+
15
+ # The text to match in the input. Case-insensitive matching is used during
16
+ # synthesis.
17
+ sig { returns(String) }
18
+ attr_accessor :text
19
+
20
+ # The item type.
21
+ sig { returns(Telnyx::PronunciationDictAliasItem::Type::OrSymbol) }
22
+ attr_accessor :type
23
+
24
+ # An alias pronunciation item. When the `text` value is found in input, it is
25
+ # replaced with the `alias` before speech synthesis.
26
+ sig do
27
+ params(
28
+ alias_: String,
29
+ text: String,
30
+ type: Telnyx::PronunciationDictAliasItem::Type::OrSymbol
31
+ ).returns(T.attached_class)
32
+ end
33
+ def self.new(
34
+ # The replacement text that will be spoken instead.
35
+ alias_:,
36
+ # The text to match in the input. Case-insensitive matching is used during
37
+ # synthesis.
38
+ text:,
39
+ # The item type.
40
+ type:
41
+ )
42
+ end
43
+
44
+ sig do
45
+ override.returns(
46
+ {
47
+ alias_: String,
48
+ text: String,
49
+ type: Telnyx::PronunciationDictAliasItem::Type::OrSymbol
50
+ }
51
+ )
52
+ end
53
+ def to_hash
54
+ end
55
+
56
+ # The item type.
57
+ module Type
58
+ extend Telnyx::Internal::Type::Enum
59
+
60
+ TaggedSymbol =
61
+ T.type_alias do
62
+ T.all(Symbol, Telnyx::PronunciationDictAliasItem::Type)
63
+ end
64
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
65
+
66
+ ALIAS =
67
+ T.let(:alias, Telnyx::PronunciationDictAliasItem::Type::TaggedSymbol)
68
+
69
+ sig do
70
+ override.returns(
71
+ T::Array[Telnyx::PronunciationDictAliasItem::Type::TaggedSymbol]
72
+ )
73
+ end
74
+ def self.values
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -20,8 +20,8 @@ module Telnyx
20
20
  returns(
21
21
  T::Array[
22
22
  T.any(
23
- Telnyx::PronunciationDictCreateParams::Item::Alias,
24
- Telnyx::PronunciationDictCreateParams::Item::Phoneme
23
+ Telnyx::PronunciationDictAliasItem,
24
+ Telnyx::PronunciationDictPhonemeItem
25
25
  )
26
26
  ]
27
27
  )
@@ -37,8 +37,8 @@ module Telnyx
37
37
  items:
38
38
  T::Array[
39
39
  T.any(
40
- Telnyx::PronunciationDictCreateParams::Item::Alias::OrHash,
41
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::OrHash
40
+ Telnyx::PronunciationDictAliasItem::OrHash,
41
+ Telnyx::PronunciationDictPhonemeItem::OrHash
42
42
  )
43
43
  ],
44
44
  name: String,
@@ -61,8 +61,8 @@ module Telnyx
61
61
  items:
62
62
  T::Array[
63
63
  T.any(
64
- Telnyx::PronunciationDictCreateParams::Item::Alias,
65
- Telnyx::PronunciationDictCreateParams::Item::Phoneme
64
+ Telnyx::PronunciationDictAliasItem,
65
+ Telnyx::PronunciationDictPhonemeItem
66
66
  )
67
67
  ],
68
68
  name: String,
@@ -82,157 +82,11 @@ module Telnyx
82
82
  Variants =
83
83
  T.type_alias do
84
84
  T.any(
85
- Telnyx::PronunciationDictCreateParams::Item::Alias,
86
- Telnyx::PronunciationDictCreateParams::Item::Phoneme
85
+ Telnyx::PronunciationDictAliasItem,
86
+ Telnyx::PronunciationDictPhonemeItem
87
87
  )
88
88
  end
89
89
 
90
- class Alias < Telnyx::Internal::Type::BaseModel
91
- OrHash =
92
- T.type_alias do
93
- T.any(
94
- Telnyx::PronunciationDictCreateParams::Item::Alias,
95
- Telnyx::Internal::AnyHash
96
- )
97
- end
98
-
99
- # The replacement text that will be spoken instead.
100
- sig { returns(String) }
101
- attr_accessor :alias_
102
-
103
- # The text to match in the input. Case-insensitive matching is used during
104
- # synthesis.
105
- sig { returns(String) }
106
- attr_accessor :text
107
-
108
- # The item type.
109
- sig { returns(Symbol) }
110
- attr_accessor :type
111
-
112
- # An alias pronunciation item. When the `text` value is found in input, it is
113
- # replaced with the `alias` before speech synthesis.
114
- sig do
115
- params(alias_: String, text: String, type: Symbol).returns(
116
- T.attached_class
117
- )
118
- end
119
- def self.new(
120
- # The replacement text that will be spoken instead.
121
- alias_:,
122
- # The text to match in the input. Case-insensitive matching is used during
123
- # synthesis.
124
- text:,
125
- # The item type.
126
- type: :alias
127
- )
128
- end
129
-
130
- sig do
131
- override.returns({ alias_: String, text: String, type: Symbol })
132
- end
133
- def to_hash
134
- end
135
- end
136
-
137
- class Phoneme < Telnyx::Internal::Type::BaseModel
138
- OrHash =
139
- T.type_alias do
140
- T.any(
141
- Telnyx::PronunciationDictCreateParams::Item::Phoneme,
142
- Telnyx::Internal::AnyHash
143
- )
144
- end
145
-
146
- # The phonetic alphabet used for the phoneme notation.
147
- sig do
148
- returns(
149
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::Alphabet::OrSymbol
150
- )
151
- end
152
- attr_accessor :alphabet
153
-
154
- # The phoneme notation representing the desired pronunciation.
155
- sig { returns(String) }
156
- attr_accessor :phoneme
157
-
158
- # The text to match in the input. Case-insensitive matching is used during
159
- # synthesis.
160
- sig { returns(String) }
161
- attr_accessor :text
162
-
163
- # The item type.
164
- sig { returns(Symbol) }
165
- attr_accessor :type
166
-
167
- # A phoneme pronunciation item. When the `text` value is found in input, it is
168
- # pronounced using the specified IPA phoneme notation.
169
- sig do
170
- params(
171
- alphabet:
172
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::Alphabet::OrSymbol,
173
- phoneme: String,
174
- text: String,
175
- type: Symbol
176
- ).returns(T.attached_class)
177
- end
178
- def self.new(
179
- # The phonetic alphabet used for the phoneme notation.
180
- alphabet:,
181
- # The phoneme notation representing the desired pronunciation.
182
- phoneme:,
183
- # The text to match in the input. Case-insensitive matching is used during
184
- # synthesis.
185
- text:,
186
- # The item type.
187
- type: :phoneme
188
- )
189
- end
190
-
191
- sig do
192
- override.returns(
193
- {
194
- alphabet:
195
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::Alphabet::OrSymbol,
196
- phoneme: String,
197
- text: String,
198
- type: Symbol
199
- }
200
- )
201
- end
202
- def to_hash
203
- end
204
-
205
- # The phonetic alphabet used for the phoneme notation.
206
- module Alphabet
207
- extend Telnyx::Internal::Type::Enum
208
-
209
- TaggedSymbol =
210
- T.type_alias do
211
- T.all(
212
- Symbol,
213
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::Alphabet
214
- )
215
- end
216
- OrSymbol = T.type_alias { T.any(Symbol, String) }
217
-
218
- IPA =
219
- T.let(
220
- :ipa,
221
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::Alphabet::TaggedSymbol
222
- )
223
-
224
- sig do
225
- override.returns(
226
- T::Array[
227
- Telnyx::PronunciationDictCreateParams::Item::Phoneme::Alphabet::TaggedSymbol
228
- ]
229
- )
230
- end
231
- def self.values
232
- end
233
- end
234
- end
235
-
236
90
  sig do
237
91
  override.returns(
238
92
  T::Array[Telnyx::PronunciationDictCreateParams::Item::Variants]
@@ -12,25 +12,17 @@ module Telnyx
12
12
  end
13
13
 
14
14
  # A pronunciation dictionary record.
15
- sig do
16
- returns(
17
- T.nilable(Telnyx::Models::PronunciationDictCreateResponse::Data)
18
- )
19
- end
15
+ sig { returns(T.nilable(Telnyx::PronunciationDictData)) }
20
16
  attr_reader :data
21
17
 
22
- sig do
23
- params(
24
- data: Telnyx::Models::PronunciationDictCreateResponse::Data::OrHash
25
- ).void
26
- end
18
+ sig { params(data: Telnyx::PronunciationDictData::OrHash).void }
27
19
  attr_writer :data
28
20
 
29
21
  # Response containing a single pronunciation dictionary.
30
22
  sig do
31
- params(
32
- data: Telnyx::Models::PronunciationDictCreateResponse::Data::OrHash
33
- ).returns(T.attached_class)
23
+ params(data: Telnyx::PronunciationDictData::OrHash).returns(
24
+ T.attached_class
25
+ )
34
26
  end
35
27
  def self.new(
36
28
  # A pronunciation dictionary record.
@@ -38,361 +30,9 @@ module Telnyx
38
30
  )
39
31
  end
40
32
 
41
- sig do
42
- override.returns(
43
- { data: Telnyx::Models::PronunciationDictCreateResponse::Data }
44
- )
45
- end
33
+ sig { override.returns({ data: Telnyx::PronunciationDictData }) }
46
34
  def to_hash
47
35
  end
48
-
49
- class Data < Telnyx::Internal::Type::BaseModel
50
- OrHash =
51
- T.type_alias do
52
- T.any(
53
- Telnyx::Models::PronunciationDictCreateResponse::Data,
54
- Telnyx::Internal::AnyHash
55
- )
56
- end
57
-
58
- # Unique identifier for the pronunciation dictionary.
59
- sig { returns(T.nilable(String)) }
60
- attr_reader :id
61
-
62
- sig { params(id: String).void }
63
- attr_writer :id
64
-
65
- # ISO 8601 timestamp with millisecond precision.
66
- sig { returns(T.nilable(Time)) }
67
- attr_reader :created_at
68
-
69
- sig { params(created_at: Time).void }
70
- attr_writer :created_at
71
-
72
- # List of pronunciation items (alias or phoneme type).
73
- sig do
74
- returns(
75
- T.nilable(
76
- T::Array[
77
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Variants
78
- ]
79
- )
80
- )
81
- end
82
- attr_reader :items
83
-
84
- sig do
85
- params(
86
- items:
87
- T::Array[
88
- T.any(
89
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Alias::OrHash,
90
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::OrHash
91
- )
92
- ]
93
- ).void
94
- end
95
- attr_writer :items
96
-
97
- # Human-readable name for the dictionary. Must be unique within the organization.
98
- sig { returns(T.nilable(String)) }
99
- attr_reader :name
100
-
101
- sig { params(name: String).void }
102
- attr_writer :name
103
-
104
- # Identifies the resource type.
105
- sig do
106
- returns(
107
- T.nilable(
108
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType::TaggedSymbol
109
- )
110
- )
111
- end
112
- attr_reader :record_type
113
-
114
- sig do
115
- params(
116
- record_type:
117
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType::OrSymbol
118
- ).void
119
- end
120
- attr_writer :record_type
121
-
122
- # ISO 8601 timestamp with millisecond precision.
123
- sig { returns(T.nilable(Time)) }
124
- attr_reader :updated_at
125
-
126
- sig { params(updated_at: Time).void }
127
- attr_writer :updated_at
128
-
129
- # Auto-incrementing version number. Increases by 1 on each update. Used for
130
- # optimistic concurrency control and cache invalidation.
131
- sig { returns(T.nilable(Integer)) }
132
- attr_reader :version
133
-
134
- sig { params(version: Integer).void }
135
- attr_writer :version
136
-
137
- # A pronunciation dictionary record.
138
- sig do
139
- params(
140
- id: String,
141
- created_at: Time,
142
- items:
143
- T::Array[
144
- T.any(
145
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Alias::OrHash,
146
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::OrHash
147
- )
148
- ],
149
- name: String,
150
- record_type:
151
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType::OrSymbol,
152
- updated_at: Time,
153
- version: Integer
154
- ).returns(T.attached_class)
155
- end
156
- def self.new(
157
- # Unique identifier for the pronunciation dictionary.
158
- id: nil,
159
- # ISO 8601 timestamp with millisecond precision.
160
- created_at: nil,
161
- # List of pronunciation items (alias or phoneme type).
162
- items: nil,
163
- # Human-readable name for the dictionary. Must be unique within the organization.
164
- name: nil,
165
- # Identifies the resource type.
166
- record_type: nil,
167
- # ISO 8601 timestamp with millisecond precision.
168
- updated_at: nil,
169
- # Auto-incrementing version number. Increases by 1 on each update. Used for
170
- # optimistic concurrency control and cache invalidation.
171
- version: nil
172
- )
173
- end
174
-
175
- sig do
176
- override.returns(
177
- {
178
- id: String,
179
- created_at: Time,
180
- items:
181
- T::Array[
182
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Variants
183
- ],
184
- name: String,
185
- record_type:
186
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType::TaggedSymbol,
187
- updated_at: Time,
188
- version: Integer
189
- }
190
- )
191
- end
192
- def to_hash
193
- end
194
-
195
- # A single pronunciation dictionary item. Use type 'alias' to replace matched text
196
- # with a spoken alias, or type 'phoneme' to specify exact pronunciation using IPA
197
- # notation.
198
- module Item
199
- extend Telnyx::Internal::Type::Union
200
-
201
- Variants =
202
- T.type_alias do
203
- T.any(
204
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Alias,
205
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme
206
- )
207
- end
208
-
209
- class Alias < Telnyx::Internal::Type::BaseModel
210
- OrHash =
211
- T.type_alias do
212
- T.any(
213
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Alias,
214
- Telnyx::Internal::AnyHash
215
- )
216
- end
217
-
218
- # The replacement text that will be spoken instead.
219
- sig { returns(String) }
220
- attr_accessor :alias_
221
-
222
- # The text to match in the input. Case-insensitive matching is used during
223
- # synthesis.
224
- sig { returns(String) }
225
- attr_accessor :text
226
-
227
- # The item type.
228
- sig { returns(Symbol) }
229
- attr_accessor :type
230
-
231
- # An alias pronunciation item. When the `text` value is found in input, it is
232
- # replaced with the `alias` before speech synthesis.
233
- sig do
234
- params(alias_: String, text: String, type: Symbol).returns(
235
- T.attached_class
236
- )
237
- end
238
- def self.new(
239
- # The replacement text that will be spoken instead.
240
- alias_:,
241
- # The text to match in the input. Case-insensitive matching is used during
242
- # synthesis.
243
- text:,
244
- # The item type.
245
- type: :alias
246
- )
247
- end
248
-
249
- sig do
250
- override.returns({ alias_: String, text: String, type: Symbol })
251
- end
252
- def to_hash
253
- end
254
- end
255
-
256
- class Phoneme < Telnyx::Internal::Type::BaseModel
257
- OrHash =
258
- T.type_alias do
259
- T.any(
260
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme,
261
- Telnyx::Internal::AnyHash
262
- )
263
- end
264
-
265
- # The phonetic alphabet used for the phoneme notation.
266
- sig do
267
- returns(
268
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::Alphabet::TaggedSymbol
269
- )
270
- end
271
- attr_accessor :alphabet
272
-
273
- # The phoneme notation representing the desired pronunciation.
274
- sig { returns(String) }
275
- attr_accessor :phoneme
276
-
277
- # The text to match in the input. Case-insensitive matching is used during
278
- # synthesis.
279
- sig { returns(String) }
280
- attr_accessor :text
281
-
282
- # The item type.
283
- sig { returns(Symbol) }
284
- attr_accessor :type
285
-
286
- # A phoneme pronunciation item. When the `text` value is found in input, it is
287
- # pronounced using the specified IPA phoneme notation.
288
- sig do
289
- params(
290
- alphabet:
291
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::Alphabet::OrSymbol,
292
- phoneme: String,
293
- text: String,
294
- type: Symbol
295
- ).returns(T.attached_class)
296
- end
297
- def self.new(
298
- # The phonetic alphabet used for the phoneme notation.
299
- alphabet:,
300
- # The phoneme notation representing the desired pronunciation.
301
- phoneme:,
302
- # The text to match in the input. Case-insensitive matching is used during
303
- # synthesis.
304
- text:,
305
- # The item type.
306
- type: :phoneme
307
- )
308
- end
309
-
310
- sig do
311
- override.returns(
312
- {
313
- alphabet:
314
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::Alphabet::TaggedSymbol,
315
- phoneme: String,
316
- text: String,
317
- type: Symbol
318
- }
319
- )
320
- end
321
- def to_hash
322
- end
323
-
324
- # The phonetic alphabet used for the phoneme notation.
325
- module Alphabet
326
- extend Telnyx::Internal::Type::Enum
327
-
328
- TaggedSymbol =
329
- T.type_alias do
330
- T.all(
331
- Symbol,
332
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::Alphabet
333
- )
334
- end
335
- OrSymbol = T.type_alias { T.any(Symbol, String) }
336
-
337
- IPA =
338
- T.let(
339
- :ipa,
340
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::Alphabet::TaggedSymbol
341
- )
342
-
343
- sig do
344
- override.returns(
345
- T::Array[
346
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Phoneme::Alphabet::TaggedSymbol
347
- ]
348
- )
349
- end
350
- def self.values
351
- end
352
- end
353
- end
354
-
355
- sig do
356
- override.returns(
357
- T::Array[
358
- Telnyx::Models::PronunciationDictCreateResponse::Data::Item::Variants
359
- ]
360
- )
361
- end
362
- def self.variants
363
- end
364
- end
365
-
366
- # Identifies the resource type.
367
- module RecordType
368
- extend Telnyx::Internal::Type::Enum
369
-
370
- TaggedSymbol =
371
- T.type_alias do
372
- T.all(
373
- Symbol,
374
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType
375
- )
376
- end
377
- OrSymbol = T.type_alias { T.any(Symbol, String) }
378
-
379
- PRONUNCIATION_DICT =
380
- T.let(
381
- :pronunciation_dict,
382
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType::TaggedSymbol
383
- )
384
-
385
- sig do
386
- override.returns(
387
- T::Array[
388
- Telnyx::Models::PronunciationDictCreateResponse::Data::RecordType::TaggedSymbol
389
- ]
390
- )
391
- end
392
- def self.values
393
- end
394
- end
395
- end
396
36
  end
397
37
  end
398
38
  end