telnyx 4.0.0 → 4.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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/internal/transport/pooled_net_requester.rb +7 -10
  5. data/lib/telnyx/models/{advanced_order_update_params.rb → advanced_order_update_requirement_group_params.rb} +9 -8
  6. data/lib/telnyx/models/{advanced_order_update_response.rb → advanced_order_update_requirement_group_response.rb} +1 -1
  7. data/lib/telnyx/models/calls/transcription_start_request.rb +444 -6
  8. data/lib/telnyx/models/legacy/reporting/batch_detail_records/cdr_detailed_req_response.rb +156 -0
  9. data/lib/telnyx/models/legacy/reporting/batch_detail_records/mdr_detail_report_response.rb +151 -0
  10. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_params.rb +3 -110
  11. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_response.rb +3 -252
  12. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_delete_response.rb +3 -252
  13. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_list_response.rb +3 -250
  14. data/lib/telnyx/models/legacy/reporting/batch_detail_records/messaging_retrieve_response.rb +3 -252
  15. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_create_response.rb +3 -73
  16. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_delete_response.rb +3 -73
  17. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_list_response.rb +3 -71
  18. data/lib/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.rb +3 -73
  19. data/lib/telnyx/models/legacy/reporting/batch_detail_records/stt_detail_report_response.rb +79 -0
  20. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_create_params.rb +3 -110
  21. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_create_response.rb +3 -256
  22. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_delete_response.rb +3 -256
  23. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_list_response.rb +3 -255
  24. data/lib/telnyx/models/legacy/reporting/batch_detail_records/voice_retrieve_response.rb +3 -256
  25. data/lib/telnyx/models/legacy/reporting/filter.rb +112 -0
  26. data/lib/telnyx/models/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.rb +109 -0
  27. data/lib/telnyx/models/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.rb +104 -0
  28. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_create_response.rb +3 -97
  29. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_delete_response.rb +3 -97
  30. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_list_response.rb +3 -96
  31. data/lib/telnyx/models/legacy/reporting/usage_reports/messaging_retrieve_response.rb +3 -97
  32. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_create_response.rb +3 -102
  33. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_delete_response.rb +3 -102
  34. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_list_response.rb +3 -101
  35. data/lib/telnyx/models/legacy/reporting/usage_reports/voice_retrieve_response.rb +3 -102
  36. data/lib/telnyx/models/oauth_client.rb +173 -0
  37. data/lib/telnyx/models/oauth_client_create_response.rb +3 -172
  38. data/lib/telnyx/models/oauth_client_list_response.rb +3 -171
  39. data/lib/telnyx/models/oauth_client_retrieve_response.rb +3 -172
  40. data/lib/telnyx/models/oauth_client_update_response.rb +3 -172
  41. data/lib/telnyx/models/oauth_grant.rb +68 -0
  42. data/lib/telnyx/models/oauth_grant_delete_response.rb +3 -67
  43. data/lib/telnyx/models/oauth_grant_list_response.rb +3 -66
  44. data/lib/telnyx/models/oauth_grant_retrieve_response.rb +3 -67
  45. data/lib/telnyx/models/verify_profile_create_template_response.rb +3 -20
  46. data/lib/telnyx/models/verify_profile_message_template_response.rb +21 -0
  47. data/lib/telnyx/models/verify_profile_retrieve_templates_response.rb +3 -20
  48. data/lib/telnyx/models/verify_profile_update_template_response.rb +3 -20
  49. data/lib/telnyx/models.rb +7 -1
  50. data/lib/telnyx/resources/advanced_orders.rb +26 -26
  51. data/lib/telnyx/resources/calls/actions.rb +2 -2
  52. data/lib/telnyx/resources/legacy/reporting/batch_detail_records/messaging.rb +1 -1
  53. data/lib/telnyx/resources/legacy/reporting/batch_detail_records/voice.rb +1 -1
  54. data/lib/telnyx/version.rb +1 -1
  55. data/lib/telnyx.rb +11 -2
  56. data/rbi/telnyx/models/{advanced_order_update_params.rbi → advanced_order_update_requirement_group_params.rbi} +53 -25
  57. data/rbi/telnyx/models/{advanced_order_update_response.rbi → advanced_order_update_requirement_group_response.rbi} +1 -1
  58. data/rbi/telnyx/models/calls/transcription_start_request.rbi +1473 -3
  59. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/cdr_detailed_req_response.rbi +232 -0
  60. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/mdr_detail_report_response.rbi +346 -0
  61. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_params.rbi +4 -279
  62. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_response.rbi +4 -614
  63. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_delete_response.rbi +4 -614
  64. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_list_response.rbi +4 -614
  65. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/messaging_retrieve_response.rbi +4 -614
  66. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_create_response.rbi +4 -155
  67. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_delete_response.rbi +4 -155
  68. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_list_response.rbi +4 -155
  69. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.rbi +4 -155
  70. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/stt_detail_report_response.rbi +162 -0
  71. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_create_params.rbi +4 -279
  72. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_create_response.rbi +4 -500
  73. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_delete_response.rbi +4 -500
  74. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_list_response.rbi +4 -500
  75. data/rbi/telnyx/models/legacy/reporting/batch_detail_records/voice_retrieve_response.rbi +4 -500
  76. data/rbi/telnyx/models/legacy/reporting/filter.rbi +252 -0
  77. data/rbi/telnyx/models/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.rbi +157 -0
  78. data/rbi/telnyx/models/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.rbi +155 -0
  79. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_create_response.rbi +4 -148
  80. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_delete_response.rbi +4 -148
  81. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_list_response.rbi +4 -148
  82. data/rbi/telnyx/models/legacy/reporting/usage_reports/messaging_retrieve_response.rbi +4 -148
  83. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_create_response.rbi +4 -150
  84. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_delete_response.rbi +4 -150
  85. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_list_response.rbi +4 -150
  86. data/rbi/telnyx/models/legacy/reporting/usage_reports/voice_retrieve_response.rbi +4 -150
  87. data/rbi/telnyx/models/oauth_client.rbi +250 -0
  88. data/rbi/telnyx/models/oauth_client_create_response.rbi +4 -317
  89. data/rbi/telnyx/models/oauth_client_list_response.rbi +4 -313
  90. data/rbi/telnyx/models/oauth_client_retrieve_response.rbi +4 -317
  91. data/rbi/telnyx/models/oauth_client_update_response.rbi +4 -317
  92. data/rbi/telnyx/models/oauth_grant.rbi +95 -0
  93. data/rbi/telnyx/models/oauth_grant_delete_response.rbi +4 -127
  94. data/rbi/telnyx/models/oauth_grant_list_response.rbi +4 -123
  95. data/rbi/telnyx/models/oauth_grant_retrieve_response.rbi +4 -129
  96. data/rbi/telnyx/models/verify_profile_create_template_response.rbi +4 -44
  97. data/rbi/telnyx/models/verify_profile_message_template_response.rbi +35 -0
  98. data/rbi/telnyx/models/verify_profile_retrieve_templates_response.rbi +3 -45
  99. data/rbi/telnyx/models/verify_profile_update_template_response.rbi +4 -44
  100. data/rbi/telnyx/models.rbi +9 -1
  101. data/rbi/telnyx/resources/advanced_orders.rbi +16 -14
  102. data/rbi/telnyx/resources/calls/actions.rbi +5 -1
  103. data/rbi/telnyx/resources/legacy/reporting/batch_detail_records/messaging.rbi +1 -4
  104. data/rbi/telnyx/resources/legacy/reporting/batch_detail_records/voice.rbi +1 -4
  105. data/sig/telnyx/models/{advanced_order_update_params.rbs → advanced_order_update_requirement_group_params.rbs} +16 -16
  106. data/sig/telnyx/models/advanced_order_update_requirement_group_response.rbs +5 -0
  107. data/sig/telnyx/models/calls/transcription_start_request.rbs +585 -2
  108. data/sig/telnyx/models/legacy/reporting/batch_detail_records/cdr_detailed_req_response.rbs +142 -0
  109. data/sig/telnyx/models/legacy/reporting/batch_detail_records/mdr_detail_report_response.rbs +163 -0
  110. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_params.rbs +6 -108
  111. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_create_response.rbs +6 -262
  112. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_delete_response.rbs +6 -262
  113. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_list_response.rbs +6 -262
  114. data/sig/telnyx/models/legacy/reporting/batch_detail_records/messaging_retrieve_response.rbs +6 -262
  115. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_create_response.rbs +6 -82
  116. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_delete_response.rbs +6 -82
  117. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_list_response.rbs +6 -82
  118. data/sig/telnyx/models/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.rbs +6 -82
  119. data/sig/telnyx/models/legacy/reporting/batch_detail_records/stt_detail_report_response.rbs +85 -0
  120. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_create_params.rbs +6 -108
  121. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_create_response.rbs +6 -241
  122. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_delete_response.rbs +6 -241
  123. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_list_response.rbs +6 -241
  124. data/sig/telnyx/models/legacy/reporting/batch_detail_records/voice_retrieve_response.rbs +6 -241
  125. data/sig/telnyx/models/legacy/reporting/filter.rbs +109 -0
  126. data/sig/telnyx/models/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.rbs +105 -0
  127. data/sig/telnyx/models/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.rbs +105 -0
  128. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_create_response.rbs +6 -102
  129. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_delete_response.rbs +6 -102
  130. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_list_response.rbs +6 -102
  131. data/sig/telnyx/models/legacy/reporting/usage_reports/messaging_retrieve_response.rbs +6 -102
  132. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_create_response.rbs +6 -102
  133. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_delete_response.rbs +6 -102
  134. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_list_response.rbs +6 -102
  135. data/sig/telnyx/models/legacy/reporting/usage_reports/voice_retrieve_response.rbs +6 -102
  136. data/sig/telnyx/models/oauth_client.rbs +137 -0
  137. data/sig/telnyx/models/oauth_client_create_response.rbs +5 -144
  138. data/sig/telnyx/models/oauth_client_list_response.rbs +5 -141
  139. data/sig/telnyx/models/oauth_client_retrieve_response.rbs +5 -146
  140. data/sig/telnyx/models/oauth_client_update_response.rbs +5 -144
  141. data/sig/telnyx/models/oauth_grant.rbs +55 -0
  142. data/sig/telnyx/models/oauth_grant_delete_response.rbs +5 -62
  143. data/sig/telnyx/models/oauth_grant_list_response.rbs +5 -59
  144. data/sig/telnyx/models/oauth_grant_retrieve_response.rbs +5 -62
  145. data/sig/telnyx/models/verify_profile_create_template_response.rbs +6 -24
  146. data/sig/telnyx/models/verify_profile_message_template_response.rbs +19 -0
  147. data/sig/telnyx/models/verify_profile_retrieve_templates_response.rbs +4 -22
  148. data/sig/telnyx/models/verify_profile_update_template_response.rbs +6 -24
  149. data/sig/telnyx/models.rbs +7 -1
  150. data/sig/telnyx/resources/advanced_orders.rbs +6 -6
  151. data/sig/telnyx/resources/legacy/reporting/batch_detail_records/messaging.rbs +1 -1
  152. data/sig/telnyx/resources/legacy/reporting/batch_detail_records/voice.rbs +1 -1
  153. metadata +35 -8
  154. data/sig/telnyx/models/advanced_order_update_response.rbs +0 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c0d90b391d9d797493a52adef09010fc0bc3d34bdf89651ef3fd7e9bac6bbe1d
