telnyx 2.7.0 → 2.8.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 407a5714f7cb3d239c29e30db367cb2ce79529bd6c56d2cc618fae5a2d53445a
4
- data.tar.gz: ca77fece83a957351b70886ec4e7df72c202c9a362e2c5210b2b8472f31dfc07
3
+ metadata.gz: f1f463fe082759c9cb99808df9016e908788912ac9a6d1f5c7de4b29c27ca891
4
+ data.tar.gz: cf8bb9e8030e6fac0063cd876339ea73b6db99e911c865af06c49bf7baa7ae7c
5
5
  SHA512:
6
- metadata.gz: 5d3011d6cf70a2445963ebfde957ba1d6868ae8552990e483deea284d534bd7040162bddd059aa29369ca2813768f721eceed5dd8eb39512c322198d4d55b98f
7
- data.tar.gz: c736dcdf467ea9a6ff49856d1fa2d3acdb0e11bde5e4d700c810d39abde29586c2b596b17cf51eab5ceb2fd07d4cc727fbc0dcf283a40ef8bc9f637627aa9854
6
+ metadata.gz: 4cc528c37b37e18abb166a4e10bd97631ded62a951ce8ce221ddf7c867488046db85ff96bbb4c0b97c23350113d978286e5c5c6251b5879b3f8b47f09d29e797
7
+ data.tar.gz: 6e35320931291772a01de09fd2bd2e7301fb1f92d158bb4e71fa00c7b4eb4774ce13714ef30eb59a2e76d81a69704b21ff52a50735045c4ba786cd0d063c64d5
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.7.0
1
+ 2.8.0
data/lib/telnyx.rb CHANGED
@@ -66,6 +66,7 @@ require "telnyx/portout"
66
66
  require "telnyx/public_key"
67
67
  require "telnyx/regulatory_requirement"
68
68
  require "telnyx/sim_card"
69
+ require "telnyx/telephony_credential"
69
70
  require "telnyx/verification"
70
71
  require "telnyx/verify_profile"
71
72
  require "telnyx/wireless_detail_records_report"
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ class TelephonyCredential < APIResource
5
+ extend Telnyx::APIOperations::List
6
+ extend Telnyx::APIOperations::Create
7
+ include Telnyx::APIOperations::Save
8
+ include Telnyx::APIOperations::Delete
9
+
10
+ OBJECT_NAME = "telephony_credential".freeze
11
+ end
12
+ end
data/lib/telnyx/util.rb CHANGED
@@ -42,6 +42,7 @@ module Telnyx
42
42
  .map { |klass| [klass::OBJECT_NAME, klass] }
43
43
  .to_h
