Sha256: 534de61cfc1b5ab0dc268175a6d5752caceb8ee1807d81464b888af5d8937b52

Contents?: true

Size: 1.97 KB

Versions: 21

Compression:

Stored size: 1.97 KB

Contents

#!/usr/bin/env ruby
# encoding: utf-8

# http://doc.ruby-lang.org/ja/1.9.3/library/optparse.html
# http://qiita.com/torshinor/items/499beaba89eb09df80d5
require 'optparse'

url = ARGV.detect{|s| s !~ /\A\-/}
ARGV.delete(url)

default_options = {
  "platform" => "fontana"
}
banner = "%s URL [options]" % File.basename(__FILE__)
parser = OptionParser.new(banner) do |opt|
  opt.on '-i', '--player-id PLAYER_ID'
  opt.on '-p', "--platform #{default_options[:platform]}"
  opt.on '-c', '--consumer-secret CONSUMER_SECRET'
  opt.on '-a', '--app-garden-file PATH_TO_APP_GARDEN_FILE'
  opt.on '-D', '--ssl-disabled'
  opt.on '-I', '--ignore-signature-key'
end

unless url
  puts parser.help
  exit(1)
end

options = default_options.merge(parser.getopts(ARGV))
options = options.each_with_object({}){|(k,v), d| d[k.gsub(/-/, '_').to_sym] = v}

$LOAD_PATH << File.expand_path("../../lib")
require 'libgss'

if app_garden_path = options.delete(:app_garden_file)
  Fontana = Libgss::Fontana # ERBを展開する際にFontana.envなどが指定されていた場合に期待する動作をするように別名で定義します。
  require 'tengine/support/yaml_with_erb'
  c = YAML.load_file(app_garden_path)
  options[:platform] = (c["platform"] ? c["platform"]["name"] : nil) || "fontana"
  options[:consumer_secret] = c["consumer_secret"]
end

begin
  network = Libgss::Network.new(url, options)
  options = options.dup
  options[:consumer_secret] = "<<MASKED>>" if options[:consumer_secret]
  puts "login on #{url} with #{options.inspect}"
  unless network.login
    puts "\e[31mLogin FAILURE!\e[0m"
    exit!(1)
  end

  puts "Login success"
  puts "player_id: #{network.player_id}"

  req = network.new_action_request
  req.server_time
  req.send_request

  res = req.outputs.first
  raise "req.outputs is empty: #{req.outputs}" unless res

  puts "server_time: " << Time.at(res["result"]).iso8601

  puts "\e[32mSUCCESS!!\e[0m"
rescue => e
  puts "\e[31m[#{e.class}] #{e.message}\e[0m\n  " << e.backtrace.join("\n  ")
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
libgss-0.11.0 bin/gss-server-time
libgss-0.10.0 bin/gss-server-time
libgss-0.9.0 bin/gss-server-time
libgss-0.8.4 bin/gss-server-time
libgss-0.8.3 bin/gss-server-time
libgss-0.8.2 bin/gss-server-time
libgss-0.8.1 bin/gss-server-time
libgss-0.8.0 bin/gss-server-time
libgss-0.7.6 bin/gss-server-time
libgss-0.7.5 bin/gss-server-time
libgss-0.7.4 bin/gss-server-time
libgss-0.7.3 bin/gss-server-time
libgss-0.7.2 bin/gss-server-time
libgss-0.7.1 bin/gss-server-time
libgss-0.7.0 bin/gss-server-time
libgss-0.6.2 bin/gss-server-time
libgss-0.6.1 bin/gss-server-time
libgss-0.6.0 bin/gss-server-time
libgss-0.5.0 bin/gss-server-time
libgss-0.4.1 bin/gss-server-time