imperituroard 1.1.4 → 1.1.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/.idea/runConfigurations/autovpn.xml +21 -0
  3. data/imperituroard.gemspec +1 -1
  4. data/lib/.DS_Store +0 -0
  5. data/lib/imperituroard.rb +57 -5
  6. data/lib/imperituroard/.DS_Store +0 -0
  7. data/lib/imperituroard/add_functions/logger/any_functions.rb +4 -2
  8. data/lib/imperituroard/platforms/iwag/get_iwag_data.rb +90 -0
  9. data/lib/imperituroard/platforms/iwag/iwag_database_worker.rb +24 -0
  10. data/lib/imperituroard/platforms/staros/staros_automation.rb +1 -1
  11. data/lib/imperituroard/projects/autovpn.rb +27 -0
  12. data/lib/imperituroard/projects/{vpn/ezuev_fun → autovpn}/functions_ezuev.rb +0 -0
  13. data/lib/imperituroard/projects/autovpn/mongo_vpn.rb +56 -0
  14. data/lib/imperituroard/projects/iot.rb +3 -2
  15. data/lib/imperituroard/projects/iot/add_functions.rb +2 -2
  16. data/lib/imperituroard/projects/iot/hua_oceanconnect_adapter.rb +25 -21
  17. data/lib/imperituroard/projects/iot/internal_functions.rb +5 -4
  18. data/lib/imperituroard/projects/mhub.rb +77 -9
  19. data/lib/imperituroard/projects/mhub/gms.rb +96 -0
  20. data/lib/imperituroard/projects/mhub/sk.rb +10 -15
  21. data/lib/imperituroard/projects/mhub/subs/dabrab/dabrab_platform.rb +5 -4
  22. data/lib/imperituroard/projects/mhub/subs/dabrab/dabrab_proced.rb +23 -21
  23. data/lib/imperituroard/projects/mhub/subs/evrotorg/gms_connector.rb +69 -0
  24. data/lib/imperituroard/projects/ukaz60.rb +4 -2
  25. data/lib/imperituroard/projects/ukaz60/belgim.rb +1 -1
  26. data/lib/imperituroard/projects/ukaz60/fortigate.rb +1 -1
  27. data/lib/imperituroard/projects/ukaz60/staros.rb +5 -5
  28. data/lib/imperituroard/projects/ukaz60/ukaz60_add_func.rb +50 -4
  29. data/lib/imperituroard/version.rb +1 -1
  30. metadata +14 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0217c1cc75b261d264e0bda7b844973fa538e72a
4
- data.tar.gz: 153d87dad8e3241911d7dfc6fe8deb5a589c4062
3
+ metadata.gz: 06a24d95016bbc1c495cb86ef3f2cbebd39bfa21
4
+ data.tar.gz: 647278e86d5ec1f44cf808e8c3a63f7f1c4c7b64
5
5
  SHA512:
6
- metadata.gz: 6deca94580b39be517b6f7a258712c26ba081aa41f899c5ba204195706262652590a2de6747d26131e7650e48c55ef49a21e5cc606bffa1d5059277851154b7f
7
- data.tar.gz: aac3ba712d125edea747bccddc7fa6c81b8c016f35752acf5f5e49f841ada625959a51a061c45c2d4854f1494abc3efea615e73273f61071c4e09fd463d5d48f
6
+ metadata.gz: 74ae2cf7887f78b327956031bf5babab5ab78477b094b1f866ec6b43fd00796cf1a766cf21980507152434aafd9918917b3877f7adb62d15c7edee812c4deafa
7
+ data.tar.gz: 144a7e259528a7fa57a6f4f81a558e0604d1957cf294cf7479d8bfa35b896849bc216180180c6e418bc8672d031674d97d6f9c1ff729b2adbc1f37a98be66624
@@ -0,0 +1,21 @@
1
+ <component name="ProjectRunConfigurationManager">
2
+ <configuration default="false" name="autovpn" type="RubyRunConfigurationType" factoryName="Ruby">
3
+ <module name="imperituroard" />
4
+ <RUBY_RUN_CONFIG NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
5
+ <RUBY_RUN_CONFIG NAME="WORK DIR" VALUE="$MODULE_DIR$/lib/imperituroard/projects" />
6
+ <RUBY_RUN_CONFIG NAME="SHOULD_USE_SDK" VALUE="false" />
7
+ <RUBY_RUN_CONFIG NAME="ALTERN_SDK_NAME" VALUE="" />
8
+ <RUBY_RUN_CONFIG NAME="myPassParentEnvs" VALUE="true" />
9
+ <envs />
10
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
11
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
12
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov">
13
+ <COVERAGE_PATTERN ENABLED="true">
14
+ <PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
15
+ </COVERAGE_PATTERN>
16
+ </EXTENSION>
17
+ <RUBY_RUN_CONFIG NAME="SCRIPT_PATH" VALUE="$MODULE_DIR$/lib/imperituroard/projects/autovpn.rb" />
18
+ <RUBY_RUN_CONFIG NAME="SCRIPT_ARGS" VALUE="" />
19
+ <method />
20
+ </configuration>
21
+ </component>
@@ -51,7 +51,7 @@ Gem::Specification.new do |spec|
51
51
  spec.add_dependency "ipaddr", "1.2.2"