44
44
  .merge(
45
+ "credential" => TelephonyCredential,
45
46
  "messaging_settings" => MessagingPhoneNumber,
46
47
  "phone_number_regulatory_group" => PhoneNumberRegulatoryRequirement,
47
48
  "phone_number_reservation" => NumberReservation,
@@ -25,11 +25,31 @@ module Telnyx
25
25
  Response.construct_from resp.data[:data]
26
26
  end
27
27
 
28
- # Trigger a call verification
28
+ # Trigger a call verification.
29
29
  def self.call(params = {}, opts = {})
30
30
  create(params, { **opts, resource_url: "#{resource_url}/call" })
31
31
  end
32
32
 
33
+ # Trigger an SMS verification.
34
+ def self.sms(params = {}, opts = {})
35
+ create(params, { **opts, resource_url: "#{resource_url}/sms" })
36
+ end
37
+
38
+ # Trigger a PSD2 verification.
39
+ def self.psd2(params = {}, opts = {})
40
+ create(params, { **opts, resource_url: "#{resource_url}/psd2" })
41
+ end
42
+
43
+ # Trigger a flashcall verification.
44
+ def self.flashcall(params = {}, opts = {})
45
+ create(params, { **opts, resource_url: "#{resource_url}/flashcall" })
46
+ end
47
+
48
+ # Trigger a whatsapp verification.
49
+ def self.whatsapp(params = {}, opts = {})
50
+ create(params, { **opts, resource_url: "#{resource_url}/whatsapp" })
51
+ end
52
+
33
53
  OBJECT_NAME = "verify_verification".freeze
34
54
  RESOURCE_PATH = "verifications".freeze
35
55
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Telnyx
4
- VERSION = "2.7.0".freeze
4
+ VERSION = "2.8.0".freeze
5
5
  end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../test_helper"
4
+
5
+ module Telnyx
6
+ class TelephonyCredentialTest < Test::Unit::TestCase
7
+ should "list telephony credentials" do
8
+ telephony_credentials = TelephonyCredential.list
9
+ assert_requested :get, "#{Telnyx.api_base}/v2/telephony_credentials"
10
+ assert_kind_of ListObject, telephony_credentials
11
+ assert_kind_of TelephonyCredential, telephony_credentials.first
12
+ end
13
+
14
+ should "create telephony credential" do
15
+ TelephonyCredential.create(
16
+ name: "Test credential",
17
+ connection_id: "1234567890"
18
+ )
19
+ assert_requested :post, "#{Telnyx.api_base}/v2/telephony_credentials"
20
+ end
21
+
22
+ should "retrieve telephony credential" do
23
+ telephony_credential = TelephonyCredential.retrieve("id")
24
+ assert_requested :get, "#{Telnyx.api_base}/v2/telephony_credentials/id"
25
+ assert_kind_of TelephonyCredential, telephony_credential
26
+ end
27
+
28
+ should "delete telephony credential" do
29
+ telephony_credential = TelephonyCredential.retrieve("id")
30
+
31
+ telephony_credential.delete
32
+ assert_requested :delete, "#{Telnyx.api_base}/v2/telephony_credentials/id"
33
+ end
34
+
35
+ should "update telephony credential" do
36
+ telephony_credential = TelephonyCredential.retrieve("id")
37
+
38
+ telephony_credential.expires_at = "2021-07-27T17:58:54Z"
39
+ telephony_credential.save
40
+ assert_requested :patch, "#{Telnyx.api_base}/v2/telephony_credentials/id"
41
+ end
42
+ end
43
+ end
@@ -4,9 +4,45 @@ require_relative "../test_helper"
4
4
 
5
5
  module Telnyx
6
6
  class VerificationTest < Test::Unit::TestCase
7
- should "create verification" do
8
- Verification.call phone_number: "+15555555555", twofa_profile_id: "1234", type: "sms", verify_profile_id: "foobar"
9
- assert_requested :post, "#{Telnyx.api_base}/v2/verifications/call"
7
+ context "create verification" do
8
+ should "call" do
9
+ Verification.call phone_number: "+15555555555",
10
+ verify_profile_id: "12ade33a-21c0-473b-b055-b3c836e1c292"
11
+ assert_requested :post, "#{Telnyx.api_base}/v2/verifications/call"
12
+ end
13
+
14
+ should "send sms" do
15
+ Verification.sms phone_number: "+15555555555",
16
+ verify_profile_id: "12ade33a-21c0-473b-b055-b3c836e1c292",
17
+ timeout_secs: 600
18
+ assert_requested :post, "#{Telnyx.api_base}/v2/verifications/sms"
19
+ end
20
+
21
+ should "trigger psd2" do
22
+ Verification.psd2 phone_number: "+15555555555",
23
+ verify_profile_id: "12ade33a-21c0-473b-b055-b3c836e1c292",
24
+ amount: "12.34",
25
+ currency: "USD",
26
+ payee: "FooBar Inc.",
27
+ timeout_secs: 600
28
+
29
+ assert_requested :post, "#{Telnyx.api_base}/v2/verifications/psd2"
30
+ end
31
+
32
+ should "flashcall" do
33
+ Verification.flashcall phone_number: "+15555555555",
34
+ timeout_secs: 600,
35
+ verify_profile_id: "12ade33a-21c0-473b-b055-b3c836e1c292"
36
+ assert_requested :post, "#{Telnyx.api_base}/v2/verifications/flashcall"
37
+ end
38
+
39
+ should "whatsapp" do
40
+ Verification.whatsapp phone_number: "+15555555555",
41
+ timeout_secs: 600,
42
+ verify_profile_id: "12ade33a-21c0-473b-b055-b3c836e1c292",
43
+ app_name: "FooBar"
44
+ assert_requested :post, "#{Telnyx.api_base}/v2/verifications/whatsapp"
45
+ end
10
46
  end
11
47
 
12
48
  should "retrieve verification" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: telnyx
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.0
4
+ version: 2.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Telnyx
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-08 00:00:00.000000000 Z
11
+ date: 2021-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -162,6 +162,7 @@ files:
162
162
  - lib/telnyx/regulatory_requirement.rb
163
163
  - lib/telnyx/sim_card.rb
164
164
  - lib/telnyx/singleton_api_resource.rb
165
+ - lib/telnyx/telephony_credential.rb
165
166
  - lib/telnyx/telnyx_client.rb
166
167
  - lib/telnyx/telnyx_object.rb
167
168
  - lib/telnyx/telnyx_response.rb
@@ -206,6 +207,7 @@ files:
206
207
  - test/telnyx/public_key_test.rb
207
208
  - test/telnyx/regulatory_requirement_test.rb
208
209
  - test/telnyx/sim_card_test.rb
210
+ - test/telnyx/telephony_credential_test.rb
209
211
  - test/telnyx/telnyx_client_test.rb
210
212
  - test/telnyx/telnyx_object_test.rb
211
213
  - test/telnyx/telnyx_response_test.rb
@@ -241,7 +243,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
241
243
  - !ruby/object:Gem::Version
242
244
  version: '0'
243
245
  requirements: []
244
- rubygems_version: 3.2.3
246
+ rubygems_version: 3.2.15
245
247
  signing_key:
246
248
  specification_version: 4
247
249
  summary: Ruby bindings for the Telnyx API
@@ -280,6 +282,7 @@ test_files:
280
282
  - test/telnyx/public_key_test.rb
281
283
  - test/telnyx/regulatory_requirement_test.rb
282
284
  - test/telnyx/sim_card_test.rb
285
+ - test/telnyx/telephony_credential_test.rb
283
286
  - test/telnyx/telnyx_client_test.rb
284
287
  - test/telnyx/telnyx_object_test.rb
285
288
  - test/telnyx/telnyx_response_test.rb