telnyx 5.119.0 → 5.120.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 (35) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +6 -0
  5. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +2 -2
  6. data/lib/telnyx/models/calls/action_speak_params.rb +2 -2
  7. data/lib/telnyx/models/conferences/action_speak_params.rb +2 -2
  8. data/lib/telnyx/models/voice_sdk_call_report_list_params.rb +56 -0
  9. data/lib/telnyx/models/voice_sdk_call_report_list_response.rb +385 -0
  10. data/lib/telnyx/models/voice_sdk_call_report_retrieve_params.rb +20 -0
  11. data/lib/telnyx/models/voice_sdk_call_report_retrieve_response.rb +390 -0
  12. data/lib/telnyx/models.rb +4 -0
  13. data/lib/telnyx/resources/voice_sdk_call_reports.rb +71 -0
  14. data/lib/telnyx/version.rb +1 -1
  15. data/lib/telnyx.rb +5 -0
  16. data/rbi/telnyx/client.rbi +5 -0
  17. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +4 -4
  18. data/rbi/telnyx/models/calls/action_speak_params.rbi +4 -4
  19. data/rbi/telnyx/models/conferences/action_speak_params.rbi +4 -4
  20. data/rbi/telnyx/models/voice_sdk_call_report_list_params.rbi +108 -0
  21. data/rbi/telnyx/models/voice_sdk_call_report_list_response.rbi +774 -0
  22. data/rbi/telnyx/models/voice_sdk_call_report_retrieve_params.rbi +38 -0
  23. data/rbi/telnyx/models/voice_sdk_call_report_retrieve_response.rbi +782 -0
  24. data/rbi/telnyx/models.rbi +5 -0
  25. data/rbi/telnyx/resources/calls/actions.rbi +4 -4
  26. data/rbi/telnyx/resources/conferences/actions.rbi +2 -2
  27. data/rbi/telnyx/resources/voice_sdk_call_reports.rbi +58 -0
  28. data/sig/telnyx/client.rbs +2 -0
  29. data/sig/telnyx/models/voice_sdk_call_report_list_params.rbs +57 -0
  30. data/sig/telnyx/models/voice_sdk_call_report_list_response.rbs +340 -0
  31. data/sig/telnyx/models/voice_sdk_call_report_retrieve_params.rbs +23 -0
  32. data/sig/telnyx/models/voice_sdk_call_report_retrieve_response.rbs +345 -0
  33. data/sig/telnyx/models.rbs +4 -0
  34. data/sig/telnyx/resources/voice_sdk_call_reports.rbs +19 -0
  35. metadata +17 -2
