class RenaultZE::Client
Constants
- API_BASE_URL
Public Class Methods
new(username, password)
click to toggle source
# File lib/renault_ze/renault_ze_connect.rb, line 5 def initialize(username, password) @username = username @password = password end
Public Instance Methods
get_battery(creds)
click to toggle source
# File lib/renault_ze/renault_ze_connect.rb, line 24 def get_battery(creds) raise "Battery - Missing token in input: #{creds}" if creds[:token].nil? raise "Battery - Missing VIN in input: #{creds}" if creds[:vin].nil? response = HTTParty.get(API_BASE_URL + "/vehicle/#{creds[:vin]}/battery", headers: {"Authorization": "Bearer #{creds[:token]}"} ) raise "Battery - Unexpected response code: #{response}" unless response.code == 200 result = JSON.parse response.body unless result["last_update"].nil? epoch = result["last_update"] / 1000 result["last_update"] = epoch result["last_update_hours_ago"] = (Time.now - Time.at(epoch)) / 3600 end return result end
login()
click to toggle source
# File lib/renault_ze/renault_ze_connect.rb, line 10 def login response = HTTParty.post(API_BASE_URL + "user/login", headers: {"Content-Type": "application/json"}, body: {username: @username, password: @password}.to_json ) raise "Login - Unexpected response code: #{response}" unless response.code == 200 content = JSON.parse response.body return { token: content["token"], vin: content["user"]["vehicle_details"]["VIN"] } end