7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/rsift/socket.rb', line 7
def self.perform(stream_identifier)
endpoint = "ws://websocket.datasift.net/"
EventMachine.run {
http = EventMachine::HttpRequest.new(
"#{endpoint}#{stream_identifier}").get(:timeout => 0)
http.callback do
puts "Connected to datasift"
end
http.errback do
raise SocketError.new("Datasift threw an error")
end
http.disconnect do
raise SocketDisconnect.new("Datasift disconnected me.")
end
http.stream { |msg|
yield msg
}
}
end
|