Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: 1ac4b53faf
Fetching contributors…

Cannot retrieve contributors at this time

64 lines (53 sloc) 1.531 kb
# This simple example demonstrates consuming a stream from just the stream
# hash.
#
# NB: Most of the error handling (exception catching) has been removed for
# the sake of simplicity. Nearly everything in this library may throw
# exceptions, and production code should catch them. See the documentation
# for full details.
#
# Make sure we have some arguments
if ARGV.size == 0
puts 'ERR: Please specify the hash to consume!'
puts
puts
exit!
end
# Include the DataSift library
require File.dirname(__FILE__) + '/../lib/datasift'
# Include the configuration - put your username and API key in this file
require 'yaml'
config = YAML::load(File.open(File.join(File.dirname(__FILE__), '..', 'config.yml')))
# Authenticate
puts 'Creating user...'
user = DataSift::User.new(config['username'], config['api_key'])
# Create the consumer
puts 'Getting the consumer...'
consumer = user.getConsumer(DataSift::StreamConsumer::TYPE_HTTP, ARGV[0])
# Setting up the onStopped handler
consumer.onStopped do |reason|
puts
puts 'Stopped: ' + reason
puts
end
# Set up the warning event handler.
consumer.onWarning do |message|
puts 'WARNING: ' + message
end
# Set up the error event handler.
consumer.onError do |message|
puts 'ERROR: ' + message
end
# And start consuming
puts 'Consuming...'
puts '--'
consumer.consume(true) do |interaction|
if interaction
puts 'Type: ' + interaction['interaction']['type']
puts 'Content: ' + interaction['interaction']['content']
puts '--'
end
end
puts
puts 'Finished consuming'
puts
Jump to Line
Something went wrong with that request. Please try again.