@@ -0,0 +1,390 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ class VoiceSDKCallReportRetrieveResponseItem < Telnyx::Internal::Type::BaseModel
6
+ # @!attribute call_id
7
+ # Unique call identifier.
8
+ #
9
+ # @return [String, nil]
10
+ optional :call_id, String
11
+
12
+ # @!attribute call_report_id
13
+ # User-scoped storage grouping identifier derived from the authenticated user.
14
+ # This is not a unique per-call report identifier and may be shared by multiple
15
+ # calls for the same user.
16
+ #
17
+ # @return [String, nil]
18
+ optional :call_report_id, String
19
+
20
+ # @!attribute created_at
21
+ # Creation timestamp when present.
22
+ #
23
+ # @return [Time, nil]
24
+ optional :created_at, Time
25
+
26
+ # @!attribute flush_reason
27
+ # Reason the SDK flushed this stats report segment, for example an intermediate
28
+ # socket-close flush.
29
+ #
30
+ # @return [Hash{Symbol=>Object}, nil]
31
+ optional :flush_reason,
32
+ Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown],
33
+ api_name: :flushReason
34
+
35
+ # @!attribute logs
36
+ # Raw logs payload emitted by the Voice SDK and stored without normalization. Live
37
+ # responses commonly return an array of log entries, but object-shaped log
38
+ # payloads are also allowed for compatibility.
39
+ #
40
+ # @return [Array<Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0>, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries, nil]
41
+ optional :logs, union: -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs }
42
+
43
+ # @!attribute organization_id
44
+ # Organization associated with the stored call report when provided by the Voice
45
+ # SDK reporting path.
46
+ #
47
+ # @return [String, nil]
48
+ optional :organization_id, String
49
+
50
+ # @!attribute segment
51
+ # Zero-based stats segment index when the SDK sends segmented or intermediate
52
+ # reports.
53
+ #
54
+ # @return [Integer, nil]
55
+ optional :segment, Integer
56
+
57
+ # @!attribute stats
58
+ # Raw stats payload emitted by the Voice SDK and stored without normalization. The
59
+ # exact shape can vary by SDK platform and version. Live responses commonly return
60
+ # an array of interval snapshots, but object-shaped stats payloads are also
61
+ # allowed for compatibility.
62
+ #
63
+ # @return [Array<Hash{Symbol=>Object}>, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats::UnionMember1, nil]
64
+ optional :stats, union: -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats }
65
+
66
+ # @!attribute stored_at
67
+ # Time when the call report was stored.
68
+ #
69
+ # @return [Time, nil]
70
+ optional :stored_at, Time
71
+
72
+ # @!attribute summary
73
+ # High-level call metadata.
74
+ #
75
+ # @return [Hash{Symbol=>Object}, nil]
76
+ optional :summary, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
77
+
78
+ # @!attribute telnyx_leg_id
79
+ # Telnyx call leg identifier for correlating the report with call-control, SIP,
80
+ # and media troubleshooting data.
81
+ #
82
+ # @return [String, nil]
83
+ optional :telnyx_leg_id, String
84
+
85
+ # @!attribute telnyx_session_id
86
+ # Telnyx RTC session identifier for correlating the report with Voice SDK
87
+ # signaling and media-session logs.
88
+ #
89
+ # @return [String, nil]
90
+ optional :telnyx_session_id, String
91
+
92
+ # @!attribute user_agent
93
+ # Voice SDK user agent string reported by the client. This is the preferred
94
+ # SDK/platform/version dimension when present.
95
+ #
96
+ # @return [String, nil]
97
+ optional :user_agent, String
98
+
99
+ # @!attribute user_id
100
+ # Authenticated user that owns the call report.
101
+ #
102
+ # @return [String, nil]
103
+ optional :user_id, String
104
+
105
+ # @!attribute version
106
+ # Legacy SDK version value when the client reports one separately from the user
107
+ # agent.
108
+ #
109
+ # @return [String, nil]
110
+ optional :version, String
111
+
112
+ # @!attribute voice_sdk_id
113
+ # Voice SDK instance identifier.
114
+ #
115
+ # @return [String, nil]
116
+ optional :voice_sdk_id, String
117
+
118
+ # @!attribute voice_sdk_id_decoded
119
+ # Decoded Voice SDK identifier metadata emitted by voice-sdk-proxy when available.
120
+ #
121
+ # @return [Hash{Symbol=>Object}, nil]
122
+ optional :voice_sdk_id_decoded, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
123
+
124
+ # @!attribute voice_sdk_session_id
125
+ # Voice SDK session correlation identifier used to group stats segments for the
126
+ # same SDK session.
127
+ #
128
+ # @return [String, nil]
129
+ optional :voice_sdk_session_id, String
130
+
131
+ # @!method initialize(call_id: nil, call_report_id: nil, created_at: nil, flush_reason: nil, logs: nil, organization_id: nil, segment: nil, stats: nil, stored_at: nil, summary: nil, telnyx_leg_id: nil, telnyx_session_id: nil, user_agent: nil, user_id: nil, version: nil, voice_sdk_id: nil, voice_sdk_id_decoded: nil, voice_sdk_session_id: nil)
132
+ # Some parameter documentations has been truncated, see
133
+ # {Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem} for more details.
134
+ #
135
+ # A raw call report stats JSON payload. The schema is intentionally permissive
136
+ # because Voice SDK clients can add fields over time.
137
+ #
138
+ # @param call_id [String] Unique call identifier.
139
+ #
140
+ # @param call_report_id [String] User-scoped storage grouping identifier derived from the authenticated user. Thi
141
+ #
142
+ # @param created_at [Time] Creation timestamp when present.
143
+ #
144
+ # @param flush_reason [Hash{Symbol=>Object}] Reason the SDK flushed this stats report segment, for example an intermediate so
145
+ #
146
+ # @param logs [Array<Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0>, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries] Raw logs payload emitted by the Voice SDK and stored without normalization. Live
147
+ #
148
+ # @param organization_id [String] Organization associated with the stored call report when provided by the Voice S
149
+ #
150
+ # @param segment [Integer] Zero-based stats segment index when the SDK sends segmented or intermediate repo
151
+ #
152
+ # @param stats [Array<Hash{Symbol=>Object}>, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats::UnionMember1] Raw stats payload emitted by the Voice SDK and stored without normalization. The
153
+ #
154
+ # @param stored_at [Time] Time when the call report was stored.
155
+ #
156
+ # @param summary [Hash{Symbol=>Object}] High-level call metadata.
157
+ #
158
+ # @param telnyx_leg_id [String] Telnyx call leg identifier for correlating the report with call-control, SIP, an
159
+ #
160
+ # @param telnyx_session_id [String] Telnyx RTC session identifier for correlating the report with Voice SDK signalin
161
+ #
162
+ # @param user_agent [String] Voice SDK user agent string reported by the client. This is the preferred SDK/pl
163
+ #
164
+ # @param user_id [String] Authenticated user that owns the call report.
165
+ #
166
+ # @param version [String] Legacy SDK version value when the client reports one separately from the user ag
167
+ #
168
+ # @param voice_sdk_id [String] Voice SDK instance identifier.
169
+ #
170
+ # @param voice_sdk_id_decoded [Hash{Symbol=>Object}] Decoded Voice SDK identifier metadata emitted by voice-sdk-proxy when available.
171
+ #
172
+ # @param voice_sdk_session_id [String] Voice SDK session correlation identifier used to group stats segments for the sa
173
+
174
+ # Raw logs payload emitted by the Voice SDK and stored without normalization. Live
175
+ # responses commonly return an array of log entries, but object-shaped log
176
+ # payloads are also allowed for compatibility.
177
+ #
178
+ # @see Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem#logs
179
+ module Logs
180
+ extend Telnyx::Internal::Type::Union
181
+
182
+ # Raw log entries emitted by the Voice SDK.
183
+ variant -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0Array }
184
+
185
+ # Raw logs object emitted by the Voice SDK when logs are grouped under an entries field.
186
+ variant -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries }
187
+
188
+ class UnionMember0 < Telnyx::Internal::Type::BaseModel
189
+ # @!attribute context
190
+ # Raw structured context attached to the log entry.
191
+ #
192
+ # @return [Hash{Symbol=>Object}, nil]
193
+ optional :context, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
194
+
195
+ # @!attribute level
196
+ # Log level emitted by the SDK.
197
+ #
198
+ # @return [Symbol, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0::Level, nil]
199
+ optional :level,
200
+ enum: -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0::Level }
201
+
202
+ # @!attribute message
203
+ # Log message.
204
+ #
205
+ # @return [String, nil]
206
+ optional :message, String
207
+
208
+ # @!attribute timestamp
209
+ # Time when the log entry was emitted.
210
+ #
211
+ # @return [Time, nil]
212
+ optional :timestamp, Time
213
+
214
+ # @!method initialize(context: nil, level: nil, message: nil, timestamp: nil)
215
+ # A raw Voice SDK log entry. Additional SDK-specific fields may be present.
216
+ #
217
+ # @param context [Hash{Symbol=>Object}] Raw structured context attached to the log entry.
218
+ #
219
+ # @param level [Symbol, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0::Level] Log level emitted by the SDK.
220
+ #
221
+ # @param message [String] Log message.
222
+ #
223
+ # @param timestamp [Time] Time when the log entry was emitted.
224
+
225
+ # Log level emitted by the SDK.
226
+ #
227
+ # @see Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0#level
228
+ module Level
229
+ extend Telnyx::Internal::Type::Enum
230
+
231
+ DEBUG = :debug
232
+ INFO = :info
233
+ WARN = :warn
234
+ ERROR = :error
235
+
236
+ # @!method self.values
237
+ # @return [Array<Symbol>]
238
+ end
239
+ end
240
+
241
+ class Entries < Telnyx::Internal::Type::BaseModel
242
+ # @!attribute entries
243
+ # Raw log entries when the SDK groups logs under an entries field.
244
+ #
245
+ # @return [Array<Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry>, nil]
246
+ optional :entries,
247
+ -> { Telnyx::Internal::Type::ArrayOf[Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry] }
248
+
249
+ # @!method initialize(entries: nil)
250
+ # Raw logs object emitted by the Voice SDK when logs are grouped under an entries
251
+ # field.
252
+ #
253
+ # @param entries [Array<Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry>] Raw log entries when the SDK groups logs under an entries field.
254
+
255
+ class Entry < Telnyx::Internal::Type::BaseModel
256
+ # @!attribute context
257
+ # Raw structured context attached to the log entry.
258
+ #
259
+ # @return [Hash{Symbol=>Object}, nil]
260
+ optional :context, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
261
+
262
+ # @!attribute level
263
+ # Log level emitted by the SDK.
264
+ #
265
+ # @return [Symbol, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry::Level, nil]
266
+ optional :level,
267
+ enum: -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry::Level }
268
+
269
+ # @!attribute message
270
+ # Log message.
271
+ #
272
+ # @return [String, nil]
273
+ optional :message, String
274
+
275
+ # @!attribute timestamp
276
+ # Time when the log entry was emitted.
277
+ #
278
+ # @return [Time, nil]
279
+ optional :timestamp, Time
280
+
281
+ # @!method initialize(context: nil, level: nil, message: nil, timestamp: nil)
282
+ # A raw Voice SDK log entry. Additional SDK-specific fields may be present.
283
+ #
284
+ # @param context [Hash{Symbol=>Object}] Raw structured context attached to the log entry.
285
+ #
286
+ # @param level [Symbol, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry::Level] Log level emitted by the SDK.
287
+ #
288
+ # @param message [String] Log message.
289
+ #
290
+ # @param timestamp [Time] Time when the log entry was emitted.
291
+
292
+ # Log level emitted by the SDK.
293
+ #
294
+ # @see Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries::Entry#level
295
+ module Level
296
+ extend Telnyx::Internal::Type::Enum
297
+
298
+ DEBUG = :debug
299
+ INFO = :info
300
+ WARN = :warn
301
+ ERROR = :error
302
+
303
+ # @!method self.values
304
+ # @return [Array<Symbol>]
305
+ end
306
+ end
307
+ end
308
+
309
+ # @!method self.variants
310
+ # @return [Array(Array<Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0>, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::Entries)]
311
+
312
+ # @type [Telnyx::Internal::Type::Converter]
313
+ UnionMember0Array =
314
+ Telnyx::Internal::Type::ArrayOf[-> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Logs::UnionMember0 }]
315
+ end
316
+
317
+ # Raw stats payload emitted by the Voice SDK and stored without normalization. The
318
+ # exact shape can vary by SDK platform and version. Live responses commonly return
319
+ # an array of interval snapshots, but object-shaped stats payloads are also
320
+ # allowed for compatibility.
321
+ #
322
+ # @see Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem#stats
323
+ module Stats
324
+ extend Telnyx::Internal::Type::Union
325
+
326
+ # Raw interval stats snapshots emitted by the Voice SDK.
327
+ variant -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats::UnionMember0Array }
328
+
329
+ # Raw stats object emitted by the Voice SDK.
330
+ variant -> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats::UnionMember1 }
331
+
332
+ class UnionMember1 < Telnyx::Internal::Type::BaseModel
333
+ # @!attribute audio
334
+ # Raw audio stats such as inbound/outbound packet, byte, jitter, packet-loss,
335
+ # bitrate, and audio-level metrics.
336
+ #
337
+ # @return [Hash{Symbol=>Object}, nil]
338
+ optional :audio, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
339
+
340
+ # @!attribute connection
341
+ # Raw connection stats such as round-trip time, packets, and bytes sent or
342
+ # received.
343
+ #
344
+ # @return [Hash{Symbol=>Object}, nil]
345
+ optional :connection, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
346
+
347
+ # @!attribute ice
348
+ # Raw ICE candidate-pair information, including selected pair, local/remote
349
+ # candidates, state, and nomination data when provided by the SDK.
350
+ #
351
+ # @return [Hash{Symbol=>Object}, nil]
352
+ optional :ice, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
353
+
354
+ # @!attribute transport
355
+ # Raw transport stats such as ICE state, DTLS state, SRTP cipher, TLS version, and
356
+ # selected-candidate-pair changes.
357
+ #
358
+ # @return [Hash{Symbol=>Object}, nil]
359
+ optional :transport, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
360
+
361
+ # @!method initialize(audio: nil, connection: nil, ice: nil, transport: nil)
362
+ # Some parameter documentations has been truncated, see
363
+ # {Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats::UnionMember1}
364
+ # for more details.
365
+ #
366
+ # Raw stats object emitted by the Voice SDK.
367
+ #
368
+ # @param audio [Hash{Symbol=>Object}] Raw audio stats such as inbound/outbound packet, byte, jitter, packet-loss, bitr
369
+ #
370
+ # @param connection [Hash{Symbol=>Object}] Raw connection stats such as round-trip time, packets, and bytes sent or receive
371
+ #
372
+ # @param ice [Hash{Symbol=>Object}] Raw ICE candidate-pair information, including selected pair, local/remote candid
373
+ #
374
+ # @param transport [Hash{Symbol=>Object}] Raw transport stats such as ICE state, DTLS state, SRTP cipher, TLS version, and
375
+ end
376
+
377
+ # @!method self.variants
378
+ # @return [Array(Array<Hash{Symbol=>Object}>, Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem::Stats::UnionMember1)]
379
+
380
+ # @type [Telnyx::Internal::Type::Converter]
381
+ UnionMember0Array =
382
+ Telnyx::Internal::Type::ArrayOf[Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]]
383
+ end
384
+ end
385
+
386
+ # @type [Telnyx::Internal::Type::Converter]
387
+ VoiceSDKCallReportRetrieveResponse =
388
+ Telnyx::Internal::Type::ArrayOf[-> { Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem }]
389
+ end
390
+ end
data/lib/telnyx/models.rb CHANGED
@@ -1777,6 +1777,10 @@ module Telnyx
1777
1777
 
