FilteredStream BoundingBox result is not overlapping the Location criteria

filter
geo

#1

Hello there,

I am currently working on an issue a user reported and I found that the FilteredStream was returning objects that I would consider as being invalid.

Let’s consider the coordinates (-74, 40) and (-73, 41) to be added to a FilteredStream. These coordinates could be we could illustrated as :

---------x (-73, 41)
| |
| |
x---------
(-74, 40)

Now Twitter returns tweets that are outside of this box. Here is an example of bounding box that I received.

[-75.563587, 38.788657],
[-75.563587, 41.357424],
[-73.88506, 41.357424],
[-73.88506, 38.788657]

The question is, how can we identify that this tweet is matching the previous location as they are none of them are located within the bounding box nor is the center of these coordinates.

Kind Regards,
Linvi


#2

I have just moved the topic from stream because the replies are usually way too long in the streaming category.

Linvi


#3

Hmm, it does appear to be a Streaming question given that you’re working on the filter there, but I guess the geo data would apply in the REST API for searches too.


#4

I am aware that this question fits better in the Streaming category but I need answers from the Twitter development team and it seems the reply on the stream category take either ages or are never answered.

Do you have any information concerning this behavior? Anyone in the dev team could give more information concerning this issue?


#5

Up?


#6

Where did you find FilteredStream?

Your input box and your returned box overlap. So, what is the question?


#7

I am using the public Stream API for FilteredStream.
In the json results, twitter sends geo information in 3 different fields:

  • coordinates (simple coordinates)
  • geo (simple coordinates)
  • place.bounding_box.coordinates (array of 4 coordinates)

The last one is giving 4 coordinates that define an area in which the tweet has been published. The difference with coordinates is the fact that this is not a precise information.

Now the problem is that the Filter Twitter returns tweets that have been published at coordinates that I would consider as being outside of the location filter box (as described in the intial post).

The question is, “when does the twitter filter stream consider that a tweet is located within the location filter coordinates?”.

As you say, the 2 boxes overlap, but I would personally not have returned this tweet as being part of the result. As a result I would like some official response from Twitter concerning the logic to use. If the Filter Stream uses overlap I am fine with this, I just want a confirmation that I should use overlap.

Thanks for your help.


#8

I think the answer is in the link you provided for statuses/filter.

If coordinates is empty but place is populated, the region defined in place is checked for intersection against the locations bounding box. Any overlap will match.


#9

You’re right, I have missed this bit in the documentation.
Thanks for the help and sorry for the trouble.

Linvi


#10