class Iot

Attributes

add_functions_connector[RW]
hua_aceanconnect_connector[RW]
internal_func[RW]
iot_connector[RW]
mongo_client[RW]
param_all[RW]

Public Class Methods

new(mongoip, mongoport, iotip, mongo_database, iotplatform_ip, iotplatform_port, cert_path, key_path, telegram_api_url, telegram_chat_id ) click to toggle source
# File lib/imperituroard.rb, line 122
def initialize(mongoip,
               mongoport,
               iotip,
               mongo_database,
               iotplatform_ip,
               iotplatform_port,
               cert_path,
               key_path,
               telegram_api_url,
               telegram_chat_id
  #real_ip,
  #remote_ip
)
  @param_all = {:mongoip => mongoip,
                :mongoport => mongoport,
                :iotip => iotip,
                :mongo_database => mongo_database,
                :iotplatform_ip => iotplatform_ip,
                :cert_path => cert_path,
                :key_path => key_path
  }
  @mongo_client = MongoIot.new(param_all[:mongoip], param_all[:mongoport], param_all[:mongo_database])
  @add_functions_connector = AdditionalFunc.new(telegram_api_url, telegram_chat_id)
  #@real_ip = real_ip
  #@remote_ip = remote_ip
  @hua_aceanconnect_connector = HuaIot.new(iotplatform_ip, iotplatform_port, cert_path, key_path, param_all[:mongoip], param_all[:mongoport], param_all[:mongo_database])
  @internal_func = InternalFunc.new
  @iot_connector = IotFunctions_2.new(param_all[:mongoip], param_all[:mongoport], iotip, param_all[:mongo_database],
                                      iotplatform_ip, iotplatform_port, cert_path, key_path, telegram_api_url, telegram_chat_id)
end

Public Instance Methods

add_device_to_profile(login, imei_list, real_ip, remote_ip) click to toggle source

!!1. Add device to profile (only for new device) login - login for client identification profile - profile for device imei_list - device identificator imei_list = [{“imei” => 131234123412341233, “description” => “dfdsf”, “note”=>“second description”, “profile”=>0, “device_type”=>“phone”}, {“imei” => 56213126347645784, “description” => “dfdsf”, “note”=>“second description”, “profile”=>0}] massive commands +++ iot logic added

# File lib/imperituroard.rb, line 168
def add_device_to_profile(login, imei_list, real_ip, remote_ip)
  iot_connector.add_device_to_prof_2(login, imei_list, real_ip, remote_ip)
end
add_device_to_profile2(request_f, real_ip, remote_ip) click to toggle source
# File lib/imperituroard.rb, line 172
def add_device_to_profile2(request_f, real_ip, remote_ip)
  iot_connector.add_device_to_prof2_2(request_f, real_ip, remote_ip)
end
add_service(login, device_list, real_ip, remote_ip) click to toggle source

6 add service by SPA imei profile imsi msisdn newdevice_list=[{:imei=>7967843245665, :attributes=>{:address=>“Golubeva51”, :profile=>“wqeqcqeqwev”, :msisdn=>375298766719, :imsi=>25702858586756875}}] +

# File lib/imperituroard.rb, line 230
def add_service(login, device_list, real_ip, remote_ip)
  iot_connector.add_service_2(login, device_list, real_ip, remote_ip)
end
autorize_subscriber(login, password, real_ip, remote_ip) click to toggle source

7 procedure for subscriber autorization

# File lib/imperituroard.rb, line 235
def autorize_subscriber(login, password, real_ip, remote_ip)
  iot_connector.autorize_subscriber_2(login, password, real_ip, remote_ip)
end
delete_all_iot_device_in_db() click to toggle source

technological procedures

# File lib/imperituroard.rb, line 294
def delete_all_iot_device_in_db
  iot_connector.delete_all_devices_in_database
end
device_add_address(login, newdevice_list, real_ip, remote_ip) click to toggle source

!5 add address to device login imei = newdevice_list address = newdevice_list newdevice_list=[{:imei=>7967843245665, :address=>“Golubeva51”}] +++ iot platform integration completed

# File lib/imperituroard.rb, line 219
def device_add_address(login, newdevice_list, real_ip, remote_ip)
  iot_connector.device_add_address_2(login, newdevice_list, real_ip, remote_ip)