52
52
  spec.add_dependency "simpleidn", "0.1.1"
53
53
  spec.add_dependency "net-scp", "3.0.0"
54
-
55
54
  spec.add_dependency "rails", "5.0.7.2"
56
55
 
56
+
57
57
  end
Binary file
@@ -25,6 +25,7 @@ require 'imperituroard/projects/dns'
25
25
  require 'imperituroard/platforms/cps/qps_connector'
26
26
  require 'imperituroard/platforms/public/telegram'
27
27
  require 'imperituroard/projects/ukaz60'
28
+ require 'imperituroard/projects/mhub/gms'
28
29
 
29
30
  require 'json'
30
31
  require 'ipaddr'
@@ -269,6 +270,17 @@ class Iot
269
270
  iot_connector.set_data_replace_2(soapgw_params, real_ip, remote_ip)
270
271
  end
271
272
 
273
+ #14 integration with SPA
274
+ # add imei to correct profile
275
+ def spa_service_set(soapgw_params, real_ip, remote_ip)
276
+ #imei
277
+ #imsi
278
+ #msisdn
279
+ #unp
280
+ #note
281
+ #descriptiot
282
+ end
283
+
272
284
 
273
285
  def logger_to_audit_database(proc_name, src_ip, input_json, output_json, real_ip)
274
286
  mongo_client.audit_logger(proc_name, src_ip, input_json, output_json, real_ip)
@@ -299,19 +311,21 @@ class Mhub_2
299
311
  :internal_func,
300
312
  :dabrab_connecter,
301
313
  :static_callback,
302
- :crm_connector
314
+ :crm_connector,
315
+ :log_level
303
316
 
304
- def initialize(sk_url_simple, sk_login, sk_password, telegram_api_url, telegram_chat_id, sk_url_broadcast, static_callback, crm_callback_url, crm_login, crm_password, sms_alphaname)
317
+ def initialize(sk_url_simple, sk_login, sk_password, telegram_api_url, telegram_chat_id, sk_url_broadcast, static_callback, crm_callback_url, crm_login, crm_password, sms_alphaname, log_level)
305
318
  @sk_url = sk_url_simple
306
319
  @sk_login = sk_login
307
320
  @sk_password = sk_password
321
+ @log_level = log_level
308
322
  @internal_func = InternalFunc.new
309
- @mhub_connector = Sksk_2.new(sk_url_simple, sk_login, sk_password, sk_url_broadcast, telegram_api_url, telegram_chat_id)
323
+ @mhub_connector = Sksk_2.new(sk_url_simple, sk_login, sk_password, sk_url_broadcast, telegram_api_url, telegram_chat_id, log_level)
310
324
  @internal_func = InternalFunc.new
311
325
  @dabrab_connecter = Dabrab.new
312
326
  @static_callback = static_callback
313
- @crm_connector = Crm_2.new(crm_callback_url, crm_login, crm_password, telegram_api_url, telegram_chat_id)
314
- @mhub_connector = MhubFunctions_2.new(sk_url_simple, sk_login, sk_password, telegram_api_url, telegram_chat_id, sk_url_broadcast, static_callback, crm_callback_url, crm_login, crm_password, sms_alphaname)
327
+ @crm_connector = Crm_2.new(crm_callback_url, crm_login, crm_password, telegram_api_url, telegram_chat_id, log_level)
328
+ @mhub_connector = MhubFunctions_2.new(sk_url_simple, sk_login, sk_password, telegram_api_url, telegram_chat_id, sk_url_broadcast, static_callback, crm_callback_url, crm_login, crm_password, sms_alphaname, log_level)
315
329
  end
