zernio-sdk 0.0.840 → 0.0.842

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d69a7a0a96c5f15482295dd4f48e67cd59b867e7b8804003ad0b8c372c7982f6
4
- data.tar.gz: bc0747567f6819c4c6b1a122a828a590abefa8a86fcfcaa0ca9ea2a9f3a2383c
3
+ metadata.gz: 6691c1e78037b79839090a02aa4018a7bc1175b6db39a7a38949829ce4747492
4
+ data.tar.gz: 7be3055a36316f2b421a9177532b2c2aa53bf7c8995dfb903607239362f1bcdc
5
5
  SHA512:
6
- metadata.gz: 98c6bfa941406a59f0e2daa80de0c1446ee888de785519f694c4df42d9b7af036637aa84d7347053e4eb281b079b9c41b3f174bbd203b4f0bebbd4d3aab34fde
7
- data.tar.gz: f86c7f1718850be52134204b4830551abe7518281622e69542d6b2f02df0c043d15b16373aa0449579672d648e76a19c0746ba3d3c39b041ca428433f199d787
6
+ metadata.gz: 448856449fc109d9c728e260ca52e22006b3e8721ee38543237a9595b6ca5dd74db5776b98b0321c352f94dc3a4f4a551355666d04ea9fadf0437ca517f725ce
7
+ data.tar.gz: e8e3340414885a9743c72e0ab6713e0ea03667f794525fbd489ebb8fc4415ed89cb7577d6f392e51e575217c63baf353fb83d0d0aadc4182c918241412787762
data/docs/Webhook.md CHANGED
@@ -11,7 +11,7 @@
11
11
  | **events** | **Array<String>** | Events subscribed to | [optional] |
12
12
  | **is_active** | **Boolean** | Whether webhook delivery is enabled | [optional] |
13
13
  | **last_fired_at** | **Time** | Timestamp of last successful webhook delivery | [optional] |
14
- | **failure_count** | **Integer** | Consecutive delivery failures (resets on success, webhook disabled at 10) | [optional] |
14
+ | **failure_count** | **Integer** | Consecutive terminal delivery failures (resets to 0 on any successful delivery). Auto-disable only triggers when the endpoint has had no successful delivery within a 3-day window AND either reaches 20 consecutive terminal failures or has been failing continuously for 3 days; any success within that window keeps the endpoint enabled regardless of the count. | [optional] |
15
15
  | **custom_headers** | **Hash<String, String>** | Custom headers included in webhook requests | [optional] |
16
16
  | **disabled_resource_groups** | **Array<String>** | Resource groups this subscription does not receive (opt-out denylist, same vocabulary and same semantics as the field on API keys). Absent or empty means the subscription receives every event listed in `events`, which is how every subscription created before this field existed behaves. An event whose group is listed here is dropped before delivery even when it is still present in `events`, and the same check runs on every replay path (test fire, redelivery, dead-letter requeue). Editing the denylist applies to every event emitted afterwards; events already queued when the edit landed can still be delivered for up to five minutes after they were enqueued. | [optional] |
17
17
 
@@ -17,6 +17,8 @@
17
17
  | **end_reason** | **String** | | [optional] |
18
18
  | **hangup_cause** | **String** | Raw carrier hangup cause behind endReason (e.g. normal_clearing, call_rejected, not_found). Null when the carrier reported none. | [optional] |
19
19
  | **sip_hangup_cause** | **String** | SIP response code that ended the call when SIP-signalled (e.g. '403', '486', '603'). endReason collapses all three to 'rejected', so this is what separates a refused destination from a busy line. Null on non-SIP legs. | [optional] |
20
+ | **is_voicemail** | **Boolean** | True when the inbound call was handled by voicemail, whether scheduled or because the forward did not connect. | [optional] |
21
+ | **call_errors** | [**Array<CallRecordCallErrorsInner>**](CallRecordCallErrorsInner.md) | Failures recorded on the call up to hangup (bridge failed, dial failed, recording error). Empty on a clean call. `message` is free-form diagnostic text and is not stable, do not parse it. `code` is 0 unless a provider code is known. Errors the carrier reports after hangup appear only on GET /v1/calls/{id}. | [optional] |
20
22
  | **recording_url** | **String** | | [optional] |
