imperituroard 0.4.8 → 0.4.9
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 45ef3c7115d6ab674dcf9d14460a7b14388d16ef
|
4
|
+
data.tar.gz: 0c77a69151136f2d1377fffcaf1f29e6abacf49c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '038bd9f35f37440b6c5bd7a288a2e06f8955258643ae113b647edbd6c7a0110506294e107718759a8c552a2690c2caf340dfc1a113734ad9a210c84cca64f8b1'
|
7
|
+
data.tar.gz: 845b39504e1c12da72ded315ac1ff49bb40a811eba8819283a7dff420b9e59f4c23c13df3e69716faf6927c52a69c53eb76bb8675228b25c1eb689b896efb1f7
|
data/lib/imperituroard/.DS_Store
CHANGED
Binary file
|
@@ -61,9 +61,9 @@ class InternalFunc
|
|
61
61
|
end
|
62
62
|
end
|
63
63
|
if is_string == 0
|
64
|
-
output_params = {:code => 200, :result => "if_digit_or_string: Request processed", :body => {:string => false}}
|
64
|
+
output_params = {:code => 200, :result => "if_digit_or_string: Request processed. Its digit", :body => {:string => false}}
|
65
65
|
else
|
66
|
-
output_params = {:code => 200, :result => "if_digit_or_string: Request processed", :body => {:string => true}}
|
66
|
+
output_params = {:code => 200, :result => "if_digit_or_string: Request processed. Its string", :body => {:string => true}}
|
67
67
|
end
|
68
68
|
output_params
|
69
69
|
|
@@ -475,6 +475,33 @@ class MongoIot
|
|
475
475
|
end
|
476
476
|
|
477
477
|
|
478
|
+
#function for get iot platform credentials from profile
|
479
|
+
def get_iot_oceanconn_credent_2(profile)
|
480
|
+
out_resp = {}
|
481
|
+
begin
|
482
|
+
result_ps = []
|
483
|
+
collection = client[:device_profiles]
|
484
|
+
|
485
|
+
if internal_func.if_digit_or_string(profile.to_s)[:body][:string]
|
486
|
+
collection.find({"profile" => profile}).each {|row|
|
487
|
+
result_ps.append(row)
|
488
|
+
}
|
489
|
+
else
|
490
|
+
collection.find({"profile_id" => profile.to_i}).each {|row|
|
491
|
+
result_ps.append(row)
|
492
|
+
}
|
493
|
+
end
|
494
|
+
|
495
|
+
app_id = result_ps[0][:iot_data][:app_id]
|
496
|
+
secret = result_ps[0][:iot_data][:secret]
|
497
|
+
out_resp = {:code => 200, :result => "get_iot_oceanconn_credent_2: Request completed successfully", :body => {:app_id => app_id, :secret => secret}}
|
498
|
+
rescue
|
499
|
+
out_resp = {:code => 500, :result => "get_iot_oceanconn_credent_2: Process failed"}
|
500
|
+
end
|
501
|
+
internal_func.printer_texter(out_resp, "debug")
|
502
|
+
out_resp
|
503
|
+
end
|
504
|
+
|
478
505
|
def get_device_type_info_by_model(device_model)
|
479
506
|
out_resp = {}
|
480
507
|
begin
|
@@ -497,30 +524,4 @@ class MongoIot
|
|
497
524
|
end
|
498
525
|
|
499
526
|
|
500
|
-
def ttt
|
501
|
-
p "111111"
|
502
|
-
begin
|
503
|
-
puts(client.cluster.inspect)
|
504
|
-
puts('Collection Names: ')
|
505
|
-
puts(client.database.collection_names)
|
506
|
-
puts('Connected!')
|
507
|
-
collection = client[:audit]
|
508
|
-
doc = {
|
509
|
-
name: 'Steve',
|
510
|
-
hobbies: ['hiking', 'tennis', 'fly fishing'],
|
511
|
-
siblings: {
|
512
|
-
brothers: 0,
|
513
|
-
sisters: 1
|
514
|
-
}
|
515
|
-
}
|
516
|
-
result = collection.insert_one(doc)
|
517
|
-
p result
|
518
|
-
client.close
|
519
|
-
rescue StandardError => err
|
520
|
-
puts('Error: ')
|
521
|
-
puts(err)
|
522
|
-
end
|
523
|
-
|
524
|
-
|
525
|
-
end
|
526
527
|
end
|
@@ -108,10 +108,21 @@ class IotFunctions_2
|
|
108
108
|
if for_insert!=[]
|
109
109
|
##Logic for IOT Platform connection###
|
110
110
|
|
111
|
-
credentials = mongo_client.get_iot_oceanconnect_credent(login)
|
112
111
|
|
113
|
-
|
114
|
-
|
112
|
+
for aaa in for_insert
|
113
|
+
|
114
|
+
#########change 2020.05.11. imperituroard
|
115
|
+
#########replace process for get iot app_id and password from users to profile
|
116
|
+
|
117
|
+
#credentials = mongo_client.get_iot_oceanconnect_credent(login)
|
118
|
+
credentials = mongo_client.get_iot_oceanconn_credent_2(aaa["profile"])
|
119
|
+
|
120
|
+
#########
|
121
|
+
|
122
|
+
|
123
|
+
if credentials[:code] == 200
|
124
|
+
|
125
|
+
|
115
126
|
begin
|
116
127
|
dev_name = aaa["imei"].to_s
|
117
128
|
|
@@ -146,18 +157,22 @@ class IotFunctions_2
|
|
146
157
|
rescue
|
147
158
|
not_processed_list.append({:imei => aaa["imei"], :error => "Unknown error with insertion imei on IOT platform"})
|
148
159
|
end
|
149
|
-
end
|
150
160
|
|
151
|
-
#########end iot platform logic#######
|
152
161
|
|
153
|
-
|
154
|
-
|
155
|
-
resp_out = {:code => 200, :result => "Data processed", :body => {:imei_processed => added_on_iot_platf, :error_list => not_processed_list}}
|
162
|
+
#########end iot platform logic#######
|
163
|
+
|
156
164
|
else
|
157
|
-
|
165
|
+
resss_err = {:code => 400, :result => "IOT platform credentials not found"}
|
166
|
+
not_processed_list.append({:imei => aaa["imei"], :error => resss_err})
|
158
167
|
end
|
159
|
-
|
160
|
-
|
168
|
+
|
169
|
+
end
|
170
|
+
|
171
|
+
if added_on_iot_platf.length != 0
|
172
|
+
mongo_client.imei_insert_list(added_on_iot_platf)
|
173
|
+
resp_out = {:code => 200, :result => "Data processed", :body => {:imei_processed => added_on_iot_platf, :error_list => not_processed_list}}
|
174
|
+
else
|
175
|
+
resp_out = {:code => 202, :result => "Empty list. Nothing for insertion", :body => {:imei_processed => added_on_iot_platf, :error_list => not_processed_list}}
|
161
176
|
end
|
162
177
|
|
163
178
|
|
@@ -344,7 +359,7 @@ class IotFunctions_2
|
|
344
359
|
internal_func.printer_texter({:function => "imei_replace Step6", :list_from_iot => list_from_iot, :description => "data from iot platform by old imei"}, "debug")
|
345
360
|
|
346
361
|
#processing data. modifying data on iot platform and mongoDB
|
347
|
-
if list_from_iot[:code]=="200"
|
362
|
+
if list_from_iot[:code]=="200" && list_from_iot[:body]["devices"] != nil
|
348
363
|
|
349
364
|
for ard in list_from_iot[:body]["devices"]
|
350
365
|
p ard
|
@@ -355,7 +370,19 @@ class IotFunctions_2
|
|
355
370
|
new_data_cur_dev = ard["deviceInfo"]
|
356
371
|
new_data_cur_dev["nodeId"] = old_new_translation[current_old_dev.to_i].to_s
|
357
372
|
|
358
|
-
|
373
|
+
p list_from_iot
|
374
|
+
p "list_from_iot"
|
375
|
+
|
376
|
+
|
377
|
+
#########change 2020.05.11. imperituroard
|
378
|
+
#########replace process for get iot app_id and password from users to profile
|
379
|
+
|
380
|
+
#credentials = mongo_client.get_iot_oceanconnect_credent(login)
|
381
|
+
info_from_mongo = mongo_client.get_imei_info_from_db([current_old_dev.to_i])
|
382
|
+
credentials = mongo_client.get_iot_oceanconn_credent_2(info_from_mongo[:body][0]["profile"])
|
383
|
+
|
384
|
+
#########
|
385
|
+
|
359
386
|
|
360
387
|
if credentials[:code]==200
|
361
388
|
flag_remove=0
|
@@ -436,7 +463,14 @@ class IotFunctions_2
|
|
436
463
|
|
437
464
|
##Logic for IOT Platform connection###
|
438
465
|
|
439
|
-
|
466
|
+
#########change 2020.05.11. imperituroard
|
467
|
+
#########replace process for get iot app_id and password from users to profile
|
468
|
+
|
469
|
+
#credentials = mongo_client.get_iot_oceanconnect_credent(login)
|
470
|
+
credentials = mongo_client.get_iot_oceanconn_credent_2(prof_name[:body]["profile"])
|
471
|
+
|
472
|
+
#########
|
473
|
+
|
440
474
|
resp = {}
|
441
475
|
|
442
476
|
if credentials[:code]==200
|
@@ -518,13 +552,21 @@ class IotFunctions_2
|
|
518
552
|
if permiss[:code]==200
|
519
553
|
|
520
554
|
##Logic for IOT Platform connection###
|
521
|
-
|
555
|
+
|
556
|
+
#########change 2020.05.11. imperituroard
|
557
|
+
#########replace process for get iot app_id and password from users to profile
|
558
|
+
|
559
|
+
#credentials = mongo_client.get_iot_oceanconnect_credent(login)
|
560
|
+
credentials = mongo_client.get_iot_oceanconn_credent_2(prof_name[:body]["profile"])
|
561
|
+
|
562
|
+
#########
|
563
|
+
|
522
564
|
resp = {}
|
523
565
|
|
524
566
|
if credentials[:code]==200
|
525
567
|
imei_data = mongo_client.get_imei_info_from_db([p[:imei]])
|
526
568
|
if imei_data[:body]!=[]
|
527
|
-
ans =hua_aceanconnect_connector.modify_location_iot(credentials[:body][:app_id], credentials[:body][:secret], imei_data[:body][0]["huadata"]["body"]["deviceId"], p[:address])
|
569
|
+
ans = hua_aceanconnect_connector.modify_location_iot(credentials[:body][:app_id], credentials[:body][:secret], imei_data[:body][0]["huadata"]["body"]["deviceId"], p[:address])
|
528
570
|
|
529
571
|
internal_func.printer_texter({:function => "device_add_address Step2", :ans => ans, :descrition => "answer from hua IOT", :input => {:did => imei_data[:body][0]["huadata"]["body"]["deviceId"], :appid => credentials[:body][:app_id], :secret => credentials[:body][:secret], :address => p[:address]}}, "debug")
|
530
572
|
end
|
@@ -700,24 +742,24 @@ class IotFunctions_2
|
|
700
742
|
data_soapgw.append({:id => ff["profile_id"], :form => ff["form"], :description => ff["description"], :profile => ff["profile"]})
|
701
743
|
|
702
744
|
end
|
703
|
-
tosoapgw = {
|
704
|
-
|
705
|
-
|
745
|
+
tosoapgw = {:code => 200,
|
746
|
+
:result => "Request completed successfully",
|
747
|
+
:profiles => data_soapgw
|
706
748
|
}
|
707
749
|
|
708
750
|
resp_out = {:code => 200, :result => "Request completed successfully", :body => {:data => data_processed, :tosoapgw => tosoapgw}}
|
709
751
|
else
|
710
|
-
tosoapgw = {
|
711
|
-
|
712
|
-
|
752
|
+
tosoapgw = {:code => login_info[:code],
|
753
|
+
:result => login_info[:result],
|
754
|
+
:profiles => data_soapgw
|
713
755
|
}
|
714
756
|
resp_out = {:code => login_info[:code], :result => login_info[:result], :body => {:tosoapgw => tosoapgw}}
|
715
757
|
end
|
716
758
|
|
717
759
|
rescue
|
718
|
-
tosoapgw = {
|
719
|
-
|
720
|
-
|
760
|
+
tosoapgw = {:code => 507,
|
761
|
+
:result => "Unknown SDK error",
|
762
|
+
:profiles => data_soapgw
|
721
763
|
}
|
722
764
|
resp_out = {:code => 507, :result => "Unknown SDK error", :body => {:tosoapgw => tosoapgw}}
|
723
765
|
end
|
@@ -756,24 +798,24 @@ class IotFunctions_2
|
|
756
798
|
data_soapgw.append({:name => ff["model"], :form => ff["form"], :description => ff["description"], :type_id => ff["type_id"]})
|
757
799
|
end
|
758
800
|
|
759
|
-
tosoapgw = {
|
760
|
-
|
761
|
-
|
801
|
+
tosoapgw = {:code => 200,
|
802
|
+
:result => "Request completed successfully",
|
803
|
+
:types => data_soapgw
|
762
804
|
}
|
763
805
|
|
764
806
|
resp_out = {:code => 200, :result => "Request completed successfully", :body => {:data => data_processed, :tosoapgw => tosoapgw}}
|
765
807
|
else
|
766
|
-
tosoapgw = {
|
767
|
-
|
768
|
-
|
808
|
+
tosoapgw = {:code => login_info[:code],
|
809
|
+
:result => login_info[:result],
|
810
|
+
:types => data_soapgw
|
769
811
|
}
|
770
812
|
resp_out = {:code => login_info[:code], :result => login_info[:result], :body => {:tosoapgw => tosoapgw}}
|
771
813
|
end
|
772
814
|
|
773
815
|
rescue
|
774
|
-
tosoapgw = {
|
775
|
-
|
776
|
-
|
816
|
+
tosoapgw = {:code => 507,
|
817
|
+
:result => "Unknown SDK error",
|
818
|
+
:types => data_soapgw
|
777
819
|
}
|
778
820
|
resp_out = {:code => 507, :result => "Unknown SDK error", :body => {:tosoapgw => tosoapgw}}
|
779
821
|
end
|
@@ -842,25 +884,74 @@ class IotFunctions_2
|
|
842
884
|
end
|
843
885
|
|
844
886
|
|
845
|
-
|
846
|
-
|
847
887
|
#additional procedure for checking status on iot platform
|
848
888
|
def get_info_by_imeilist_from_iot(login, imei_list)
|
849
889
|
resp_out={}
|
850
890
|
begin
|
851
891
|
dev_id_list = []
|
892
|
+
for_process_list = {}
|
852
893
|
resss = {}
|
853
894
|
data_from_db = mongo_client.get_imei_info_from_db(imei_list)
|
854
895
|
p data_from_db
|
896
|
+
profile = 0
|
855
897
|
for g in data_from_db[:body]
|
898
|
+
p g
|
899
|
+
p "ggggg"
|
856
900
|
dev_id_list.append(g["huadata"]["body"]["deviceId"])
|
901
|
+
|
902
|
+
if for_process_list[g["profile"]] == nil
|
903
|
+
for_process_list[g["profile"]] = [g["huadata"]["body"]["deviceId"]]
|
904
|
+
else
|
905
|
+
for_process_list[g["profile"]].append(g["huadata"]["body"]["deviceId"])
|
906
|
+
end
|
907
|
+
|
908
|
+
if g["profile"] != nil && g["profile"] != ""
|
909
|
+
profile = g["profile"]
|
910
|
+
end
|
857
911
|
end
|
858
|
-
|
859
|
-
|
860
|
-
|
861
|
-
|
862
|
-
|
912
|
+
|
913
|
+
p dev_id_list
|
914
|
+
p "dev_id_list"
|
915
|
+
p for_process_list
|
916
|
+
|
917
|
+
for ard in for_process_list
|
918
|
+
##Logic for IOT Platform connection###
|
919
|
+
|
920
|
+
#########change 2020.05.11. imperituroard
|
921
|
+
#########replace process for get iot app_id and password from users to profile
|
922
|
+
|
923
|
+
#credentials = mongo_client.get_iot_oceanconnect_credent(login)
|
924
|
+
credentials = mongo_client.get_iot_oceanconn_credent_2(ard[0])
|
925
|
+
|
926
|
+
#########
|
927
|
+
|
928
|
+
if credentials[:code] == 200
|
929
|
+
resp_out[:code] = "200"
|
930
|
+
resp_out[:result] = "Processed"
|
931
|
+
p apid = credentials[:body][:app_id]
|
932
|
+
p secre = credentials[:body][:secret]
|
933
|
+
resp_out_1 = hua_aceanconnect_connector.quer_dev_query_list(apid, secre, ard[1])
|
934
|
+
p resp_out_1
|
935
|
+
p "resp_out_1"
|
936
|
+
p resp_out[:body]
|
937
|
+
p "resp_out[:body][\"devices\"]"
|
938
|
+
|
939
|
+
if resp_out[:body] == nil || resp_out[:body] == {} || resp_out[:body] == {"devices"=>nil}
|
940
|
+
p "step1111"
|
941
|
+
p resp_out_1[:body]["devices"]
|
942
|
+
resp_out[:body] = { 'devices' => resp_out_1[:body]["devices"]}
|
943
|
+
p "step22222"
|
944
|
+
else
|
945
|
+
if resp_out_1[:body]["devices"] != nil
|
946
|
+
resp_out[:body]["devices"] = resp_out[:body]["devices"] + resp_out_1[:body]["devices"]
|
947
|
+
end
|
948
|
+
end
|
949
|
+
end
|
863
950
|
end
|
951
|
+
|
952
|
+
p resp_out
|
953
|
+
p "resp_out"
|
954
|
+
|
864
955
|
rescue
|
865
956
|
resp_out = {:code => "500", :message => "get_info_by_imeilist_from_iot: Something wrong", :body => {"devices" => []}}
|
866
957
|
end
|
@@ -899,5 +990,4 @@ class IotFunctions_2
|
|
899
990
|
end
|
900
991
|
|
901
992
|
|
902
|
-
|
903
993
|
end
|