1778
1778
  VoiceDesignRetrieveParams = Telnyx::Models::VoiceDesignRetrieveParams
1779
1779
 
1780
+ VoiceSDKCallReportListParams = Telnyx::Models::VoiceSDKCallReportListParams
1781
+
1782
+ VoiceSDKCallReportRetrieveParams = Telnyx::Models::VoiceSDKCallReportRetrieveParams
1783
+
1780
1784
  WebhookAPIVersion = Telnyx::Models::WebhookAPIVersion
1781
1785
 
1782
1786
  WebhookDeliveryListParams = Telnyx::Models::WebhookDeliveryListParams
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ # Retrieve raw Voice SDK call report stats payloads for WebRTC call
6
+ # troubleshooting.
7
+ class VoiceSDKCallReports
8
+ # Returns raw call report stats JSON payloads stored for the authenticated user
9
+ # and `call_id`. The user is derived from Telnyx authentication, not from request
10
+ # parameters.
11
+ #
12
+ # @overload retrieve(call_id, request_options: {})
13
+ #
14
+ # @param call_id [String] Call identifier used to retrieve reports owned by the authenticated user.
15
+ #
16
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
17
+ #
18
+ # @return [Array<Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem>]
19
+ #
20
+ # @see Telnyx::Models::VoiceSDKCallReportRetrieveParams
21
+ def retrieve(call_id, params = {})
22
+ @client.request(
23
+ method: :get,
24
+ path: ["voice_sdk_call_reports/%1$s", call_id],
25
+ model: Telnyx::Internal::Type::ArrayOf[Telnyx::Models::VoiceSDKCallReportRetrieveResponseItem],
26
+ options: params[:request_options]
27
+ )
28
+ end
29
+
30
+ # Some parameter documentations has been truncated, see
31
+ # {Telnyx::Models::VoiceSDKCallReportListParams} for more details.
32
+ #
33
+ # Returns paginated raw call report stats JSON payloads stored for the
34
+ # authenticated user. The user is derived from Telnyx authentication, not from
35
+ # request parameters.
36
+ #
37
+ # @overload list(page_number: nil, page_size: nil, sort: nil, request_options: {})
38
+ #
39
+ # @param page_number [Integer]
40
+ #
41
+ # @param page_size [Integer]
42
+ #
43
+ # @param sort [Symbol, Telnyx::Models::VoiceSDKCallReportListParams::Sort] Set the order of the results by creation date. `asc` and `created_at` sort oldes
44
+ #
45
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
46
+ #
47
+ # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::VoiceSDKCallReportListResponse>]
48
+ #
49
+ # @see Telnyx::Models::VoiceSDKCallReportListParams
50
+ def list(params = {})
51
+ parsed, options = Telnyx::VoiceSDKCallReportListParams.dump_request(params)
52
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
53
+ @client.request(
54
+ method: :get,
55
+ path: "voice_sdk_call_reports",
56
+ query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
57
+ page: Telnyx::Internal::DefaultFlatPagination,
58
+ model: Telnyx::Models::VoiceSDKCallReportListResponse,
59
+ options: options
60
+ )
61
+ end
62
+
63
+ # @api private
64
+ #
65
+ # @param client [Telnyx::Client]
66
+ def initialize(client:)
67
+ @client = client
68
+ end
69
+ end
70
+ end
71
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Telnyx
4
- VERSION = "5.119.0"
4
+ VERSION = "5.120.0"
5
5
  end
data/lib/telnyx.rb CHANGED
@@ -2327,6 +2327,10 @@ require_relative "telnyx/models/voice_design_rename_params"
2327
2327
  require_relative "telnyx/models/voice_design_rename_response"
2328
2328
  require_relative "telnyx/models/voice_design_retrieve_params"
2329
2329
  require_relative "telnyx/models/voice_design_retrieve_response"
2330
+ require_relative "telnyx/models/voice_sdk_call_report_list_params"
2331
+ require_relative "telnyx/models/voice_sdk_call_report_list_response"
2332
+ require_relative "telnyx/models/voice_sdk_call_report_retrieve_params"
2333
+ require_relative "telnyx/models/voice_sdk_call_report_retrieve_response"
2330
2334
  require_relative "telnyx/models/webhook_api_version"
2331
2335
  require_relative "telnyx/models/webhook_delivery_list_params"
2332
2336
  require_relative "telnyx/models/webhook_delivery_list_response"
@@ -2741,6 +2745,7 @@ require_relative "telnyx/resources/virtual_cross_connects"
2741
2745
  require_relative "telnyx/resources/virtual_cross_connects_coverage"
2742
2746
  require_relative "telnyx/resources/voice_clones"
2743
2747
  require_relative "telnyx/resources/voice_designs"