4
- data.tar.gz: 51247e4b07463a2676ca55495061f191f3ebcf4c69d2c0445179f3fb7e49400e
3
+ metadata.gz: 66e9f999b8b27d718f6ecddb4d71fe9ac87246e562beaccd9f2c625e464c50fb
4
+ data.tar.gz: c63740f6952346c92483f732008aba10b16102b69b87201eb018839d9ed89676
5
5
  SHA512:
6
- metadata.gz: 9ae1c055c7f48698c581beaa68bed0fbd5859e7c97d29fb9e14285a6a54913c3f54a0a93cc11b5930959c6df492457fb37f4532f3f752c3e31676316109d0d2b
7
- data.tar.gz: 9adfcedf8371deac1f96418946658ab1377842268037db6ce33b3a2761fcd7d0e5a446dd06ef6e3e34634a04fbc2c49767f6a7b14de906cd79453e989e56f589
6
+ metadata.gz: 01ba76462912eac40ef474cd0d4e76018e703ccaa4b135ead44ba1f83a2e128992392292b5ba0b71dc5065e07d3020c5ca084d925033041a3339fee4be94e007
7
+ data.tar.gz: 6f2b21b93807caac7d1248ddf0d0ba196c0e7a9af57338110b3b784d62a28ffc9f10936d37f9ec000b9238aae842d573143aab3c297af36574819028c1b5ecd8
data/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.1.0 (2025-10-06)
4
+
5
+ Full Changelog: [v4.0.0...v4.1.0](https://github.com/team-telnyx/telnyx-ruby/compare/v4.0.0...v4.1.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([29742e6](https://github.com/team-telnyx/telnyx-ruby/commit/29742e6ad6d820a8dab36a6b8dc620947c9eaddb))
10
+ * Engdesk 44932 ([6b9578e](https://github.com/team-telnyx/telnyx-ruby/commit/6b9578e96c7c5f173a8a1410839177c72a5019c3))
11
+ * Fix listing deepgram languages for transcription start ([aac336b](https://github.com/team-telnyx/telnyx-ruby/commit/aac336b7d6eb18598bed322853b9758c9ca2d0a8))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * coroutine leaks from connection pool ([af594e7](https://github.com/team-telnyx/telnyx-ruby/commit/af594e7c7ca9c21523ff23af7e603cd8c73384a1))
17
+
3
18
  ## 4.0.0 (2025-09-30)
4
19
 
5
20
  Full Changelog: [v3.0.6...v4.0.0](https://github.com/team-telnyx/telnyx-ruby/compare/v3.0.6...v4.0.0)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "telnyx", "~> 4.0.0"
18
+ gem "telnyx", "~> 4.1.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -134,9 +134,9 @@ module Telnyx
134
134
 
135
135
  # rubocop:disable Metrics/BlockLength
136
136
  enum = Enumerator.new do |y|
137
- with_pool(url, deadline: deadline) do |conn|
138
- next if finished
137
+ next if finished
139
138
 
139
+ with_pool(url, deadline: deadline) do |conn|
140
140
  req, closing = self.class.build_request(request) do
141
141
  self.class.calibrate_socket_timeout(conn, deadline)
142
142
  end
@@ -149,7 +149,7 @@ module Telnyx
149
149
 
150
150
  self.class.calibrate_socket_timeout(conn, deadline)
151
151
  conn.request(req) do |rsp|
152
- y << [conn, req, rsp]
152
+ y << [req, rsp]
153
153
  break if finished
154
154
 
155
155
  rsp.read_body do |bytes|
@@ -160,6 +160,8 @@ module Telnyx
160
160
  end
161
161
  eof = true
162
162
  end
163
+ ensure
164
+ conn.finish if !eof && conn&.started?
163
165
  end
164
166
  rescue Timeout::Error
165
167
  raise Telnyx::Errors::APITimeoutError.new(url: url, request: req)
@@ -168,16 +170,11 @@ module Telnyx
168
170
  end
169
171
  # rubocop:enable Metrics/BlockLength
170
172
 
171
- conn, _, response = enum.next
173
+ _, response = enum.next
172
174
  body = Telnyx::Internal::Util.fused_enum(enum, external: true) do
173
175
  finished = true
174
- tap do
175
- enum.next
176
- rescue StopIteration
177
- nil
178
- end
176
+ loop { enum.next }
179
177
  ensure
180
- conn.finish if !eof && conn&.started?
181
178
  closing&.call
182
179
  end
183
180
  [Integer(response.code), response, body]
@@ -2,8 +2,8 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- # @see Telnyx::Resources::AdvancedOrders#update
6
- class AdvancedOrderUpdateParams < Telnyx::Internal::Type::BaseModel
5
+ # @see Telnyx::Resources::AdvancedOrders#update_requirement_group
6
+ class AdvancedOrderUpdateRequirementGroupParams < Telnyx::Internal::Type::BaseModel
7
7
  extend Telnyx::Internal::Type::RequestParameters::Converter
8
8
  include Telnyx::Internal::Type::RequestParameters
9
9
 
@@ -29,14 +29,15 @@ module Telnyx
29
29
 
30
30
  # @!attribute features
31
31
  #
32
- # @return [Array<Symbol, Telnyx::Models::AdvancedOrderUpdateParams::Feature>, nil]
32
+ # @return [Array<Symbol, Telnyx::Models::AdvancedOrderUpdateRequirementGroupParams::Feature>, nil]
33
33
  optional :features,
34
- -> { Telnyx::Internal::Type::ArrayOf[enum: Telnyx::AdvancedOrderUpdateParams::Feature] }
34
+ -> { Telnyx::Internal::Type::ArrayOf[enum: Telnyx::AdvancedOrderUpdateRequirementGroupParams::Feature] }
35
35
 
36
36
  # @!attribute phone_number_type
37
37
  #
38
- # @return [Symbol, Telnyx::Models::AdvancedOrderUpdateParams::PhoneNumberType, nil]
39
- optional :phone_number_type, enum: -> { Telnyx::AdvancedOrderUpdateParams::PhoneNumberType }
38
+ # @return [Symbol, Telnyx::Models::AdvancedOrderUpdateRequirementGroupParams::PhoneNumberType, nil]
39
+ optional :phone_number_type,
40
+ enum: -> { Telnyx::AdvancedOrderUpdateRequirementGroupParams::PhoneNumberType }
40
41
 
41
42
  # @!attribute quantity
42
43
  #
@@ -58,9 +59,9 @@ module Telnyx
58
59
  #
59
60
  # @param customer_reference [String]
60
61
  #
61
- # @param features [Array<Symbol, Telnyx::Models::AdvancedOrderUpdateParams::Feature>]
62
+ # @param features [Array<Symbol, Telnyx::Models::AdvancedOrderUpdateRequirementGroupParams::Feature>]
62
63
  #
63
- # @param phone_number_type [Symbol, Telnyx::Models::AdvancedOrderUpdateParams::PhoneNumberType]
64
+ # @param phone_number_type [Symbol, Telnyx::Models::AdvancedOrderUpdateRequirementGroupParams::PhoneNumberType]
64
65
  #
65
66
  # @param quantity [Integer]
66
67
  #
@@ -3,6 +3,6 @@
3
3
  module Telnyx
4
4
  module Models
5
5
  # @type [Telnyx::Internal::Type::Converter]
6
- AdvancedOrderUpdateResponse = Telnyx::Internal::Type::Unknown
6
+ AdvancedOrderUpdateRequirementGroupResponse = Telnyx::Internal::Type::Unknown
7
7
  end
8
8
  end
@@ -19,14 +19,15 @@ module Telnyx
19
19
  optional :command_id, String
20
20
 
21
21
  # @!attribute transcription_engine
22
- # Engine to use for speech recognition. `A` - `Google`, `B` - `Telnyx`.
22
+ # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
23
+ # `Telnyx` are supported for backward compatibility.
23
24
  #
24
25
  # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngine, nil]
25
26
  optional :transcription_engine, enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngine }
26
27
 
27
28
  # @!attribute transcription_engine_config
28
29
  #
29
- # @return [Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig, nil]
30
+ # @return [Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram, Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig, nil]
30
31
  optional :transcription_engine_config,
31
32
  union: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig }
32
33
 
@@ -46,18 +47,22 @@ module Telnyx
46
47
  #
47
48
  # @param command_id [String] Use this field to avoid duplicate commands. Telnyx will ignore any command with
48
49
  #
49
- # @param transcription_engine [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngine] Engine to use for speech recognition. `A` - `Google`, `B` - `Telnyx`.
50
+ # @param transcription_engine [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngine] Engine to use for speech recognition. Legacy values `A` - `Google`, `B` - `Telny
50
51
  #
51
- # @param transcription_engine_config [Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig]
52
+ # @param transcription_engine_config [Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram, Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig]
52
53
  #
53
54
  # @param transcription_tracks [String] Indicates which leg of the call will be transcribed. Use `inbound` for the leg t
54
55
 
55
- # Engine to use for speech recognition. `A` - `Google`, `B` - `Telnyx`.
56
+ # Engine to use for speech recognition. Legacy values `A` - `Google`, `B` -
57
+ # `Telnyx` are supported for backward compatibility.
56
58
  #
57
59
  # @see Telnyx::Models::Calls::TranscriptionStartRequest#transcription_engine
58
60
  module TranscriptionEngine
59
61
  extend Telnyx::Internal::Type::Enum
60
62
 
63
+ GOOGLE = :Google
64
+ TELNYX = :Telnyx
65
+ DEEPGRAM = :Deepgram
61
66
  A = :A
62
67
  B = :B
63
68
 
@@ -71,12 +76,445 @@ module Telnyx
71
76
 
72
77
  discriminator :transcription_engine
73
78
 
79
+ variant :Google, -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google }
80
+
81
+ variant :Telnyx, -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx }
82
+
83
+ variant :Deepgram, -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram }
84
+
74
85
  variant :A, -> { Telnyx::Calls::TranscriptionEngineAConfig }
75
86
 
76
87
  variant :B, -> { Telnyx::Calls::TranscriptionEngineBConfig }
77
88
 
89
+ class Google < Telnyx::Internal::Type::BaseModel
90
+ # @!attribute enable_speaker_diarization
91
+ # Enables speaker diarization.
92
+ #
93
+ # @return [Boolean, nil]
94
+ optional :enable_speaker_diarization, Telnyx::Internal::Type::Boolean
95
+
96
+ # @!attribute hints
97
+ # Hints to improve transcription accuracy.
98
+ #
99
+ # @return [Array<String>, nil]
100
+ optional :hints, Telnyx::Internal::Type::ArrayOf[String]
101
+
102
+ # @!attribute interim_results
103
+ # Whether to send also interim results. If set to false, only final results will
104
+ # be sent.
105
+ #
106
+ # @return [Boolean, nil]
107
+ optional :interim_results, Telnyx::Internal::Type::Boolean
108
+
109
+ # @!attribute language
110
+ # Language to use for speech recognition
111
+ #
112
+ # @return [Symbol, Telnyx::Models::Calls::GoogleTranscriptionLanguage, nil]
113
+ optional :language, enum: -> { Telnyx::Calls::GoogleTranscriptionLanguage }
114
+
115
+ # @!attribute max_speaker_count
116
+ # Defines maximum number of speakers in the conversation.
117
+ #
118
+ # @return [Integer, nil]
119
+ optional :max_speaker_count, Integer
120
+
121
+ # @!attribute min_speaker_count
122
+ # Defines minimum number of speakers in the conversation.
123
+ #
124
+ # @return [Integer, nil]
125
+ optional :min_speaker_count, Integer
126
+
127
+ # @!attribute model
128
+ # The model to use for transcription.
129
+ #
130
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::Model, nil]
131
+ optional :model,
132
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::Model }
133
+
134
+ # @!attribute profanity_filter
135
+ # Enables profanity_filter.
136
+ #
137
+ # @return [Boolean, nil]
138
+ optional :profanity_filter, Telnyx::Internal::Type::Boolean
139
+
140
+ # @!attribute speech_context
141
+ # Speech context to improve transcription accuracy.
142
+ #
143
+ # @return [Array<Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::SpeechContext>, nil]
144
+ optional :speech_context,
145
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::SpeechContext] }
146
+
147
+ # @!attribute transcription_engine
148
+ # Engine identifier for Google transcription service
149
+ #
150
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::TranscriptionEngine, nil]
151
+ optional :transcription_engine,
152
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::TranscriptionEngine }
153
+
154
+ # @!attribute use_enhanced
155
+ # Enables enhanced transcription, this works for models `phone_call` and `video`.
156
+ #
157
+ # @return [Boolean, nil]
158
+ optional :use_enhanced, Telnyx::Internal::Type::Boolean
159
+
160
+ # @!method initialize(enable_speaker_diarization: nil, hints: nil, interim_results: nil, language: nil, max_speaker_count: nil, min_speaker_count: nil, model: nil, profanity_filter: nil, speech_context: nil, transcription_engine: nil, use_enhanced: nil)
161
+ # Some parameter documentations has been truncated, see
162
+ # {Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google}
163
+ # for more details.
164
+ #
165
+ # @param enable_speaker_diarization [Boolean] Enables speaker diarization.
166
+ #
167
+ # @param hints [Array<String>] Hints to improve transcription accuracy.
168
+ #
169
+ # @param interim_results [Boolean] Whether to send also interim results. If set to false, only final results will b
170
+ #
171
+ # @param language [Symbol, Telnyx::Models::Calls::GoogleTranscriptionLanguage] Language to use for speech recognition
172
+ #
173
+ # @param max_speaker_count [Integer] Defines maximum number of speakers in the conversation.
174
+ #
175
+ # @param min_speaker_count [Integer] Defines minimum number of speakers in the conversation.
176
+ #
177
+ # @param model [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::Model] The model to use for transcription.
178
+ #
179
+ # @param profanity_filter [Boolean] Enables profanity_filter.
180
+ #
181
+ # @param speech_context [Array<Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::SpeechContext>] Speech context to improve transcription accuracy.
182
+ #
183
+ # @param transcription_engine [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google::TranscriptionEngine] Engine identifier for Google transcription service
184
+ #
185
+ # @param use_enhanced [Boolean] Enables enhanced transcription, this works for models `phone_call` and `video`.
186
+
187
+ # The model to use for transcription.
188
+ #
189
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google#model
190
+ module Model
191
+ extend Telnyx::Internal::Type::Enum
192
+
193
+ LATEST_LONG = :latest_long
194
+ LATEST_SHORT = :latest_short
195
+ COMMAND_AND_SEARCH = :command_and_search
196
+ PHONE_CALL = :phone_call
197
+ VIDEO = :video
198
+ DEFAULT = :default
199
+ MEDICAL_CONVERSATION = :medical_conversation
200
+ MEDICAL_DICTATION = :medical_dictation
201
+
202
+ # @!method self.values
203
+ # @return [Array<Symbol>]
204
+ end
205
+
206
+ class SpeechContext < Telnyx::Internal::Type::BaseModel
207
+ # @!attribute boost
208
+ # Boost factor for the speech context.
209
+ #
210
+ # @return [Float, nil]
211
+ optional :boost, Float
212
+
213
+ # @!attribute phrases
214
+ #
215
+ # @return [Array<String>, nil]
216
+ optional :phrases, Telnyx::Internal::Type::ArrayOf[String]
217
+
218
+ # @!method initialize(boost: nil, phrases: nil)
219
+ # @param boost [Float] Boost factor for the speech context.
220
+ #
221
+ # @param phrases [Array<String>]
222
+ end
223
+
224
+ # Engine identifier for Google transcription service
225
+ #
226
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google#transcription_engine
227
+ module TranscriptionEngine
228
+ extend Telnyx::Internal::Type::Enum
229
+
230
+ GOOGLE = :Google
231
+
232
+ # @!method self.values
233
+ # @return [Array<Symbol>]
234
+ end
235
+ end
236
+
237
+ class Telnyx < Telnyx::Internal::Type::BaseModel
238
+ # @!attribute language
239
+ # Language to use for speech recognition
240
+ #
241
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::Language, nil]
242
+ optional :language,
243
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::Language }
244
+
245
+ # @!attribute transcription_engine
246
+ # Engine identifier for Telnyx transcription service
247
+ #
248
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::TranscriptionEngine, nil]
249
+ optional :transcription_engine,
250
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::TranscriptionEngine }
251
+
252
+ # @!attribute transcription_model
253
+ # The model to use for transcription.
254
+ #
255
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::TranscriptionModel, nil]
256
+ optional :transcription_model,
257
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::TranscriptionModel }
258
+
259
+ # @!method initialize(language: nil, transcription_engine: nil, transcription_model: nil)
260
+ # @param language [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::Language] Language to use for speech recognition
261
+ #
262
+ # @param transcription_engine [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::TranscriptionEngine] Engine identifier for Telnyx transcription service
263
+ #
264
+ # @param transcription_model [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx::TranscriptionModel] The model to use for transcription.
265
+
266
+ # Language to use for speech recognition
267
+ #
268
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx#language
269
+ module Language
270
+ extend Telnyx::Internal::Type::Enum
271
+
272
+ EN = :en
273
+ ZH = :zh
274
+ DE = :de
275
+ ES = :es
276
+ RU = :ru
277
+ KO = :ko
278
+ FR = :fr
279
+ JA = :ja
280
+ PT = :pt
281
+ TR = :tr
282
+ PL = :pl
283
+ CA = :ca
284
+ NL = :nl
285
+ AR = :ar
286
+ SV = :sv
287
+ IT = :it
288
+ ID = :id
289
+ HI = :hi
290
+ FI = :fi
291
+ VI = :vi
292
+ HE = :he
293
+ UK = :uk
294
+ EL = :el
295
+ MS = :ms
296
+ CS = :cs
297
+ RO = :ro
298
+ DA = :da
299
+ HU = :hu
300
+ TA = :ta
301
+ NO = :no
302
+ TH = :th
303
+ UR = :ur
304
+ HR = :hr
305
+ BG = :bg
306
+ LT = :lt
307
+ LA = :la
308
+ MI = :mi
309
+ ML = :ml
310
+ CY = :cy
311
+ SK = :sk
312
+ TE = :te
313
+ FA = :fa
314
+ LV = :lv
315
+ BN = :bn
316
+ SR = :sr
317
+ AZ = :az
318
+ SL = :sl
319
+ KN = :kn
320
+ ET = :et
321
+ MK = :mk
322
+ BR = :br
323
+ EU = :eu
324
+ IS = :is
325
+ HY = :hy
326
+ NE = :ne
327
+ MN = :mn
328
+ BS = :bs
329
+ KK = :kk
330
+ SQ = :sq
331
+ SW = :sw
332
+ GL = :gl
333
+ MR = :mr
334
+ PA = :pa
335
+ SI = :si
336
+ KM = :km
337
+ SN = :sn
338
+ YO = :yo
339
+ SO = :so
340
+ AF = :af
341
+ OC = :oc
342
+ KA = :ka
343
+ BE = :be
344
+ TG = :tg
345
+ SD = :sd
346
+ GU = :gu
347
+ AM = :am
348
+ YI = :yi
349
+ LO = :lo
350
+ UZ = :uz
351
+ FO = :fo
352
+ HT = :ht
353
+ PS = :ps
354
+ TK = :tk
355
+ NN = :nn
356
+ MT = :mt
357
+ SA = :sa
358
+ LB = :lb
359
+ MY = :my
360
+ BO = :bo
361
+ TL = :tl
362
+ MG = :mg
363
+ AS = :as
364
+ TT = :tt
365
+ HAW = :haw
366
+ LN = :ln
367
+ HA = :ha
368
+ BA = :ba
369
+ JW = :jw
370
+ SU = :su
371
+ AUTO_DETECT = :auto_detect
372
+
373
+ # @!method self.values
374
+ # @return [Array<Symbol>]
375
+ end
376
+
377
+ # Engine identifier for Telnyx transcription service
378
+ #
379
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx#transcription_engine
380
+ module TranscriptionEngine
381
+ extend Telnyx::Internal::Type::Enum
382
+
383
+ TELNYX = :Telnyx
384
+
385
+ # @!method self.values
386
+ # @return [Array<Symbol>]
387
+ end
388
+
389
+ # The model to use for transcription.
390
+ #
391
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx#transcription_model
392
+ module TranscriptionModel
393
+ extend Telnyx::Internal::Type::Enum
394
+
395
+ OPENAI_WHISPER_TINY = :"openai/whisper-tiny"
396
+ OPENAI_WHISPER_LARGE_V3_TURBO = :"openai/whisper-large-v3-turbo"
397
+
398
+ # @!method self.values
399
+ # @return [Array<Symbol>]
400
+ end
401
+ end
402
+
403
+ class Deepgram < Telnyx::Internal::Type::BaseModel
404
+ # @!attribute transcription_engine
405
+ # Engine identifier for Deepgram transcription service
406
+ #
407
+ # @return [Symbol, :Deepgram]
408
+ required :transcription_engine, const: :Deepgram
409
+
410
+ # @!attribute transcription_model
411
+ # The model to use for transcription.
412
+ #
413
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram::TranscriptionModel]
414
+ required :transcription_model,
415
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram::TranscriptionModel }
416
+
417
+ # @!attribute language
418
+ # Language to use for speech recognition. Available languages depend on the
419
+ # selected model.
420
+ #
421
+ # @return [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram::Language, nil]
422
+ optional :language,
423
+ enum: -> { Telnyx::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram::Language }
424
+
425
+ # @!method initialize(transcription_model:, language: nil, transcription_engine: :Deepgram)
426
+ # Some parameter documentations has been truncated, see
427
+ # {Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram}
428
+ # for more details.
429
+ #
430
+ # @param transcription_model [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram::TranscriptionModel] The model to use for transcription.
431
+ #
432
+ # @param language [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram::Language] Language to use for speech recognition. Available languages depend on the select
433
+ #
434
+ # @param transcription_engine [Symbol, :Deepgram] Engine identifier for Deepgram transcription service
435
+
436
+ # The model to use for transcription.
437
+ #
438
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram#transcription_model
439
+ module TranscriptionModel
440
+ extend Telnyx::Internal::Type::Enum
441
+
442
+ DEEPGRAM_NOVA_2 = :"deepgram/nova-2"
443
+ DEEPGRAM_NOVA_3 = :"deepgram/nova-3"
444
+
445
+ # @!method self.values
446
+ # @return [Array<Symbol>]
447
+ end
448
+
449
+ # Language to use for speech recognition. Available languages depend on the
450
+ # selected model.
451
+ #
452
+ # @see Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram#language
453
+ module Language
454
+ extend Telnyx::Internal::Type::Enum
455
+
456
+ BG = :bg
457
+ CA = :ca
458
+ ZH = :zh
459
+ ZH_CN = :"zh-CN"
460
+ ZH_HANS = :"zh-Hans"
461
+ ZH_TW = :"zh-TW"
462
+ ZH_HANT = :"zh-Hant"
463
+ ZH_HK = :"zh-HK"
464
+ CS = :cs
465
+ DA = :da
466
+ DA_DK = :"da-DK"
467
+ NL = :nl
468
+ EN = :en
469
+ EN_US = :"en-US"
470
+ EN_AU = :"en-AU"
471
+ EN_GB = :"en-GB"
472
+ EN_NZ = :"en-NZ"
473
+ EN_IN = :"en-IN"
474
+ ET = :et
475
+ FI = :fi
476
+ NL_BE = :"nl-BE"
477
+ FR = :fr
478
+ FR_CA = :"fr-CA"
479
+ DE = :de
480
+ DE_CH = :"de-CH"
481
+ EL = :el
482
+ HI = :hi
483
+ HU = :hu
484
+ ID = :id
485
+ IT = :it
486
+ JA = :ja
487
+ KO = :ko
488
+ KO_KR = :"ko-KR"
489
+ LV = :lv
490
+ LT = :lt
491
+ MS = :ms
492
+ NO = :no
493
+ PL = :pl
494
+ PT = :pt
495
+ PT_BR = :"pt-BR"
496
+ PT_PT = :"pt-PT"
497
+ RO = :ro
498
+ RU = :ru
499
+ SK = :sk
500
+ ES = :es
501
+ ES_419 = :"es-419"
502
+ SV = :sv
503
+ SV_SE = :"sv-SE"
504
+ TH = :th
505
+ TH_TH = :"th-TH"
506
+ TR = :tr
507
+ UK = :uk
508
+ VI = :vi
509
+ AUTO_DETECT = :auto_detect
510
+
511
+ # @!method self.values
512
+ # @return [Array<Symbol>]
513
+ end
514
+ end
515
+
78
516
  # @!method self.variants
79
- # @return [Array(Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig)]
517
+ # @return [Array(Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Google, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Telnyx, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Deepgram, Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig)]
80
518
  end
81
519
  end
82
520
  end