wassenger_client 0.1.0 → 0.1.1
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/app/models/wassenger_client/client.rb +11 -5
- data/app/models/wassenger_client/device.rb +11 -0
- data/app/models/wassenger_client/event.rb +17 -15
- data/app/models/wassenger_client/file.rb +11 -0
- data/app/models/wassenger_client/pricing.rb +11 -0
- data/lib/wassenger_client/engine.rb +2 -1
- data/lib/wassenger_client/version.rb +3 -1
- data/lib/wassenger_client.rb +2 -0
- data/spec/models/wassenger_client/message_spec.rb +4 -2
- data/spec/models/wassenger_client/webhook_spec.rb +4 -2
- data/spec/rails_helper.rb +3 -1
- metadata +7 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: bdcdfee1a8472722bd7f6146b68c5d0c60a0d50abb279f8f89796721fa919e69
|
|
4
|
+
data.tar.gz: 4e8e38f8fac74d8a892d977084b619fd0b268eeb4dfec77d0acd14b16cbe5356
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bbc29ebec8dd101a9617afd7af9ae59141b2c5596237cbcc6336c9fe889cfcc4682d2028b28c212a71f87375f134e2d1069223462aa69bf7af803a3fa61ceb8d
|
|
7
|
+
data.tar.gz: 0bde627b25a444fe9d668980aa24a7ad43e616746d943ab60ce4dd55d0b6c24ab6caa94166892f077126d8d79820292ac3f85724f219c4bd13c16653590c9528
|
|
@@ -18,13 +18,14 @@ module WassengerClient
|
|
|
18
18
|
URI(base_url)
|
|
19
19
|
end
|
|
20
20
|
|
|
21
|
-
def request(type = :get, params = {})
|
|
21
|
+
def request(type = :get, params = {}, id = '0')
|
|
22
22
|
request = Net::HTTP::Get.new(url) if type == :get
|
|
23
23
|
request = Net::HTTP::Post.new(url) if type == :post
|
|
24
|
-
request = Net::HTTP::Delete.new(
|
|
24
|
+
request = Net::HTTP::Delete.new(URI(base_url.concat("/#{id}"))) if type == :delete
|
|
25
|
+
request = Net::HTTP::Get.new(URI(base_url.concat("/#{id}"))) if type == :get_details
|
|
25
26
|
request['content-type'] = 'application/json'
|
|
26
27
|
request['token'] = ENV['WASSENGER_TOKEN']
|
|
27
|
-
request.body = "#{params.to_json}"
|
|
28
|
+
request.body = "#{params.to_json}" if !params.blank?
|
|
28
29
|
request
|
|
29
30
|
end
|
|
30
31
|
|
|
@@ -38,8 +39,13 @@ module WassengerClient
|
|
|
38
39
|
client.request(request).read_body
|
|
39
40
|
end
|
|
40
41
|
|
|
41
|
-
def delete(
|
|
42
|
-
request = request(:delete,
|
|
42
|
+
def delete(id)
|
|
43
|
+
request = request(:delete, {}, id)
|
|
44
|
+
client.request(request).read_body
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def get_details(id)
|
|
48
|
+
request = request(:get_details, {}, id)
|
|
43
49
|
client.request(request).read_body
|
|
44
50
|
end
|
|
45
51
|
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
module WassengerClient
|
|
4
|
-
class Event <
|
|
5
|
-
|
|
6
|
-
WassengerClient::Message.new(data)
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
def sent_message?
|
|
10
|
-
event == 'message:out:sent'
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def failed_message?
|
|
14
|
-
event == 'message:out:failed'
|
|
15
|
-
end
|
|
4
|
+
class Event < OpenStruct
|
|
5
|
+
class << self
|
|
16
6
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
7
|
+
def message
|
|
8
|
+
WassengerClient::Message.new(data)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def sent_message?
|
|
12
|
+
event == 'message:out:sent'
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def failed_message?
|
|
16
|
+
event == 'message:out:failed'
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def in_new?
|
|
20
|
+
event == 'message:in:new'
|
|
21
|
+
end
|
|
20
22
|
end
|
|
21
23
|
end
|
data/lib/wassenger_client.rb
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require 'net/http'
|
|
2
4
|
require 'json'
|
|
3
5
|
|
|
4
6
|
RSpec.describe WassengerClient::Message, type: :model do
|
|
5
|
-
it
|
|
7
|
+
it 'it should connect with the api endpoint' do
|
|
6
8
|
response = Net::HTTP.get(URI.parse(WassengerClient::Message.base_url))
|
|
7
9
|
expect(JSON.parse(response)['status']).to be_in([200, 403])
|
|
8
10
|
end
|
|
9
|
-
end
|
|
11
|
+
end
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require 'net/http'
|
|
2
4
|
require 'json'
|
|
3
5
|
|
|
4
6
|
RSpec.describe WassengerClient::Webhook, type: :model do
|
|
5
|
-
it
|
|
7
|
+
it 'it should connect with the api endpoint' do
|
|
6
8
|
response = Net::HTTP.get(URI.parse(WassengerClient::Webhook.base_url))
|
|
7
9
|
expect(JSON.parse(response)['status']).to be_in([200, 403])
|
|
8
10
|
end
|
|
9
|
-
end
|
|
11
|
+
end
|
data/spec/rails_helper.rb
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# require "action_controller/railtie"
|
|
2
4
|
require 'rails/all'
|
|
3
5
|
require 'rspec/rails'
|
|
@@ -9,7 +11,7 @@ RSpec.configure do |config|
|
|
|
9
11
|
config.infer_base_class_for_anonymous_controllers = false
|
|
10
12
|
|
|
11
13
|
# Enable flags like --only-failures and --next-failure
|
|
12
|
-
config.example_status_persistence_file_path =
|
|
14
|
+
config.example_status_persistence_file_path = '.rspec_status'
|
|
13
15
|
|
|
14
16
|
# Disable RSpec exposing methods globally on `Module` and `main`
|
|
15
17
|
config.disable_monkey_patching!
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: wassenger_client
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Raí Gondim
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2019-10-
|
|
12
|
+
date: 2019-10-25 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: rails
|
|
@@ -39,7 +39,7 @@ dependencies:
|
|
|
39
39
|
- - '='
|
|
40
40
|
- !ruby/object:Gem::Version
|
|
41
41
|
version: 3.9.0
|
|
42
|
-
description: Ruby client for wassenger.com
|
|
42
|
+
description: Ruby client for wassenger.com API
|
|
43
43
|
email:
|
|
44
44
|
- raicg2@gmail.com
|
|
45
45
|
- wkelyson@gmail.com
|
|
@@ -49,8 +49,11 @@ extra_rdoc_files: []
|
|
|
49
49
|
files:
|
|
50
50
|
- Rakefile
|
|
51
51
|
- app/models/wassenger_client/client.rb
|
|
52
|
+
- app/models/wassenger_client/device.rb
|
|
52
53
|
- app/models/wassenger_client/event.rb
|
|
54
|
+
- app/models/wassenger_client/file.rb
|
|
53
55
|
- app/models/wassenger_client/message.rb
|
|
56
|
+
- app/models/wassenger_client/pricing.rb
|
|
54
57
|
- app/models/wassenger_client/webhook.rb
|
|
55
58
|
- lib/wassenger_client.rb
|
|
56
59
|
- lib/wassenger_client/engine.rb
|
|
@@ -117,7 +120,7 @@ requirements: []
|
|
|
117
120
|
rubygems_version: 3.0.3
|
|
118
121
|
signing_key:
|
|
119
122
|
specification_version: 4
|
|
120
|
-
summary: Ruby client for wassenger.com
|
|
123
|
+
summary: Ruby client for wassenger.com API
|
|
121
124
|
test_files:
|
|
122
125
|
- spec/rails_helper.rb
|
|
123
126
|
- spec/dummy/Gemfile.lock
|