2748
+ require_relative "telnyx/resources/voice_sdk_call_reports"
2744
2749
  require_relative "telnyx/resources/webhook_deliveries"
2745
2750
  require_relative "telnyx/resources/webhooks"
2746
2751
  require_relative "telnyx/resources/well_known"
@@ -658,6 +658,11 @@ module Telnyx
658
658
  sig { returns(Telnyx::Resources::UacConnections) }
659
659
  attr_reader :uac_connections
660
660
 
661
+ # Retrieve raw Voice SDK call report stats payloads for WebRTC call
662
+ # troubleshooting.
663
+ sig { returns(Telnyx::Resources::VoiceSDKCallReports) }
664
+ attr_reader :voice_sdk_call_reports
665
+
661
666
  # @api private
662
667
  sig { override.returns(T::Hash[String, String]) }
663
668
  private def auth_headers
@@ -54,8 +54,8 @@ module Telnyx
54
54
  # `speech-02-hd`, `speech-2.6-turbo`, `speech-2.8-turbo`. Use `voice_settings`
55
55
  # to configure speed, volume, pitch, and language_boost.
56
56
  # - **Rime:** Use `Rime.<model_id>.<voice_id>` (e.g., `Rime.Arcana.cove`).
57
- # Supported model_ids: `Arcana`, `Mist`. Use `voice_settings` to configure
58
- # voice_speed.
57
+ # Supported model_ids: `Arcana`, `Mist`, `ArcanaV3`, `Coda`. Use
58
+ # `voice_settings` to configure voice_speed.
59
59
  # - **Resemble:** Use `Resemble.Turbo.<voice_id>` (e.g.,