21
23
  | **recording_expires_at** | **Time** | | [optional] |
22
24
  | **billing** | [**WebhookPayloadCallEndedCallBilling**](WebhookPayloadCallEndedCallBilling.md) | | [optional] |
@@ -40,6 +42,8 @@ instance = Zernio::WebhookPayloadCallEndedCall.new(
40
42
  end_reason: null,
41
43
  hangup_cause: null,
42
44
  sip_hangup_cause: null,
45
+ is_voicemail: null,
46
+ call_errors: null,
43
47
  recording_url: null,
44
48
  recording_expires_at: null,
45
49
  billing: null
@@ -37,7 +37,7 @@ module Zernio
37
37
  # Timestamp of last successful webhook delivery
38
38
  attr_accessor :last_fired_at
39
39
 
40
- # Consecutive delivery failures (resets on success, webhook disabled at 10)
40
+ # Consecutive terminal delivery failures (resets to 0 on any successful delivery). Auto-disable only triggers when the endpoint has had no successful delivery within a 3-day window AND either reaches 20 consecutive terminal failures or has been failing continuously for 3 days; any success within that window keeps the endpoint enabled regardless of the count.
41
41
  attr_accessor :failure_count
42
42
 
43
43
  # Custom headers included in webhook requests
@@ -43,6 +43,12 @@ module Zernio
43
43
  # SIP response code that ended the call when SIP-signalled (e.g. '403', '486', '603'). endReason collapses all three to 'rejected', so this is what separates a refused destination from a busy line. Null on non-SIP legs.
44
44
  attr_accessor :sip_hangup_cause
45
45
 
46
+ # True when the inbound call was handled by voicemail, whether scheduled or because the forward did not connect.
47
+ attr_accessor :is_voicemail
48
+
49
+ # Failures recorded on the call up to hangup (bridge failed, dial failed, recording error). Empty on a clean call. `message` is free-form diagnostic text and is not stable, do not parse it. `code` is 0 unless a provider code is known. Errors the carrier reports after hangup appear only on GET /v1/calls/{id}.
50
+ attr_accessor :call_errors
51
+
46
52
  attr_accessor :recording_url
47
53
 
48
54
  attr_accessor :recording_expires_at
@@ -87,6 +93,8 @@ module Zernio
87
93
  :'end_reason' => :'endReason',
88
94
  :'hangup_cause' => :'hangupCause',
89
95
  :'sip_hangup_cause' => :'sipHangupCause',
96
+ :'is_voicemail' => :'isVoicemail',
97
+ :'call_errors' => :'callErrors',
90
98
  :'recording_url' => :'recordingUrl',
91
99
  :'recording_expires_at' => :'recordingExpiresAt',
92
100
  :'billing' => :'billing'
@@ -119,6 +127,8 @@ module Zernio
119
127
  :'end_reason' => :'String',
120
128
  :'hangup_cause' => :'String',
121
129
  :'sip_hangup_cause' => :'String',
130
+ :'is_voicemail' => :'Boolean',
131
+ :'call_errors' => :'Array<CallRecordCallErrorsInner>',
122
132
  :'recording_url' => :'String',
123
133
  :'recording_expires_at' => :'Time',
124
134
  :'billing' => :'WebhookPayloadCallEndedCallBilling'
@@ -202,6 +212,16 @@ module Zernio
202
212
  self.sip_hangup_cause = attributes[:'sip_hangup_cause']
203
213
  end
204
214
 
215
+ if attributes.key?(:'is_voicemail')
216
+ self.is_voicemail = attributes[:'is_voicemail']
217
+ end
218
+
219
+ if attributes.key?(:'call_errors')
220
+ if (value = attributes[:'call_errors']).is_a?(Array)
221
+ self.call_errors = value
222
+ end
223
+ end
224
+
205
225
  if attributes.key?(:'recording_url')
206
226
  self.recording_url = attributes[:'recording_url']
207
227
  end
@@ -272,6 +292,8 @@ module Zernio
272
292
  end_reason == o.end_reason &&
273
293
  hangup_cause == o.hangup_cause &&
274
294
  sip_hangup_cause == o.sip_hangup_cause &&
295
+ is_voicemail == o.is_voicemail &&
296
+ call_errors == o.call_errors &&
275
297
  recording_url == o.recording_url &&
276
298
  recording_expires_at == o.recording_expires_at &&
277
299
  billing == o.billing
@@ -286,7 +308,7 @@ module Zernio
286
308
  # Calculates hash code according to all attributes.
287
309
  # @return [Integer] Hash code
288
310
  def hash
289
- [id, meta_call_id, account_id, phone_number_id, direction, from, to, started_at, ended_at, duration_seconds, end_reason, hangup_cause, sip_hangup_cause, recording_url, recording_expires_at, billing].hash
311
+ [id, meta_call_id, account_id, phone_number_id, direction, from, to, started_at, ended_at, duration_seconds, end_reason, hangup_cause, sip_hangup_cause, is_voicemail, call_errors, recording_url, recording_expires_at, billing].hash
290
312
  end
291
313
 
292
314
  # Builds the object from hash
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Zernio
14
- VERSION = '0.0.840'
14
+ VERSION = '0.0.842'
15
15
  end
data/openapi.yaml CHANGED
@@ -2465,7 +2465,13 @@ components:
2465
2465
  description: Timestamp of last successful webhook delivery
2466
2466
  failureCount:
2467
2467
  type: integer
2468
- description: Consecutive delivery failures (resets on success, webhook disabled at 10)
2468
+ description: >-
2469
+ Consecutive terminal delivery failures (resets to 0 on any
2470
+ successful delivery). Auto-disable only triggers when the endpoint
2471
+ has had no successful delivery within a 3-day window AND either
2472
+ reaches 20 consecutive terminal failures or has been failing
2473
+ continuously for 3 days; any success within that window keeps the
2474
+ endpoint enabled regardless of the count.
2469
2475
  customHeaders:
2470
2476
  type: object
2471
2477
  additionalProperties:
@@ -4597,6 +4603,15 @@ components:
4597
4603
  endReason: { type: string, enum: [hangup, no_answer, rejected, error] }
4598
4604
  hangupCause: { type: [string, "null"], description: "Raw carrier hangup cause behind endReason (e.g. normal_clearing, call_rejected, not_found). Null when the carrier reported none." }
4599
4605
  sipHangupCause: { type: [string, "null"], description: "SIP response code that ended the call when SIP-signalled (e.g. '403', '486', '603'). endReason collapses all three to 'rejected', so this is what separates a refused destination from a busy line. Null on non-SIP legs." }
4606
+ isVoicemail: { type: boolean, description: 'True when the inbound call was handled by voicemail, whether scheduled or because the forward did not connect.' }
4607
+ callErrors:
4608
+ type: array
4609
+ description: 'Failures recorded on the call up to hangup (bridge failed, dial failed, recording error). Empty on a clean call. `message` is free-form diagnostic text and is not stable, do not parse it. `code` is 0 unless a provider code is known. Errors the carrier reports after hangup appear only on GET /v1/calls/{id}.'
4610
+ items:
4611
+ type: object
4612
+ properties:
4613
+ code: { type: integer }
4614
+ message: { type: string }
4600
4615
  recordingUrl: { type: string }
4601
4616
  recordingExpiresAt: { type: string, format: date-time }
4602
4617
  billing:
@@ -113,6 +113,18 @@ describe Zernio::WebhookPayloadCallEndedCall do
113
113
  end
114
114
  end
115
115
 
116
+ describe 'test attribute "is_voicemail"' do
117
+ it 'should work' do
118
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
119
+ end
120
+ end
121
+
122
+ describe 'test attribute "call_errors"' do
123
+ it 'should work' do
124
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
125
+ end
126
+ end
127
+
116
128
  describe 'test attribute "recording_url"' do
117
129
  it 'should work' do
118
130
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zernio-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.840
4
+ version: 0.0.842
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAPI-Generator
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-04 00:00:00.000000000 Z
11
+ date: 2026-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus