Module: Scouter

Defined in:
lib/scouter.rb,
lib/scouter/buffer.rb,
lib/scouter/feedly.rb,
lib/scouter/github.rb,
lib/scouter/pocket.rb,
lib/scouter/twitter.rb,
lib/scouter/facebook.rb,
lib/scouter/linkedin.rb,
lib/scouter/pinterest.rb,
lib/scouter/base/object.rb,
lib/scouter/google_plus.rb,
lib/scouter/base/version.rb,
lib/scouter/base/connection.rb,
lib/scouter/hatena_bookmark.rb,
lib/scouter/base/multi_url_api.rb,
lib/scouter/base/single_url_api.rb

Defined Under Namespace

Modules: Base Classes: Buffer, Facebook, Feedly, Github, GooglePlus, HatenaBookmark, Linkedin, Pinterest, Pocket, Twitter

Constant Summary collapse

WAIT_SEC =
1
ONE_TIME_URL_MAX =
20
SERVICES =
[ Scouter::Buffer,
Scouter::Facebook,
Scouter::Feedly,
Scouter::Github,
Scouter::GooglePlus,
Scouter::HatenaBookmark,
Scouter::Linkedin,
Scouter::Pinterest,
Scouter::Pocket,
Scouter::Twitter ]
VERSION =
'0.0.7'

Class Method Summary collapse

Class Method Details

.get_count(urls, services = SERVICES) ⇒ Hashie::Mash

Get Social Count By Buffer/Facebook/Feedly/GooglePlus/HatenaBookmark/Linkedin/Pinterest/Pocket/Twitter

Parameters:

  • urls (String or Array)

    url list ot get count

  • service (Array or nil)

    service list to get count

Returns:

  • (Hashie::Mash, Hashie::Mash)

    URL & count hash, Error



44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/scouter.rb', line 44

def self.get_count(urls, services = SERVICES)
  results, errors = [], Hashie::Mash.new()

  Parallel.each(services, in_threads: services.count) do |service|
    result, error = service.get_count(urls)
    errors[service.service_name] = error && next unless error.empty?
    results << result
  end

  results_hash = results_merged_hash(results)
  return [results_hash, errors]
end