Sha256: 822b4e21719febbb7c16f6899a49e5d16ba912d5c9a722d19d2cfde8aa2b6f5e

Contents?: true

Size: 1.01 KB

Versions: 1

Compression:

Stored size: 1.01 KB

Contents

#!/usr/bin/env ruby
require 'darksky-ruby/trollop'
require 'darksky-ruby'


opts = Trollop::options do
  banner "darksky [options] <LAT,LON>"
  opt :key, 'API secret key', type: :string
  opt :loc, 'Location (latitude,longtitude)', type: :string
  opt :log, 'Log file', type: :string
  opt :time, 'Timestamp for Time Machine request', type: :string
  opt :verbose, 'Verbose mode'
end

if opts[:log_given]
  Darksky.logger = Logger.new(opts[:log])
  Darksky.logger.level = Logger::WARN
end

if opts[:verbose]
  Darksky.logger = Logger.new(STDOUT) unless opts[:log_given]
  Darksky.logger.level = Logger::DEBUG
end
log = Darksky.logger

log.debug("Command line arguments: #{opts}")

loc = opts[:loc]
loc ||= ARGV.shift

Trollop::die :loc, "is missing" if loc.nil?

api = Darksky::API.new(key: opts[:key])
api.blocks = {minutely: false, hourly: false, daily: false, alerts: false, flags: false}

if opts[:time_given]
  data = api.timemachine(loc: loc, ts: opts[:time])
else 
  data = api.forecast(loc: loc)
end

require 'pp'
pp data if data

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
darksky-ruby-0.0.1 bin/darksky