Задача — фильтрация твитов по небольшому географическому периметру и выдача geo-twit-stream конечному пользователю.
К каждому твиту на клиенте добавляются географические координаты. Структура БД, в который твиты будут хранится на сервере, проектируется с учетом возможности быстрой выборки твитов из заданного диапазона широты и долготы, т.е. из небольшой ограниченной географической области.
Как выглядит для конечного пользователя — карта его города, на которой постоянно всплывают новые твиты. Если в определенных местах твитов очень много — признак того, что там что-то происходит. Пользователь одним движение выделяет мышкой прямоугольник на карте, с интересующей его область, и рядом с картой, либо в отдельном окне, появляется постоянно обновляющийся twit-line, в который в реальном времени средствами Ajax добавляются новые только что отправленные твиты — сообщения и фото.
Use case — концерт в клубе, футбольный матч и иные массовые мероприятия. Такая группировка твитов по координатам позволит получить живой и самый актуальный «репортаж» с места событий без какого-либо мотивирования самих репортеров — каждый из них пишет в свой твиттер и для своих фолловеров. Наша задача только группировать эти данные и выдавать в виде цельного потока информации.
Возможно описанное выше можно сделать на базе твиттера, так как координаты к твитам он добавлять умеет, при условии если на клиенте это разрешено и есть GPS приемник. Можно ли через их API сделать запрос на выборку твитов из определенного диапазона координат — не смотрел, думаю что врят ли.
upd 27jan2012
Twitter вводит «географическую» цензуру
lenta.ru/articles/2012/01/27/geocensor
Как нужно мотивировать людей для разрешения геоидентификации клиента:
ru.foursquare.com