316
330
 
317
331
  #{"destinations"=>[{"to"=>{"phoneNumber"=>"375297116638", "emailAddress"=>nil}}],
@@ -327,6 +341,10 @@ class Mhub_2
327
341
  mhub_connector.get_send_message_2(params, ip_src, ip_real, ip_vip)
328
342
  end
329
343
 
344
+ def get_send_message_mass(params, ip_src, ip_real, ip_vip)
345
+ mhub_connector.get_send_message_mass_2(params, ip_src, ip_real, ip_vip)
346
+ end
347
+
330
348
  def recieve_delivery_report(params, ip_src, ip_real, ip_vip)
331
349
  mhub_connector.rec_deliv_report_2(params, ip_src, ip_real, ip_vip)
332
350
  end
@@ -334,6 +352,26 @@ class Mhub_2
334
352
  end
335
353
 
336
354
 
355
+ #2020.09.02 function for some procedure for get message status
356
+ class GmsFunctions_2
357
+
358
+ attr_accessor :gms_func
359
+
360
+ def initialize(gms_t_login, gms_t_password, gms_r_login, gms_r_password, telegram_api_url, telegram_chat_id)
361
+ @gms_func = Gmsgms_2.new(gms_t_login, gms_t_password, gms_r_login, gms_r_password, telegram_api_url, telegram_chat_id)
362
+ end
363
+
364
+ def get_t_status_external(external_id)
365
+ gms_func.get_t_status_external_2(external_id)
366
+ end
367
+
368
+ def get_r_status_external(external_id)
369
+ gms_func.get_r_status_external_2(external_id)
370
+ end
371
+
372
+ end
373
+
374
+
337
375
  class CpsFunctions_2
338
376
 
339
377
  attr_accessor :qps_connector
@@ -431,3 +469,17 @@ class Ukaz60Automation_2
431
469
  end
432
470
 
433
471
  end
472
+
473
+
474
+ class Autovpn
475
+ attr_accessor :vpn_connector
476
+
477
+ def initialize (mongo_vpn_ip, mongo_vpn_port, mongo_vpn_database)
478
+ @vpn_connector = Autovpn.new(mongo_vpn_ip, mongo_vpn_port, mongo_vpn_database)
479
+ end
480
+
481
+ def vpn_add_msisdn_by_example(new_msisdn, example_msisdn)
482
+ vpn_connector.vpn_add_msisdn_by_example_2(new_msisdn, example_msisdn)
483
+ end
484
+
485
+ end
Binary file
@@ -14,8 +14,10 @@ class LogAddFunctions_2
14
14
  end
15
15
 
16
16
  def printer_texter(text, log_level)
17
- mess = {:datetime => datetimenow, :sdk => "imperituroard", :sdk_version => Imperituroard::VERSION, :message => text}
18
- p mess
17
+ if log_level == debug
18
+ mess = {:datetime => datetimenow, :sdk => "imperituroard", :sdk_version => Imperituroard::VERSION, :message => text}
19
+ p mess
20
+ end
19
21
  end
20
22
 
21
23
 