end
device_find(login, imei_list, real_ip, remote_ip) click to toggle source

!!2 Find device (only mongo datebase. IOT platform not need)

procedure for data selection from mongo database.
for this function IOT platform not need
login
imei
imei_list =[41234,23452345,132412]

++

# File lib/imperituroard.rb, line 184
def device_find(login, imei_list, real_ip, remote_ip)
  iot_connector.device_find_2(login, imei_list, real_ip, remote_ip)
end
device_remove(login, imei, real_ip, remote_ip) click to toggle source

!!4 remove device login imei

not massive commands

imei=11341341234 login=“test” +++ IOT logic added

# File lib/imperituroard.rb, line 207
def device_remove(login, imei, real_ip, remote_ip)
  iot_connector.device_remove_2(login, imei, real_ip, remote_ip)
end
get_available_profiles(login, real_ip, remote_ip) click to toggle source

8 get available profiles for login

# File lib/imperituroard.rb, line 240
def get_available_profiles(login, real_ip, remote_ip)
  iot_connector.get_available_prof_2(login, real_ip, remote_ip)
end
get_available_types(login, real_ip, remote_ip) click to toggle source

9 get available types for login

# File lib/imperituroard.rb, line 245
def get_available_types(login, real_ip, remote_ip)
  iot_connector.get_available_types_2(login, real_ip, remote_ip)
end
get_available_types2(login, profile, real_ip, remote_ip) click to toggle source

9-1 get available types for login and profile

# File lib/imperituroard.rb, line 250
def get_available_types2(login, profile, real_ip, remote_ip)
  iot_connector.get_available_types2_2(login, profile, real_ip, remote_ip)
end
get_info_data_profile(profile, real_ip, remote_ip) click to toggle source

11 get info for profile

# File lib/imperituroard.rb, line 260
def get_info_data_profile(profile, real_ip, remote_ip)
  iot_connector.get_info_data_profile_2(profile, real_ip, remote_ip)
end
get_info_data_type(type, real_ip, remote_ip) click to toggle source

10 get info for device type

# File lib/imperituroard.rb, line 255
def get_info_data_type(type, real_ip, remote_ip)
  iot_connector.get_info_data_type_2(type, real_ip, remote_ip)
end
imei_replace(login, im_list, real_ip, remote_ip) click to toggle source

!3 device modify, change imei login imei_old imei_new massive commands im_list = [{“imei_old”=>7967843245667, “imei_new”=>7967843245665}] ++

# File lib/imperituroard.rb, line 195
def imei_replace(login, im_list, real_ip, remote_ip)
  iot_connector.imei_replace_2(login, im_list, real_ip, remote_ip)
end
logger_to_audit_database(proc_name, src_ip, input_json, output_json, real_ip) click to toggle source
# File lib/imperituroard.rb, line 286
def logger_to_audit_database(proc_name, src_ip, input_json, output_json, real_ip)
  mongo_client.audit_logger(proc_name, src_ip, input_json, output_json, real_ip)
end
sdk_spa_service_set(soapgw_params, real_ip, remote_ip) click to toggle source

15 integration with SPA

add imei to correct profile
# File lib/imperituroard.rb, line 275
def sdk_spa_service_set(soapgw_params, real_ip, remote_ip)
  #imei
  #imsi
  #msisdn
  #unp
  #note
  #descriptiot
  iot_connector.spa_service_set_2(soapgw_params, real_ip, remote_ip)
end
set_data_replace(soapgw_params, real_ip, remote_ip) click to toggle source

13 replace data for imei. Replace Type and Profile new procedure 2020-06-06 params =

{"autorization"=>{"login"=>"test", "token"=>"token"}, "datalist"=>[{"imei"=>"524523654366", "new_profile"=>"3", "new_type"=>"1000001"}, {"imei"=>"53623413423", "new_profile"=>"1", "new_type"=>"1000003"}]}
answer = {:code=>200, :result=>"Success", :body=>{:processednum=>1, :failednum=>1, :deviceserr=>[{:failedimei=>524523654366}]}}
# File lib/imperituroard.rb, line 269
def set_data_replace(soapgw_params, real_ip, remote_ip)
  iot_connector.set_data_replace_2(soapgw_params, real_ip, remote_ip)
end
test111() click to toggle source
# File lib/imperituroard.rb, line 298
def test111
  iot_connector.test1278493
end