Class: MongoWifiCl_1

Inherits:
Object
  • Object
show all
Defined in:
lib/freewifi/database/mongo/mongoconnector.rb

Overview

class for communication with mongo database for iot API

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(mongo_ip, mongo_port, mongo_database) ⇒ MongoWifiCl_1

Returns a new instance of MongoWifiCl_1.



12
13
14
15
16
17
18
19
20
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 12

def initialize(mongo_ip, mongo_port, mongo_database)
  @mongo_database = mongo_database
  @mongo_ip = mongo_ip
  @mongo_port = mongo_port
  client_host = [mongo_ip + ":" + mongo_port]
  @client = Mongo::Client.new(client_host, :database => mongo_database, :connect_timeout => 2)

  @additional_func_1 = InternalFunc_1.new
end

Instance Attribute Details

#additional_func_1Object

Returns the value of attribute additional_func_1.



10
11
12
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 10

def additional_func_1
  @additional_func_1
end

#clientObject

Returns the value of attribute client.



10
11
12
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 10

def client
  @client
end

#mongo_databaseObject

Returns the value of attribute mongo_database.



10
11
12
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 10

def mongo_database
  @mongo_database
end

#mongo_ipObject

Returns the value of attribute mongo_ip.



10
11
12
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 10

def mongo_ip
  @mongo_ip
end

#mongo_portObject

Returns the value of attribute mongo_port.



10
11
12
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 10

def mongo_port
  @mongo_port
end

Instance Method Details

#audit_logger_wifi_1(proc_name, src_ip, input_json, output_json, real_ip, subscriber_ip) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 22

def audit_logger_wifi_1(proc_name, src_ip, input_json, output_json, real_ip, subscriber_ip)
  out_resp = {}
  begin
    current = additional_func_1.datetimenow_1
    collection = client[:audit]
    doc = {
        :proc_name => proc_name,
        :date => current,
        :sender => {:src_ip => src_ip, :real_ip => real_ip, :subscriber_ip => subscriber_ip},
        :input_params => input_json,
        :output_params => output_json,
        :sdk_version => Freewifi_1::VERSION
    }
    result = collection.insert_one(doc)
    out_resp = {:code => 200, :result => "audit_logger_wifi_1: Request completed successfully", :body => result, :sdk => "freewifi"}
  rescue
    out_resp = {:code => 507, :result => "audit_logger_wifi_1: Unknown SDK error", :sdk => "freewifi"}
  end
  additional_func_1.printer_texter_wifi_1(out_resp, "debug")
  out_resp
end

#audit_logger_wifi_portal_1(proc_name, src_ip, input_json, output_json, real_ip) ⇒ Object



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 44

def audit_logger_wifi_portal_1(proc_name, src_ip, input_json, output_json, real_ip)
  out_resp = {}
  begin
    current = additional_func_1.datetimenow_1
    collection = client[:audit_portal]
    doc = {
        :proc_name => proc_name,
        :date => current,
        :sender => {:src_ip => src_ip, :real_ip => real_ip},
        :input_params => input_json,
        :output_params => output_json,
        :sdk_version => Freewifi_1::VERSION
    }
    result = collection.insert_one(doc)
    out_resp = {:code => 200, :result => "audit_logger_wifi_1: Request completed successfully", :body => result, :sdk => "freewifi"}
  rescue
    out_resp = {:code => 507, :result => "audit_logger_wifi_1: Unknown SDK error", :sdk => "freewifi"}
  end
  additional_func_1.printer_texter_wifi_1(out_resp, "debug")
  out_resp
end

#data_ap_auto_created_insert_1(data) ⇒ Object



67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 67

def data_ap_auto_created_insert_1(data)
  input_params = {:data => data}
  output_params = {}
  begin
    collection = client[:ap_auto_created]
    result = collection.insert_one(data)
    output_params = {:code => 200, :result => "data_ap_auto_created_insert_1: Request completed successfully", :body => result, :sdk => "freewifi"}
  rescue
    output_params = {:code => 500, :result => "data_ap_auto_created_insert_1: failed insert data to mongo", :sdk => "freewifi"}
  end
  additional_func_1.printer_texter_wifi_1({:input_params => input_params, :output_params => output_params, :procedure => "data_ap_auto_created_insert_1", :file => "freewifi/database/mongo/mongoconnector.rb", :sdk => "freewifi"}, "debug")
  output_params
end

#get_ap_info_sim_ip_wifi_1(sim_ipaddress, sim_msisdn) ⇒ Object



81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 81

def get_ap_info_sim_ip_wifi_1(sim_ipaddress, sim_msisdn)
  input_params = {:sim_ipaddress => sim_ipaddress, :sim_msisdn => sim_msisdn}
  output_params = {}
  begin
    result_ps = []
    collection = client[:ap_auto_created]
    collection.find({"sim_ipaddress" => sim_ipaddress, "sim_msisdn" => sim_msisdn}).each {|row|
      result_ps << row
      #result_ps.append(row)
    }
    tun_id = ""
    if result_ps != []
      if result_ps[0].key?("tunnel_id")
        tun_id = result_ps[0]["tunnel_id"]
      end
    end
    output_params = {:code => 200, :result => "get_ap_info_sim_ip_wifi_1: Request completed successfully", :body => {:all_mongo => result_ps, :tunnel_id => tun_id }, :sdk => "freewifi"}
  rescue
    output_params = {:code => 500, :result => "get_ap_info_sim_ip_wifi_1: failed ", :sdk => "freewifi"}
  end
  additional_func_1.printer_texter_wifi_1({:input_params => input_params, :output_params => output_params, :procedure => "get_ap_info_sim_ip_wifi_1", :file => "freewifi/database/mongo/mongoconnector.rb", :sdk => "freewifi"}, "debug")
  output_params
end

#tunnelid_remove_single_mongo_1(tunnel_id) ⇒ Object



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
# File 'lib/freewifi/database/mongo/mongoconnector.rb', line 105

def tunnelid_remove_single_mongo_1(tunnel_id)
  out_resp = {}
  begin
    collection = client[:ap_auto_created]
    doc = {
        "tunnel_id" => tunnel_id
    }
    result = collection.delete_many(doc)
    p result
    out_resp = {:code => 200, :result => "tunnelid_remove_single_mongo_1: Request completed successfully", :sdk => "freewifi"}
  rescue
    out_resp = {:code => 507, :result => "tunnelid_remove_single_mongo_1: Unknown SDK error", :sdk => "freewifi"}
  end
  #internal_func.printer_texter(out_resp, "debug")
  out_resp
end