@@ -0,0 +1,90 @@
1
+ require 'net/ssh'
2
+
3
+ class IwagRequester
4
+
5
+ attr_accessor :iwag_host, :iwag_login, :iwag_password
6
+
7
+ def initialize(iwag_host, iwag_login, iwag_password)
8
+ @iwag_host = iwag_host
9
+ @iwag_login = iwag_login
10
+ @iwag_password = iwag_password
11
+ end
12
+
13
+ def mac_parse(mac)
14
+ a = mac.upcase
15
+ pos = a[0] + a[1]
16
+ if pos == "01"
17
+ subscribers_mac = a[2] + a[3] + ":" + a[5] + a[6] + ":" + a[7] + a[8] + ":" + a[10] + a[11] + ":" + a[12] + a[13] + ":" + a[15] + a[16]
18
+ else
19
+ subscribers_mac = a[0] + a[1] + ":" + a[2] + a[3] + ":" + a[5] + a[6] + ":" + a[7] + a[8] + ":" + a[10] + a[11] + ":" + a[12] + a[13]
20
+ end
21
+ subscribers_mac
22
+ end
23
+
24
+
25
+ def iwag_get_dhcp_binding_ssh(bind_ip)
26
+ mac = "Unknown"
27
+ accessinterface = "Unknown"
28
+ hostname = "Unknown"
29
+ ssid = "Unknown"
30
+ iwag_thr = Thread.new do
31
+ Net::SSH.start(iwag_host, iwag_login, :password => iwag_password) do |session|
32
+ answ_bind = session.exec!("show ip dhcp binding #{bind_ip}")
33
+ regexp_main = /\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s{1,20}(\w{2,4}.\w{2,4}.\w{2,4}.\w{2,4})|\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s{1,20}(\w{4}.\w{4}.\w{4})/
34
+ #regexp_main = /\r\n(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s+(\S{13,18})\s+Sep 18 2020 07:44 PM\s+Automatic\s+Active\s+Tunnel201\r\n/
35
+ ggg7 = answ_bind.match(regexp_main)
36
+ begin
37
+ if ggg7[1] != nil
38
+ mac = mac_parse(ggg7[1])
39
+ else
40
+ mac = mac_parse(ggg7[2])
41
+ end
42
+ rescue
43
+ mac = "Unknown"
44
+ end
45
+ regexp_remote_id = /Remote id :\s(\S{2,100})/
46
+ regexp_tunnel = /Active\s{2,40}(\S{2,40})|Selecting\s{2,40}(\S{2,40})/
47
+ regexp_curcuit_id = /Circuit id :\s(\S{2,100})/
48
+ ggg9 = answ_bind.match(regexp_tunnel)
49
+
50
+ begin
51
+ if ggg9[1] != nil
52
+ accessinterface = ggg9[1]
53
+ else
54
+ accessinterface = ggg9[2]
55
+ end
56
+ rescue
57
+ accessinterface = "Unknown"
58
+ end
59
+ ggg8 = answ_bind.match(regexp_remote_id)
60
+ ggg10 = answ_bind.match(regexp_curcuit_id)
61
+ begin
62
+ a1 = ggg8[1].split(":")
63
+ hostname = a1[0]
64
+ ssid = a1[1]
65
+ rescue
66
+ begin
67
+ if ggg8[1] != nil
68
+ if ggg8[1].include?("wireless_public_interface")
69
+ hostname = ggg10[1]
70
+ ssid = "Unknown"
71
+ else
72
+ hostname = ggg8[1]
73
+ ssid = "Unknown"
74
+ end
75
+ else
76
+ ssid = "Unknown"
77
+ hostname = "Unknown"
78
+ end
79
+ rescue
80
+ ssid = "Unknown"
81
+ hostname = "Unknown"
82
+ end
83
+ end
84
+ end
85
+ end
86
+ iwag_thr.join
87
+ {"mac": mac, "iwaginterface": accessinterface, "aphostname": hostname, "SSID": ssid}
88
+ end
89
+
90
+ end
@@ -0,0 +1,24 @@
1
+
2
+
3
+ class IwagDbCache
4
+
5
+ attr_accessor :db_host, :db_login, :db_password
6
+
7
+ def initialize(db_host, db_login, db_password)
8
+ @db_host = db_host
9
+ @db_login = db_login
10
+ @db_password = db_password
11
+ end
12
+
13
+ def check_db_exists(ip)
14
+
15
+ end
16
+
17
+
18
+ def insert_new_cache()
19
+
20
+ end
21
+
22
+
23
+ end
24
+
@@ -22,7 +22,7 @@ end
22
22
  staros_hosts.each do |ggsn|
23
23
  staros_thr_1233 << Thread.new do
24
24
 
25
- p ggsn
25
+ #p ggsn
26
26
 
27
27
  begin
28
28
 
