etracking 2.7.3 → 2.7.4
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 +4 -4
- data/lib/etracking/client.rb +17 -20
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2d71c5861a0725f210d59b6c0f72a4fb856ea7196ea162ac5b4c462659d6ad3
|
4
|
+
data.tar.gz: 54bc45e2db089efa6808fa7bb1f82f6c725b862ccd0ed03e243ec4133e97e68e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 841a763c4ea3ab78c882852a4bcaaa110dfc5e9a18ce3bc9f505b09347a50e7afe59d6a814e787c2d870454353ad31910e9c5ffcd3706cffb5748f575be5e3ea
|
7
|
+
data.tar.gz: e61a4584c14c907a75581b55686808bbed7e8bd7fbede9e2da80dd85da185233c6eb3c41aa70ad859f34084d7cdead89571549219125b18678fbe4af518df064
|
data/lib/etracking/client.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'uri'
|
2
2
|
require 'net/http'
|
3
|
-
require 'json'
|
3
|
+
require 'json'
|
4
4
|
|
5
5
|
module Etracking
|
6
6
|
|
@@ -11,7 +11,7 @@ module Etracking
|
|
11
11
|
# config.key_secret = ENV["etracking_key_secret"]
|
12
12
|
# config.language = ENV["etracking_language"] || 'TH'
|
13
13
|
# end
|
14
|
-
|
14
|
+
|
15
15
|
class Client
|
16
16
|
# @return [String]
|
17
17
|
attr_accessor :api_key, :key_secret, :language
|
@@ -28,30 +28,27 @@ module Etracking
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def endpoint
|
31
|
-
'https://etrackings.com/
|
31
|
+
'https://api.etrackings.com/v2/tracks'
|
32
32
|
end
|
33
33
|
|
34
34
|
def rest_api(path, payload)
|
35
35
|
api_key_required
|
36
36
|
key_secret_required
|
37
37
|
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
request
|
38
|
+
url = URI("#{endpoint}#{path}")
|
39
|
+
|
40
|
+
https = Net::HTTP.new(url.host, url.port);
|
41
|
+
https.use_ssl = true
|
42
|
+
|
43
|
+
request = Net::HTTP::Post.new(url)
|
44
|
+
request["etracking-api-key"] = api_key
|
45
|
+
request["etracking-key-secret"] = key_secret
|
46
|
+
request["accept-language"] = language || 'th'
|
47
|
+
request["content-type"] = ["application/json", "text/plain"]
|
44
48
|
request.body = payload.to_json
|
45
|
-
|
46
|
-
req_options = {
|
47
|
-
use_ssl: uri.scheme == "https",
|
48
|
-
}
|
49
|
-
|
50
|
-
response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
|
51
|
-
http.request(request)
|
52
|
-
end
|
49
|
+
response = https.request(request)
|
53
50
|
|
54
|
-
JSON.parse(response.
|
51
|
+
JSON.parse(response.read_body, { symbolize_names: true } )
|
55
52
|
end
|
56
53
|
|
57
54
|
def auto_detect(tracking_number)
|
@@ -81,7 +78,7 @@ module Etracking
|
|
81
78
|
def kerry_express(tracking_number)
|
82
79
|
rest_api('/kerry_express', payload_tracking_number(tracking_number))
|
83
80
|
end
|
84
|
-
|
81
|
+
|
85
82
|
def lazada_express(tracking_number)
|
86
83
|
rest_api('/lazada_express', payload_tracking_number(tracking_number))
|
87
84
|
end
|
@@ -128,4 +125,4 @@ module Etracking
|
|
128
125
|
raise ArgumentError, '`key_secret` is not configured' unless key_secret
|
129
126
|
end
|
130
127
|
end
|
131
|
-
end
|
128
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: etracking
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.7.
|
4
|
+
version: 2.7.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Saharak Manoo
|
@@ -109,7 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
requirements: []
|
112
|
-
rubygems_version: 3.1.
|
112
|
+
rubygems_version: 3.1.4
|
113
113
|
signing_key:
|
114
114
|
specification_version: 4
|
115
115
|
summary: For eTracking api
|