Limits and good practices for Streaming API


#1

Hi, I still have 2 precise doubts about the rules and good practices for a correct Streaming API use.

1- I have a web application that, upon user authentication, begins to track keywords or users he wishes to. I wish to have a Streaming API connection per user, but there’s a limit of 1 connection per IP so I should have a different IP per user.

Is this correct?

2- If I want to reserve a general stream for my application (for overall stats retrieval), I can use the access token created from the application user. But what if I want to have a general stream per user, without using their tokens (as I don’t want to incur in any privacy issues), can I have a streaming API instance using the same token (mine) from different IPs, or this is forbidden?

Thank you!
Luis


#2

Hi Luis,

I wouldn’t recommend trying to make a streaming connection for each of your users – and likewise, would not recommend a single IP address per user so that you could accomplish that. Instead, you’ll have to build a somewhat sophisticated system that will combine the various searches into a single stream request – you’ll then process the incoming tweets and route them to the appropriate users requesting the matching data. When terms change, you’ll need to reconnect to the stream.


#3

Thank you Taylor!

Now if the application was a desktop application, then it wouldn’t be against the rules to have a streaming connection per user? I’d like the user to be able to track up to 400 keywords or 20 geolocations.


#4

For a desktop application, it’d be wisest to use [node:146] and the additional track capabilities that come with that single-user authenticated stream – though you could of course just go straight to stream.twitter.com’s filter method as you mention, no problem.


#5

Thank you, I’ll try User Streams and let you know.