module HilinkModem

Public Instance Methods

send_request( path, request = {} ) click to toggle source

using HelperClasses::HashAccessor

# File lib/hilinkmodem.rb, line 12
def send_request( path, request = {} )
  url = "/api/#{path}"
  http = Net::HTTP.new('192.168.1.1')

  if request != {} 
    req = Net::HTTP::Post.new(url)
    req.body = request.to_xml(root: 'request', indent: 0, skip_types: true)
    req.content_type = 'text/xml'
  else
    req = Net::HTTP::Get.new(url)
  end
  begin
    response = http.request(req).body
  rescue Errno::ENETUNREACH => e
    return nil
  end

  begin
    Hash.from_xml( response )['response']
  rescue REXML::ParseException => e
    nil
  end
end
switch_to_debug() click to toggle source
# File lib/hilinkmodem.rb, line 40
def switch_to_debug
  send_request( 'device/mode', :mode => 1 )
end
switch_to_modem() click to toggle source
# File lib/hilinkmodem.rb, line 36
def switch_to_modem
  send_request( 'device/mode', :mode => 0 )
end