60
60
  # `Resemble.Turbo.my_voice`). Only `Turbo` model is supported. Use
61
61
  # `voice_settings` to configure precision, sample_rate, and format.
@@ -314,8 +314,8 @@ module Telnyx
314
314
  # `speech-02-hd`, `speech-2.6-turbo`, `speech-2.8-turbo`. Use `voice_settings`
315
315
  # to configure speed, volume, pitch, and language_boost.
316
316
  # - **Rime:** Use `Rime.<model_id>.<voice_id>` (e.g., `Rime.Arcana.cove`).
317
- # Supported model_ids: `Arcana`, `Mist`. Use `voice_settings` to configure
318
- # voice_speed.
317
+ # Supported model_ids: `Arcana`, `Mist`, `ArcanaV3`, `Coda`. Use
318
+ # `voice_settings` to configure voice_speed.
319
319
  # - **Resemble:** Use `Resemble.Turbo.<voice_id>` (e.g.,
320
320
  # `Resemble.Turbo.my_voice`). Only `Turbo` model is supported. Use
321
321
  # `voice_settings` to configure precision, sample_rate, and format.
@@ -51,8 +51,8 @@ module Telnyx
51
51
  # `speech-02-hd`, `speech-2.6-turbo`, `speech-2.8-turbo`. Use `voice_settings`
