blockchyp 2.0.1 → 2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d62c30c6a86ec78224a7872e15cda0f5e95815324fe927abdd2124b53bbb4ffe
4
- data.tar.gz: 5443bef4916e79d00ece954f51e73b16039c37caaa1511ef235e396f33c60a65
3
+ metadata.gz: 62cfc81bad362a19dba4d7ca8bd75ffc3676ada2edb6f246c65a3ba203a653cc
4
+ data.tar.gz: 61557465f7c0968199f7b9f74af3dd27b800dd7790e00267914ec576bd9944f3
5
5
  SHA512:
6
- metadata.gz: 3d65e37658c80e182a581370651292d3ae36d85dbd18c1b82a67b7c098a70fb66c5f2dd902a8133380a55fb6767eb8f38eaa3496ace40a1fb2c48aaf444f1bd1
7
- data.tar.gz: 7e7bdbd18bfac0aba9c7052b5ca3ba81a87f7699dc532e5fd7967fedcd103783f53bcb76306b0fa786d3fb434463ccdcc05198ab76d736ea72d01bb6db3afe68
6
+ metadata.gz: cfa386e6fd59390035d4b57c7ad1ceed6de08796141208e185c93cffb74ae1d2b01d91b21a8818a09c9b48ecb28424ad6633440cab82c252a3d63f5cddc814e0
7
+ data.tar.gz: 4a3b6b5be656c6fbf6cfada0ed37872f3f136f3727891de661d80adc246413f4283b5b89ce6b765ff90d8ead92e85f81f25601ca9f5f0e7c4b6e04ee1bf8ee04
data/README.md CHANGED
@@ -724,6 +724,35 @@ response = blockchyp.terminalStatus(request)
724
724
  puts "Response: #{response.inspect}"
725
725
 
726
726
 
727
+ ```
728
+
729
+ #### Capture Signature.
730
+
731
+ Captures and returns a signature.
732
+
733
+
734
+ ```ruby
735
+ # frozen_string_literal: true
736
+
737
+ require 'blockchyp'
738
+
739
+ blockchyp = BlockChyp::BlockChyp.new(
740
+ ENV['BC_API_KEY'],
741
+ ENV['BC_BEARER_TOKEN'],
742
+ ENV['BC_SIGNING_KEY']
743
+ )
744
+
745
+ # setup request object
746
+ request = {}
747
+ request['terminalName'] = 'Test Terminal'
748
+ request['sigFormat'] = SignatureFormat::PNG
749
+ request['sigWidth'] = 200
750
+
751
+ response = blockchyp.captureSignature(request)
752
+
753
+ puts "Response: #{response.inspect}"
754
+
755
+
727
756
  ```
728
757
 
729
758
  ## Running Integration Tests
data/lib/blockchyp.rb CHANGED
@@ -28,6 +28,18 @@ module PromptType
28
28
  PHONE_NUMBER = 'phone'
29
29
  CUSTOMER_NUMBER = 'customer-number'
30
30
  REWARDS_NUMBER = 'rewards-number'
31
+ FIRST_NAME = 'first-name'
32
+ LAST_NAME = 'last-name'
33
+ end
34
+
35
+ module AVSResponse
36
+ NOT_APPLICABLE = ''
37
+ NOT_SUPPORTED = 'not_supported'
38
+ RETRY = 'retry'
39
+ NO_MATCH = 'no_match'
40
+ ADDRESS_MATCH = 'address_match'
41
+ POSTAL_CODE_MATCH = 'zip_match'
42
+ ADDRESS_AND_POSTAL_CODE_MATCH = 'match'
31
43
  end
32
44
 
33
45
  module BlockChyp
@@ -114,6 +126,11 @@ module BlockChyp
114
126
  def terminal_status(request)
115
127
  route_terminal_request('POST', '/api/terminal-status', '/api/terminal-status', request)
116
128
  end
129
+
130
+ # Captures and returns a signature.
131
+ def capture_signature(request)
132
+ route_terminal_request('POST', '/api/capture-signature', '/api/capture-signature', request)
133
+ end
117
134
 
118
135
  # Executes a manual time out reversal.
119
136
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module BlockChyp
4
- VERSION = '2.0.1'
4
+ VERSION = '2.1.0'
5
5
  end
@@ -101,6 +101,7 @@ module BlockChyp
101
101
  def terminal_request(method, route, path, request, open_retry)
102
102
  uri = resolve_terminal_uri(route, path)
103
103
  http = Net::HTTP.new(uri.host, uri.port)
104
+ http.use_ssl = uri.instance_of?(URI::HTTPS)
104
105
  timeout = get_timeout(request, terminal_timeout)
105
106
  http.open_timeout = timeout
106
107
  http.read_timeout = timeout
@@ -168,6 +169,7 @@ module BlockChyp
168
169
  def gateway_request(method, path, request = nil, relay = false)
169
170
  uri = resolve_gateway_uri(path, request)
170
171
  http = Net::HTTP.new(uri.host, uri.port)
172
+ http.use_ssl = uri.instance_of?(URI::HTTPS)
171
173
  timeout = get_timeout(request, relay ? terminal_timeout : gateway_timeout)
172
174
  http.open_timeout = timeout
173
175
  http.read_timeout = timeout
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2019 BlockChyp, Inc. All rights reserved. Use of this code is
4
+ # governed by a license that can be found in the LICENSE file.
5
+ #
6
+ # This file was generated automatically. Changes to this file will be lost
7
+ # every time the code is regenerated.
8
+
9
+ require ::File.expand_path('test_helper', __dir__)
10
+
11
+ module BlockChyp
12
+ class CaptureSignatureTest < TestCase
13
+ def test_capture_signature
14
+ config = load_test_config
15
+
16
+ blockchyp = BlockChyp.new(
17
+ config['apiKey'],
18
+ config['bearerToken'],
19
+ config['signingKey']
20
+ )
21
+ blockchyp.gateway_host = config['gatewayHost']
22
+ blockchyp.test_gateway_host = config['testGatewayHost']
23
+
24
+ test_delay(blockchyp, 'capture_signature_test')
25
+
26
+ # setup request object
27
+ request = {}
28
+ request['terminalName'] = 'Test Terminal'
29
+ request['sigFormat'] = SignatureFormat::PNG
30
+ request['sigWidth'] = 200
31
+
32
+ response = blockchyp.capture_signature(request)
33
+
34
+ assert_not_nil(response)
35
+ # response assertions
36
+ assert(response['success'])
37
+ end
38
+
39
+ end
40
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blockchyp
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - BlockChyp
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-07 00:00:00.000000000 Z
11
+ date: 2020-02-28 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -24,6 +24,7 @@ files:
24
24
  - lib/blockchyp_client.rb
25
25
  - lib/crypto_utils.rb
26
26
  - test/boolean_prompt_test.rb
27
+ - test/capture_signature_test.rb
27
28
  - test/gateway_timeout_test.rb
28
29
  - test/heartbeat_test.rb
29
30
  - test/new_transaction_display_test.rb