diff --git a/lib/sim.rb b/lib/sim.rb index d8dea7a86a9398efb8c1bc92da1eb5ceb29910be..cd72b77f266a6b3f56add81ad5baf1069753409d 100644 --- a/lib/sim.rb +++ b/lib/sim.rb @@ -11,8 +11,8 @@ class SIM notes String end - def self.extract(**kwargs) - kwargs = kwargs.transform_keys(&:to_sym) + def self.extract(kwargs) + kwargs = kwargs&.transform_keys(&:to_sym) || {} new(kwargs.slice( :iccid, :lpa_code, :remaining_usage_kb, :remaining_days, :notes )) diff --git a/lib/sim_repo.rb b/lib/sim_repo.rb index b976d40710508fcbfd8f4855c8a1cd0cbfbfc2a7..deeacbcb5375816d6df764d562ff291c6ee1ec4d 100644 --- a/lib/sim_repo.rb +++ b/lib/sim_repo.rb @@ -20,7 +20,7 @@ class SIMRepo "apiKey" => CONFIG[:keepgo][:api_key], "accessToken" => CONFIG[:keepgo][:access_token] } - ).then { |req| SIM.extract(**JSON.parse(req.response)["sim_card"]) } + ).then { |req| SIM.extract(JSON.parse(req.response)&.dig("sim_card")) } end def owned_by(customer)