52
52
  # to configure speed, volume, pitch, and language_boost.
53
53
  # - **Rime:** Use `Rime.<model_id>.<voice_id>` (e.g., `Rime.Arcana.cove`).
54
- # Supported model_ids: `Arcana`, `Mist`. Use `voice_settings` to configure
55
- # voice_speed.
54
+ # Supported model_ids: `Arcana`, `Mist`, `ArcanaV3`, `Coda`. Use
55
+ # `voice_settings` to configure voice_speed.
56
56
  # - **Resemble:** Use `Resemble.Turbo.<voice_id>` (e.g.,
57
57
  # `Resemble.Turbo.my_voice`). Only `Turbo` model is supported. Use
58
58
  # `voice_settings` to configure precision, sample_rate, and format.
@@ -269,8 +269,8 @@ module Telnyx
269
269
  # `speech-02-hd`, `speech-2.6-turbo`, `speech-2.8-turbo`. Use `voice_settings`
270
270
  # to configure speed, volume, pitch, and language_boost.
271
271
  # - **Rime:** Use `Rime.<model_id>.<voice_id>` (e.g., `Rime.Arcana.cove`).
272
- # Supported model_ids: `Arcana`, `Mist`. Use `voice_settings` to configure
273
- # voice_speed.
272
+ # Supported model_ids: `Arcana`, `Mist`, `ArcanaV3`, `Coda`. Use
273
+ # `voice_settings` to configure voice_speed.
274
274
  # - **Resemble:** Use `Resemble.Turbo.<voice_id>` (e.g.,
275
275
  # `Resemble.Turbo.my_voice`). Only `Turbo` model is supported. Use
276
276
  # `voice_settings` to configure precision, sample_rate, and format.
@@ -54,8 +54,8 @@ module Telnyx
54
54
  # `speech-02-hd`, `speech-2.6-turbo`, `speech-2.8-turbo`. Use `voice_settings`
55
55
  # to configure speed, volume, pitch, and language_boost.
56
56
  # - **Rime:** Use `Rime.<model_id>.<voice_id>` (e.g., `Rime.Arcana.cove`).
57
- # Supported model_ids: `Arcana`, `Mist`. Use `voice_settings` to configure
58
- # voice_speed.
57
+ # Supported model_ids: `Arcana`, `Mist`, `ArcanaV3`, `Coda`. Use
58
+ # `voice_settings` to configure voice_speed.
59
59
  # - **Resemble:** Use `Resemble.Turbo.<voice_id>` (e.g.,
60
60
  # `Resemble.Turbo.my_voice`). Only `Turbo` model is supported. Use
61
61
  # `voice_settings` to configure precision, sample_rate, and format.
@@ -240,8 +240,8 @@ module Telnyx
240
240
  # `speech-02-hd`, `speech-2.6-turbo`, `speech-2.8-turbo`. Use `voice_settings`
241
241
  # to configure speed, volume, pitch, and language_boost.
242
242
  # - **Rime:** Use `Rime.<model_id>.<voice_id>` (e.g., `Rime.Arcana.cove`).
243
- # Supported model_ids: `Arcana`, `Mist`. Use `voice_settings` to configure
244
- # voice_speed.
243
+ # Supported model_ids: `Arcana`, `Mist`, `ArcanaV3`, `Coda`. Use
244
+ # `voice_settings` to configure voice_speed.
245
245
  # - **Resemble:** Use `Resemble.Turbo.<voice_id>` (e.g.,
246
246
  # `Resemble.Turbo.my_voice`). Only `Turbo` model is supported. Use
247
247
  # `voice_settings` to configure precision, sample_rate, and format.