@@ -0,0 +1,27 @@
1
+ require 'imperituroard/projects/autovpn/mongo_vpn'
2
+
3
+ class Autovpn
4
+
5
+ attr_accessor :mongo_client
6
+
7
+ def initialize(mongo_vpn_ip, mongo_vpn_port, mongo_vpn_database)
8
+ @mongo_client = MongoVpn.new(mongo_vpn_ip, mongo_vpn_port, mongo_vpn_database)
9
+ end
10
+
11
+ def vpn_add_msisdn_by_example_2(new_msisdn, example_msisdn)
12
+
13
+ end
14
+
15
+ def test
16
+ mongo_client.get_mongo_msisdn("375298766719")
17
+ end
18
+
19
+ end
20
+
21
+
22
+ vvv = Autovpn.new("172.24.210.177",
23
+ "27017",
24
+ "autovpn"
25
+ )
26
+
27
+ vvv.test
@@ -0,0 +1,56 @@
1
+ require 'mongo'
2
+
3
+ require 'json'
4
+ require 'rubygems'
5
+ require 'nokogiri'
6
+ require 'rails'
7
+
8
+ require 'imperituroard/add_functions/logger/any_functions'
9
+
10
+ class MongoVpn
11
+
12
+ attr_accessor :mongo_vpn_ip, :mongo_vpn_port, :client_vpn, :mongo_vpn_database, :internal_vpn_func, :logger_any
13
+
14
+ def initialize(mongo_vpn_ip, mongo_vpn_port, mongo_vpn_database)
15
+ @mongo_vpn_database = mongo_vpn_database
16
+ @mongo_vpn_ip = mongo_vpn_ip
17
+ @mongo_vpn_port = mongo_vpn_port
18
+ client_vpn_host = [mongo_vpn_ip + ":" + mongo_vpn_port]
19
+ @client_vpn = Mongo::Client.new(client_vpn_host, :database => mongo_vpn_database)
20
+ @logger_any = LogAddFunctions_2.new
21
+ end
22
+
23
+ #get data by msisdn. Validate data from collection msisdn_list
24
+ def get_mongo_msisdn(msisdn)
25
+ out_resp = {}
26
+ begin
27
+ msisdn_data = []
28
+ collection = client_vpn[:msisdn_list]
29
+ collection.find({:msisdn => msisdn.to_s}).each {|row|
30
+ msisdn_data = row
31
+ }
32
+ if msisdn_data != [] && msisdn_data["msisdn"] != nil && msisdn_data["msisdn"] != ""
33
+ if msisdn_data["group_id"] != [] && msisdn_data["group_id"] != nil && msisdn_data["group_id"] != ""
34
+ if msisdn_data["profile_id"] != [] && msisdn_data["profile_id"] != nil && msisdn_data["profile_id"] != ""
35
+ out_resp = {:code => 200, :result => "get_mongo_msisdn: Request completed successfully", :body => msisdn_data}
36
+ else
37
+ out_resp = {:code => 406, :result => "get_mongo_msisdn: invalid data. profile_id not found"}
38
+ end
39
+ else
40
+ out_resp = {:code => 405, :result => "get_mongo_msisdn: invalid data. organization_id not found"}
41
+ end
42
+ else
43
+ out_resp = {:code => 404, :result => "get_mongo_msisdn: login not found in database"}
44
+ end
45
+ rescue
46
+ out_resp = {:code => 507, :result => "get_mongo_msisdn: Unknown SDK error"}
47
+ end
48
+ logger_any.printer_texter(out_resp, "debug")
49
+ out_resp
50
+ end
51
+
52
+
53
+
54
+ end
55
+
56
+
@@ -228,6 +228,7 @@ class IotFunctions_2
228
228
  imei_list = im_li
229
229
 
230
230
  input_json = {:request_full => request_full}
231
+ input_json22 = {:login => login, :imei_list => imei_list}
231
232
  resp_out = {}
232
233
  begin
233
234
 
@@ -367,7 +368,7 @@ class IotFunctions_2
367
368
  end
368
369
  thr1.join
369
370
 
370
- resp_out[:body][:tosoapgw] = internal_func.iot_create_dev_soapgw_answer(input_json, resp_out)
371
+ resp_out[:body][:tosoapgw] = internal_func.iot_create_dev_soapgw_answer(input_json22, resp_out)
371
372
  mongo_client.audit_logger("add_device_to_profile", remote_ip, input_json, resp_out, real_ip, {})
372
373
  resp_out
373
374
  end
@@ -1426,6 +1427,6 @@ class IotFunctions_2
1426
1427
  p "yyyyy"
1427
1428
 
