class MongoCPS_2

Attributes

client[RW]
internal_func[RW]
mongo_database[RW]
mongo_ip[RW]
mongo_port[RW]
subs_collection[RW]

Public Class Methods

new(mongo_ip, mongo_port, mongo_database) click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 7
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, :server_selection_timeout => 5)
  @subs_collection = client[:subscriber]
end

Public Instance Methods

get_minsk_fttx_fizlic() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 16
def get_minsk_fttx_fizlic
  answ_res_msisdn = []
  req_json = {"$and": [{"avps_key.code_key": {"$not": /IN-ACL/}}, {"credentials_key.network_id_key": {"$in": [/ Min/, /Minsk/]}}, {"$or": [{"services_key.code_key": "FR12083"}, {"services_key.code_key": "FR7967"}, {"services_key.code_key": "FR7241"}, {"services_key.code_key": "FR7242"}, {"services_key.code_key": "FR7243"}, {"services_key.code_key": "FR7244"}, {"services_key.code_key": "FR9749"}, {"services_key.code_key": "FR9750"}, {"services_key.code_key": "FR9751"}, {"services_key.code_key": "FR9752"}, {"services_key.code_key": "FR11885"}, {"services_key.code_key": "FR14994"}, {"services_key.code_key": "FR15506"}, {"services_key.code_key": "FR17303"}, {"services_key.code_key": "FR11484"}]}, {"credentials_key.network_id_key": {"$not": /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ""
    username = ""
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
get_minsk_fttx_zone2() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 37
def get_minsk_fttx_zone2
  answ_res_msisdn = []
  req_json = {'$and': [{'avps_key.code_key':
                            {'$not': /IN-ACL/}},
                       {'credentials_key.network_id_key':
                            {'$in':
                                 [/Min_Nezavisimosti_164/,
                                  /Min_Nezavisimosti_181/,
                                  /Min_Nezavisimosti_183/,
                                  /Min_Nezavisimosti_185/,
                                  /Min_Nezavisimosti_42/,
                                  /Min_Nezavisimosti_40/,
                                  /Min_Nezavisimosti_60/,
                                  /Min_Nezavisimosti_44/,
                                  /Min_Nezavisimosti_52/,
                                  /Min_Nezavisimosti_46/,
                                  /Min_Nezavisimosti_48/,
                                  /Min_Surganova_52/,
                                  /Min_Surganova_64/,
                                  /Min_Surganova_76/,
                                  /Min_Bogdanovicha_108/,
                                  /Min_Bogdanovicha_116/,
                                  /Min_Bogdanovicha_114/,
                                  /Min_Prityckogo_160/,
                                  /Min_Kropotkina_47/,
                                  /Storozhevskaya_8/,
                                  /Min_Kozlova_2/,
                                  /Min_Kozlova_4/,
                                  /Min_Kozlova_6/,
                                  /Min_Kozlova_5/,
                                  /Min_Kozlova_7/,
                                  /Min_Kozlova_9/,
                                  /Min_Bjaduli_3/,
                                  /Min_Bjaduli_5/,
                                  /Min_Bjaduli_6/,
                                  /Min_Bjaduli_8/,
                                  /Min_Bjaduli_12/,
                                  /Min_Pervomajskaja_15/,
                                  /Min_Pervomajskaja_17/,
                                  /Min_Zaharova_19/,
                                  /Min_Zaharova_23/,
                                  /Min_Zaharova_25/,
                                  /Min_Zaharova_27/,
                                  /Min_Zaharova_29/,
                                  /Min_Zaharova_33/,
                                  /Min_Bronevoj_12/,
                                  /Min_Bronevoj_13/,
                                  /Min_Vojskovoj_10/,
                                  /Min_Vojskovoj_13/,
                                  /Min_Vojskovoj_14/,
                                  /Min_Vojskovoj_15/,
                                  /Min_Rumjanceva_13/,
                                  /Min_Rumjanceva_14/,
                                  /Min_Rumjanceva_15/,
                                  /Min_Rumjanceva_17/]}},
                       {'$or': [{'services_key.code_key': 'FR12083'},
                                {'services_key.code_key': 'FR7967'},
                                {'services_key.code_key': 'FR7241'},
                                {'services_key.code_key': 'FR7242'},
                                {'services_key.code_key': 'FR7243'},
                                {'services_key.code_key': 'FR7244'},
                                {'services_key.code_key': 'FR9749'},
                                {'services_key.code_key': 'FR9750'},
                                {'services_key.code_key': 'FR9751'},
                                {'services_key.code_key': 'FR9752'},
                                {'services_key.code_key': 'FR11885'},
                                {'services_key.code_key': 'FR14994'},
                                {'services_key.code_key': 'FR15506'},
                                {'services_key.code_key': 'FR17303'},
                                {'services_key.code_key': 'FR11484'}]},
                       {'credentials_key.network_id_key': {'$not': /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ''
    username = ''
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
get_minsk_fttx_zone3_rokos() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 127
def get_minsk_fttx_zone3_rokos
  answ_res_msisdn = []
  req_json = {'$and': [{'avps_key.code_key':
                            {'$not': /IN-ACL/}},
                       {'credentials_key.network_id_key':
                            {'$in':
                                 [/Rokossovskogo_81/]}},
                       {'$or': [{'services_key.code_key': 'FR12083'},
                                {'services_key.code_key': 'FR7967'},
                                {'services_key.code_key': 'FR7241'},
                                {'services_key.code_key': 'FR7242'},
                                {'services_key.code_key': 'FR7243'},
                                {'services_key.code_key': 'FR7244'},
                                {'services_key.code_key': 'FR9749'},
                                {'services_key.code_key': 'FR9750'},
                                {'services_key.code_key': 'FR9751'},
                                {'services_key.code_key': 'FR9752'},
                                {'services_key.code_key': 'FR11885'},
                                {'services_key.code_key': 'FR14994'},
                                {'services_key.code_key': 'FR15506'},
                                {'services_key.code_key': 'FR17303'},
                                {'services_key.code_key': 'FR11484'}]},
                       {'credentials_key.network_id_key': {'$not': /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ''
    username = ''
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
get_minsk_fttx_zone4_mega() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 168
def get_minsk_fttx_zone4_mega
  answ_res_msisdn = []
  req_json = {'$and': [{'avps_key.code_key':
                            {'$not': /IN-ACL/}},
                       {'credentials_key.network_id_key':
                            {'$in':
                                 [/Min_Dzerzhinskogo_131/]}},
                       {'$or': [{'services_key.code_key': 'FR12083'},
                                {'services_key.code_key': 'FR7967'},
                                {'services_key.code_key': 'FR7241'},
                                {'services_key.code_key': 'FR7242'},
                                {'services_key.code_key': 'FR7243'},
                                {'services_key.code_key': 'FR7244'},
                                {'services_key.code_key': 'FR9749'},
                                {'services_key.code_key': 'FR9750'},
                                {'services_key.code_key': 'FR9751'},
                                {'services_key.code_key': 'FR9752'},
                                {'services_key.code_key': 'FR11885'},
                                {'services_key.code_key': 'FR14994'},
                                {'services_key.code_key': 'FR15506'},
                                {'services_key.code_key': 'FR17303'},
                                {'services_key.code_key': 'FR11484'}]},
                       {'credentials_key.network_id_key': {'$not': /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ''
    username = ''
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
get_minsk_fttx_zone5_koles() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 209
def get_minsk_fttx_zone5_koles
  answ_res_msisdn = []
  req_json = {'$and': [{'avps_key.code_key':
                            {'$not': /IN-ACL/}},
                       {'credentials_key.network_id_key':
                            {'$in':
                                 [/Min_Kolesnikova_16/,
                                 /Min_Kolesnikova_20/]}},
                       {'$or': [{'services_key.code_key': 'FR12083'},
                                {'services_key.code_key': 'FR7967'},
                                {'services_key.code_key': 'FR7241'},
                                {'services_key.code_key': 'FR7242'},
                                {'services_key.code_key': 'FR7243'},
                                {'services_key.code_key': 'FR7244'},
                                {'services_key.code_key': 'FR9749'},
                                {'services_key.code_key': 'FR9750'},
                                {'services_key.code_key': 'FR9751'},
                                {'services_key.code_key': 'FR9752'},
                                {'services_key.code_key': 'FR11885'},
                                {'services_key.code_key': 'FR14994'},
                                {'services_key.code_key': 'FR15506'},
                                {'services_key.code_key': 'FR17303'},
                                {'services_key.code_key': 'FR11484'}]},
                       {'credentials_key.network_id_key': {'$not': /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ''
    username = ''
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
get_minsk_fttx_zone6_all() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 251
def get_minsk_fttx_zone6_all
  answ_res_msisdn = []
  req_json = {'$and': [{'avps_key.code_key':
                            {'$not': /IN-ACL/}},
                       {'credentials_key.network_id_key':
                            {'$in':
                                 [/Min_Nezavisimosti_164/,
                                  /Min_Nezavisimosti_181/,
                                  /Min_Nezavisimosti_183/,
                                  /Min_Nezavisimosti_185/,
                                  /Min_Nezavisimosti_42/,
                                  /Min_Nezavisimosti_40/,
                                  /Min_Nezavisimosti_60/,
                                  /Min_Nezavisimosti_44/,
                                  /Min_Nezavisimosti_52/,
                                  /Min_Nezavisimosti_46/,
                                  /Min_Nezavisimosti_48/,
                                  /Min_Surganova_52/,
                                  /Min_Surganova_64/,
                                  /Min_Surganova_76/,
                                  /Min_Bogdanovicha_108/,
                                  /Min_Bogdanovicha_116/,
                                  /Min_Bogdanovicha_114/,
                                  /Min_Prityckogo_160/,
                                  /Min_Kropotkina_47/,
                                  /Storozhevskaya_8/,
                                  /Min_Kozlova_2/,
                                  /Min_Kozlova_4/,
                                  /Min_Kozlova_6/,
                                  /Min_Kozlova_5/,
                                  /Min_Kozlova_7/,
                                  /Min_Kozlova_9/,
                                  /Min_Bjaduli_3/,
                                  /Min_Bjaduli_5/,
                                  /Min_Bjaduli_6/,
                                  /Min_Bjaduli_8/,
                                  /Min_Bjaduli_12/,
                                  /Min_Pervomajskaja_15/,
                                  /Min_Pervomajskaja_17/,
                                  /Min_Zaharova_19/,
                                  /Min_Zaharova_23/,
                                  /Min_Zaharova_25/,
                                  /Min_Zaharova_27/,
                                  /Min_Zaharova_29/,
                                  /Min_Zaharova_33/,
                                  /Min_Bronevoj_12/,
                                  /Min_Bronevoj_13/,
                                  /Min_Vojskovoj_10/,
                                  /Min_Vojskovoj_13/,
                                  /Min_Vojskovoj_14/,
                                  /Min_Vojskovoj_15/,
                                  /Min_Rumjanceva_13/,
                                  /Min_Rumjanceva_14/,
                                  /Min_Rumjanceva_15/,
                                  /Min_Rumjanceva_17/,
                                  /Rokossovskogo_81/,
                                  /Min_Dzerzhinskogo_131/,
                                  /Min_Kolesnikova_16/,
                                  /Min_Kolesnikova_20/]}},
                       {'$or': [{'services_key.code_key': 'FR12083'},
                                {'services_key.code_key': 'FR7967'},
                                {'services_key.code_key': 'FR7241'},
                                {'services_key.code_key': 'FR7242'},
                                {'services_key.code_key': 'FR7243'},
                                {'services_key.code_key': 'FR7244'},
                                {'services_key.code_key': 'FR9749'},
                                {'services_key.code_key': 'FR9750'},
                                {'services_key.code_key': 'FR9751'},
                                {'services_key.code_key': 'FR9752'},
                                {'services_key.code_key': 'FR11885'},
                                {'services_key.code_key': 'FR14994'},
                                {'services_key.code_key': 'FR15506'},
                                {'services_key.code_key': 'FR17303'},
                                {'services_key.code_key': 'FR11484'}]},
                       {'credentials_key.network_id_key': {'$not': /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ''
    username = ''
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
get_minsk_fttx_zone7_3last() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 344
def get_minsk_fttx_zone7_3last
  answ_res_msisdn = []
  req_json = {'$and': [{'avps_key.code_key':
                            {'$not': /IN-ACL/}},
                       {'credentials_key.network_id_key':
                            {'$in':
                                 [/Rokossovskogo_81/,
                                  /Min_Dzerzhinskogo_131/,
                                  /Min_Kolesnikova_16/,
                                  /Min_Kolesnikova_20/]}},
                       {'$or': [{'services_key.code_key': 'FR12083'},
                                {'services_key.code_key': 'FR7967'},
                                {'services_key.code_key': 'FR7241'},
                                {'services_key.code_key': 'FR7242'},
                                {'services_key.code_key': 'FR7243'},
                                {'services_key.code_key': 'FR7244'},
                                {'services_key.code_key': 'FR9749'},
                                {'services_key.code_key': 'FR9750'},
                                {'services_key.code_key': 'FR9751'},
                                {'services_key.code_key': 'FR9752'},
                                {'services_key.code_key': 'FR11885'},
                                {'services_key.code_key': 'FR14994'},
                                {'services_key.code_key': 'FR15506'},
                                {'services_key.code_key': 'FR17303'},
                                {'services_key.code_key': 'FR11484'}]},
                       {'credentials_key.network_id_key': {'$not': /375\d+VL/}}]}
  subs_collection.find(req_json).each {|row|
    msisdn = ''
    username = ''
    row['credentials_key'].each {|cred|
      if cred['network_id_key'][/37500\d{7}/]
        msisdn = cred['network_id_key']
      else
        username = cred['network_id_key']
      end
    }
    if msisdn != '' && username != ''
      answ_res_msisdn.push(msisdn + ';' + username)
    end
  }
  answ_res_msisdn
end
test() click to toggle source
# File lib/imperituroard/platforms/cps/cps_mongo_connector.rb, line 387
def test
  subs_collection.find({'credentials_key.network_id_key': '375001120416'}).each {|row|
    p row
  }
  p 'ee'
end