imperituroard 0.2.9 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5dd10455562230533ca66925146fc6277ad59e8d
|
4
|
+
data.tar.gz: da05bfe279194071153aa51c7fe9071051e4a8ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5ba1bb0d2403d224fc8e96ab1a7ceb36815c4340b35174a3b7211161ae8090e7a64c38f09c34d577bb2ea66de20e4f25d098a1769b3de65a3a5a6e1c06ad34e
|
7
|
+
data.tar.gz: 5ac36913151dd8637caf0aec3723e0f327e54d336e1c0387ff263f9d8ad2e74c74df41a222c06e83b57e161eff6a19fac2f7a3be79984cf9de7e67ae1e9f88b1
|
@@ -48,23 +48,60 @@ class HuaIot
|
|
48
48
|
end
|
49
49
|
|
50
50
|
def get_token(app_id, secret)
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
51
|
+
out_resp = {}
|
52
|
+
begin
|
53
|
+
path = "/iocm/app/sec/v1.1.0/login"
|
54
|
+
url_string = "https://" + platformip + ":" + platformport + path
|
55
|
+
uri = URI.parse url_string
|
56
|
+
https = Net::HTTP.new(uri.host, uri.port)
|
57
|
+
https.use_ssl = true
|
58
|
+
https.cert = OpenSSL::X509::Certificate.new(File.read(cert_file))
|
59
|
+
https.key = OpenSSL::PKey::RSA.new(File.read(key_file))
|
60
|
+
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
61
|
+
request = Net::HTTP::Post.new(uri.path)
|
62
|
+
data = {
|
63
|
+
:appId => app_id,
|
64
|
+
:secret => secret
|
65
|
+
}
|
66
|
+
request.content_type = 'application/x-www-form-urlencoded'
|
67
|
+
request.body = URI.encode_www_form(data)
|
68
|
+
res = https.request(request)
|
69
|
+
out_resp = {:code => res.code, :message => res.message, :body => JSON.parse(res.body.to_s)}
|
70
|
+
rescue
|
71
|
+
out_resp = {:code => 500, :message => "failed get token"}
|
72
|
+
end
|
73
|
+
p jjj = {:procedure => "get_token", :answ => out_resp}
|
74
|
+
out_resp
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
def token_logout(token)
|
79
|
+
|
80
|
+
p "token_logout token: #{token}"
|
81
|
+
|
82
|
+
out_resp = {}
|
83
|
+
begin
|
84
|
+
path = "/iocm/app/sec/v1.1.0/logout"
|
85
|
+
url_string = "https://" + platformip + ":" + platformport + path
|
86
|
+
uri = URI.parse url_string
|
87
|
+
https = Net::HTTP.new(uri.host, uri.port)
|
88
|
+
https.use_ssl = true
|
89
|
+
https.cert = OpenSSL::X509::Certificate.new(File.read(cert_file))
|
90
|
+
https.key = OpenSSL::PKey::RSA.new(File.read(key_file))
|
91
|
+
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
92
|
+
request = Net::HTTP::Post.new(uri.path)
|
93
|
+
data = {
|
94
|
+
:accessToken => token
|
95
|
+
}
|
96
|
+
request.content_type = 'application/json'
|
97
|
+
request.body = URI.encode_www_form(data)
|
98
|
+
res = https.request(request)
|
99
|
+
out_resp = {:code => res.code, :message => res.message, :body => JSON.parse(res.body.to_s)}
|
100
|
+
rescue
|
101
|
+
out_resp = {:code => 500, :message => "failed logout token"}
|
102
|
+
end
|
103
|
+
p jjj = {:procedure => "token_logout", :answ => out_resp}
|
104
|
+
out_resp
|
68
105
|
end
|
69
106
|
|
70
107
|
#Registering a Directly Connected Device (Verification Code Mode) (V2)
|
@@ -88,7 +125,7 @@ class HuaIot
|
|
88
125
|
{:code => res.code, :message => res.message, :body => JSON.parse(res.body.to_s)}
|
89
126
|
end
|
90
127
|
|
91
|
-
#2.2.4 Registering a Directly Connected Device (Password Mode) (V2)
|
128
|
+
#2.2.4 Registering a Directly Connected Device (Password Mode) (V2)
|
92
129
|
def dev_register_passw_code_mode2(app_id, secret, node_id, name_p, description_p, device_type, profile)
|
93
130
|
out_resp = {}
|
94
131
|
token = get_token(app_id, secret)[:body]["accessToken"]
|
@@ -113,32 +150,34 @@ class HuaIot
|
|
113
150
|
end
|
114
151
|
|
115
152
|
|
116
|
-
|
117
153
|
#2.2.12 Deleting a Directly Connected Device
|
118
|
-
def dev_delete(app_id,
|
154
|
+
def dev_delete(app_id, dev_id, token)
|
119
155
|
out_resp = {}
|
120
|
-
token = get_token(app_id, secret)[:body]["accessToken"]
|
121
|
-
path = "/iocm/app/dm/v1.1.0/devices/" + dev_id + "?app_Id=" + app_id + "&cascade=true"
|
122
|
-
url_string = "https://" + platformip + ":" + platformport + path
|
123
|
-
uri = URI.parse url_string
|
124
|
-
https = Net::HTTP.new(uri.host, uri.port)
|
125
|
-
https.use_ssl = true
|
126
|
-
https.cert = OpenSSL::X509::Certificate.new(File.read(cert_file))
|
127
|
-
https.key = OpenSSL::PKey::RSA.new(File.read(key_file))
|
128
|
-
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
129
|
-
request = Net::HTTP::Delete.new(uri.path)
|
130
|
-
request.content_type = 'application/json'
|
131
|
-
request['Authorization'] = 'Bearer ' + token
|
132
|
-
request['app_key'] = app_id
|
133
|
-
res = https.request(request)
|
134
|
-
p res.code
|
135
|
-
p res.body
|
136
|
-
if res.body != nil
|
137
|
-
out_resp = {:code => res.code, :message => res.message, :body => {:answ => JSON.parse(res.body.to_s)}}
|
138
|
-
else
|
139
|
-
out_resp = {:code => res.code, :message => res.message, :body => {:answ => "no data"}}
|
140
|
-
end
|
141
156
|
|
157
|
+
begin
|
158
|
+
path = "/iocm/app/dm/v1.1.0/devices/" + dev_id + "?app_Id=" + app_id + "&cascade=true"
|
159
|
+
url_string = "https://" + platformip + ":" + platformport + path
|
160
|
+
uri = URI.parse url_string
|
161
|
+
https = Net::HTTP.new(uri.host, uri.port)
|
162
|
+
https.use_ssl = true
|
163
|
+
https.cert = OpenSSL::X509::Certificate.new(File.read(cert_file))
|
164
|
+
https.key = OpenSSL::PKey::RSA.new(File.read(key_file))
|
165
|
+
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
166
|
+
request = Net::HTTP::Delete.new(uri.path)
|
167
|
+
request.content_type = 'application/json'
|
168
|
+
request['Authorization'] = 'Bearer ' + token
|
169
|
+
request['app_key'] = app_id
|
170
|
+
res = https.request(request)
|
171
|
+
p res.code
|
172
|
+
p res.body
|
173
|
+
if res.body != nil
|
174
|
+
out_resp = {:code => res.code, :message => res.message, :body => {:answ => JSON.parse(res.body.to_s)}}
|
175
|
+
else
|
176
|
+
out_resp = {:code => res.code, :message => res.message, :body => {:answ => "no data"}}
|
177
|
+
end
|
178
|
+
rescue
|
179
|
+
out_resp = {:code => 500, :message => "dev_delete: Unknown IOT error"}
|
180
|
+
end
|
142
181
|
p out_resp
|
143
182
|
out_resp
|
144
183
|
|
@@ -273,21 +312,41 @@ class HuaIot
|
|
273
312
|
end
|
274
313
|
|
275
314
|
|
276
|
-
|
277
315
|
##2.10.7 Adding Members to a Device Group
|
278
316
|
|
279
317
|
|
280
|
-
##############################################################3
|
318
|
+
##############################################################3
|
281
319
|
|
282
320
|
|
283
321
|
########final procedures###############
|
284
322
|
def add_new_device_on_huawei(app_id, secret, node_id, name_p, description_p, device_type, profile)
|
285
|
-
dev_register_passw_code_mode2(app_id, secret, node_id, name_p, description_p, device_type, profile)
|
323
|
+
self.dev_register_passw_code_mode2(app_id, secret, node_id, name_p, description_p, device_type, profile)
|
286
324
|
end
|
287
325
|
|
288
326
|
|
289
327
|
def remove_one_device_from_iot(app_id, secret, dev_id)
|
290
|
-
|
328
|
+
out_resp = {}
|
329
|
+
begin
|
330
|
+
token = self.get_token(app_id, secret)
|
331
|
+
if token[:code] != 500 && token[:body]["accessToken"]!=nil
|
332
|
+
out_resp = self.dev_delete(app_id, dev_id, token[:body]["accessToken"])
|
333
|
+
if out_resp[:code].to_i == 200 || out_resp[:code].to_i == 204
|
334
|
+
###logout#
|
335
|
+
begin
|
336
|
+
self.token_logout(token[:body]["accessToken"])
|
337
|
+
rescue
|
338
|
+
nil
|
339
|
+
end
|
340
|
+
##########
|
341
|
+
end
|
342
|
+
else
|
343
|
+
out_resp = {:code => 500, :message => "remove_one_device_from_iot: Invalid IOT platform token"}
|
344
|
+
end
|
345
|
+
rescue
|
346
|
+
out_resp = {:code => 500, :message => "remove_one_device_from_iot: Unknown error"}
|
347
|
+
end
|
348
|
+
p jjj = {:procedure => "remove_one_device_from_iot", :answ => out_resp}
|
349
|
+
out_resp
|
291
350
|
end
|
292
351
|
|
293
352
|
|
@@ -271,35 +271,45 @@ class MongoIot
|
|
271
271
|
id = ""
|
272
272
|
begin
|
273
273
|
info = get_imei_info_from_db([imei])
|
274
|
+
p info
|
275
|
+
p "info"
|
274
276
|
if info[:body]==[]
|
275
277
|
out_resp = {:code => 505, :result => "get_profile_name_from_imei: get_imei_info_from_db returned empty list from database. IMEIS not found"}
|
276
278
|
else
|
277
279
|
p "fshhsdf"
|
278
280
|
p info
|
279
281
|
id = info[:body][0]["profile"]
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
282
|
+
p id
|
283
|
+
p "id"
|
284
|
+
|
285
|
+
begin
|
286
|
+
p id
|
287
|
+
res = get_profile_name_by_id(id)
|
288
|
+
p res
|
289
|
+
if res.key?("profile")
|
290
|
+
res=res
|
291
|
+
else
|
292
|
+
out_resp = {:code => 505, :result => "get_profile_name_from_imei: Function get_profile_name_by_id not returned profile. Invalid data in database and returned: #{res.to_s}"}
|
293
|
+
end
|
294
|
+
|
295
|
+
rescue
|
296
|
+
out_resp = {:code => 506, :result => "get_profile_name_from_imei: Function get_profile_name_by_id not processed correctly and returned: #{res.to_s}"}
|
297
|
+
|
298
|
+
end
|
299
|
+
begin
|
300
|
+
if res["profile"]!=nil
|
301
|
+
out_resp = {:code => 200, :result => "get_profile_name_from_imei: Request completed successfully", :body => res}
|
302
|
+
end
|
303
|
+
rescue
|
304
|
+
out_resp = {:code => 506, :result => "get_profile_name_from_imei: Function get_profile_name_by_id not processed correctly and returned: #{res.to_s}"}
|
305
|
+
end
|
291
306
|
|
292
|
-
rescue
|
293
|
-
out_resp = {:code => 506, :result => "get_profile_name_from_imei: Function get_profile_name_by_id not processed correctly and returned: #{res.to_s}"}
|
294
307
|
|
295
|
-
end
|
296
|
-
begin
|
297
|
-
if res["profile"]!=nil
|
298
|
-
out_resp = {:code => 200, :result => "get_profile_name_from_imei: Request completed successfully", :body => res}
|
299
308
|
end
|
300
309
|
rescue
|
301
|
-
out_resp = {:code => 506, :result => "get_profile_name_from_imei: Function
|
310
|
+
out_resp = {:code => 506, :result => "get_profile_name_from_imei: Function get_imei_info_from_db not processed correctly and returned: #{info.to_s}"}
|
302
311
|
end
|
312
|
+
|
303
313
|
rescue
|
304
314
|
out_resp = {:code => 507, :result => "get_profile_name_from_imei: Unknown SDK error"}
|
305
315
|
end
|