1428
1429
  #fff = HuaIot.new("134.17.93.4", "443", "/Users/imperituroard/Desktop/cert.crt", "/Users/imperituroard/Desktop/key.pem")
1429
- p hua_aceanconnect_connector.querying_device_id("Jy5KpoBUOScZEcrO2bRZhzfaIOUa", "VFFWTOb9k3_cQhzrGsRWT4HE8Z0a", "123456789876543")
1430
+ p hua_aceanconnect_connector.querying_device_id("Jy5KpoBUOScZEcrO2bRZhzfaIOUa", "VFFWTOb9k3_cQhzrGsRWT4HE8Z0a", "123412341284999")
1430
1431
  end
1431
1432
  end
@@ -55,8 +55,8 @@ class AdditionalFunc
55
55
  note=i["note"]
56
56
  end
57
57
  end
58
- if i.key?("type")
59
- type=i["type"]
58
+ if i.key?("device_type")
59
+ type=i["device_type"]
60
60
  end
61
61
  if i.key?("profile")
62
62
  profile=i["profile"]
@@ -82,6 +82,7 @@ class HuaIot
82
82
  request.content_type = 'application/x-www-form-urlencoded'
83
83
  request.body = URI.encode_www_form(data)
84
84
  res = https.request(request)
85
+ p "get_token"
85
86
  p res.code
86
87
  p res.message
87
88
  p res.body.to_s
@@ -293,27 +294,30 @@ class HuaIot
293
294
 
294
295
  #2.2.44 Querying the Device ID
295
296
  def querying_device_id(app_id, secret, node_id)
296
- token = get_token(app_id, secret)[:body]["accessToken"]
297
- p token
298
- path = "/iocm/app/dm/v1.1.0/queryDeviceIdByNodeId?nodeId=" + node_id + "&appId=Jy5KpoBUOScZEcrO2bRZhzfaIOUa"
299
- p path
300
- p path
301
- url_string = "https://" + platformip + ":" + platformport + path
302
- p url_string
303
- uri = URI.parse url_string
304
- https = Net::HTTP.new(uri.host, uri.port)
305
- https.use_ssl = true
306
- https.cert = OpenSSL::X509::Certificate.new(File.read(cert_file))
307
- https.key = OpenSSL::PKey::RSA.new(File.read(key_file))
308
- https.verify_mode = OpenSSL::SSL::VERIFY_NONE
309
- request = Net::HTTP::Get.new(uri.path)
310
- request.content_type = 'application/json'
311
- request['Authorization'] = 'Bearer ' + token
312
- request['app_key'] = app_id
313
- res = https.request(request)
314
- p res.body.to_s
315
- p res.code
316
- {:code => res.code, :message => res.message, :body => valid_json?(res.body.to_s)}
297
+ get_token_data = get_token(app_id, secret)
298
+ if get_token_data[:code]=="200"
299
+ token = get_token_data[:body]["accessToken"]
300
+ uri1 = URI("https://134.17.93.4:8743/iocm/app/dm/v1.1.0/queryDeviceIdByNodeId?nodeId=" + node_id + "&" + app_id)
301
+ https = Net::HTTP.new(uri1.host, uri1.port)
302
+ https.use_ssl = true
303
+ https.cert = OpenSSL::X509::Certificate.new(File.read(cert_file))
304
+ https.key = OpenSSL::PKey::RSA.new(File.read(key_file))
305
+ https.verify_mode = OpenSSL::SSL::VERIFY_NONE
306
+ request = Net::HTTP::Get.new(uri1)
307
+ request.content_type = 'application/json'
308
+ request['app_key'] = app_id
309
+ request['Authorization'] = 'Bearer ' + token
310
+ #request.set_form_data( params )
311
+ #request['node-id'] = node_id
312
+ bbb = {"nodeId": node_id, "appId": "Jy5KpoBUOScZEcrO2bRZhzfaIOUa"}.to_json
313
+ #request.body = bbb
314
+ res = https.request(request)
315
+ #p res.body.to_s
316
+ #p res.code
317
+ {:code => res.code, :message => res.message, :body => valid_json?(res.body.to_s)}
318
+ else
319
+ {:code => "500", :message => "Something wrong", :body => {}}
320
+ end
317
321
  end
318
322
 
319
323
  #2.2.14 Querying Device Activation Status