pampa_workers 1.1.14 → 1.1.15
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/client.rb +35 -26
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ab275405509b5e1757e26edcbd0aa703da36a65
|
4
|
+
data.tar.gz: 59873b29ad9be66f9c439478dedcef526e8581d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc5757fb1c54805415645caca9e87360c58cbcc0c4566700e772d0260edb30bc13245a76b73f413194373a8568cf397012e1973f94b8abce18e9f440e3844fca
|
7
|
+
data.tar.gz: b38cb83d0656799b2c531724075f7838fde797e26ff4f2c8afa6caec662286cb1dbdb4b96a34682ad2610f4f0a7c6b023419bb86404a9e3135808c0472107abf
|
data/lib/client.rb
CHANGED
@@ -85,50 +85,59 @@ module BlackStack
|
|
85
85
|
|
86
86
|
# llama a la api de postmark preguntando el reseller email configurado para este clietne fue ferificado
|
87
87
|
def checkDomainForSSMVerified()
|
88
|
-
|
88
|
+
return_message = {}
|
89
89
|
domain = self.domain_for_ssm
|
90
90
|
email = self.from_email_for_ssm
|
91
91
|
id = ''
|
92
92
|
client = ''
|
93
|
-
|
94
93
|
if domain != nil && email != nil
|
95
94
|
begin
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
95
|
+
# create postmark client
|
96
|
+
client_postmark = Postmark::AccountApiClient.new(POSTMARK_API_TOKEN, secure: true)
|
97
|
+
|
98
|
+
# get signature
|
99
|
+
# more info: https://github.com/wildbit/postmark-gem/wiki/Senders
|
100
|
+
#
|
101
|
+
# this first strategy is not scalable if we handle a large list of signatures.
|
102
|
+
#sign = client_postmark.signatures.select { |sign| sign[:domain]==domain }.first
|
103
|
+
#
|
104
|
+
# this other approach is a bit more scalable, but anyway we need to call the API
|
105
|
+
# with filering by the domain.
|
106
|
+
#
|
107
|
+
pagesize = 30 # TODO: increase this value to 300 for optimization
|
108
|
+
i = 0
|
109
|
+
j = 1
|
110
|
+
sign = nil
|
111
|
+
while j>0 && sign.nil?
|
112
|
+
buff = client_postmark.get_signatures(offset: i, count: pagesize)
|
113
|
+
j = buff.size
|
114
|
+
i += pagesize
|
115
|
+
sign = buff.select { |s| s[:domain]==domain }.first
|
116
|
+
end # while
|
117
|
+
|
118
|
+
# if signature has been found?
|
119
|
+
if sign.nil?
|
120
|
+
# sincronizo con la central
|
121
|
+
return_message[:status] = "Client Signature Not Found"
|
122
|
+
return_message[:value] = client[:id]
|
123
|
+
return return_message.to_json
|
124
|
+
else
|
125
|
+
id = sign[:id]
|
126
|
+
client = client_postmark.get_sender(id)
|
110
127
|
if !client[:confirmed]
|
111
128
|
self.domain_for_ssm_verified = false
|
112
|
-
self.save
|
113
|
-
|
129
|
+
self.save
|
114
130
|
return_message[:status] = "No Verified"
|
115
131
|
return_message[:value] = client[:id]
|
116
|
-
|
117
132
|
return return_message.to_json
|
118
133
|
else
|
119
134
|
self.domain_for_ssm_verified = true
|
120
|
-
self.save
|
121
|
-
|
122
|
-
# sincronizo con la central
|
123
|
-
return_message = {}
|
124
|
-
|
135
|
+
self.save
|
125
136
|
return_message[:status] = "success"
|
126
137
|
return_message[:value] = client[:id]
|
127
|
-
|
128
138
|
return return_message.to_json
|
129
139
|
end
|
130
140
|
end
|
131
|
-
|
132
141
|
rescue Postmark::ApiInputError => e
|
133
142
|
return_message[:status] = e.to_s
|
134
143
|
return return_message.to_json
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pampa_workers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.15
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Leandro Daniel Sardi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: websocket
|