Upload
alyona-smola
View
648
Download
3
Embed Size (px)
Citation preview
1
Интернет-сервисы на базе Twitter,
их типы и особенности
Антон Зарубин
#ReTweet09
2
Twitter Самостоятельный сервис Интернет Простая функциональность Основа для массы дополнительных
сервисов Сервисы на основе Twitter
Конкуренция разработчиков Широкий спектр возможностей Готовые средства разработки и
простая интеграция с Twitter В день появляется несколько новых
сервисов
Twitter – платформа сервисов Интернет
3
Зачем они нужны?
Доставка информации о контенте пользователя Twitter до других пользователей.
Выборка информации, интересной пользователю Twitter из огромного объема контента, создаваемого другими пользователями.
Управление аккаунтом пользователя Twitter.
Расширение функций базового сервиса Twitter (списки, длина сообщения, поддержка многих аккаунтов и т.п.).
4
Основные типы сервисов для Twitter (1)
Текст Видео Музыка Голос Местоположение
Сервис
Пользователь
Пользователь -> Сервис -> Twitter
Текст Ссылки
5
Основные типы сервисов для Twitter (2)
Real-time информация: Новости Локальные события Ссылки на контент
Сервис
Пользователь
Twitter -> Сервис -> Пользователь
Запрос
Запрос
Новости Локальные события Ссылки на контент
Комбинированный контент Twitter + данные других ресурсов
Google Maps YouTube Результаты работы
поисковых систем
6
Примеры сервисов на основе Twitter
Поддержка в
…
7
Базы сервисов на основе Twitter
http://www.twi5.com http://twitter.pbworks.com/
WebApps Google it!
8
Технологии и средства разработки
Twitter API Готовые библиотеки процедур для
Twitter API Разнообразные сервисы Интернет:
Короткие ссылки TinyURL.com, Bit.ly и др.
Онлайновые декодеры мультимедиа Флеш-плееры и прочее
Скриптовые языки программирования
Средства разработки Web-интерфейсов и готовые CMS
Служебные программы типа cURL
9
Twitter API
TwitterAPI - набор процедур и параметров, используемых при программировании сервисов для Twitter
Взаимодействие между сервисом и Twitter – HTTP-запросы
Пример – отправка сообщения в микроблог:
HTTP-запрос POST с параметром “status” curl -u user:password -d
status=“Отправка сообщения через Twitter API” http://twitter.com/statuses/update.xml
Документация: http://apiwiki.twitter.com Попробуйте ввести в строке браузера:
http://twitter.com/statuses/friends_timeline.xml
10
Twitter API libraries
ActionScript/Flash
C++ C#/.NET Coldfusion Eiffel Erlang Java JavaScript
Objective-C/Cocoa
Perl PHP PL/SQL Python Ruby Scala T-SQL VB.NET
11
cURL
cURL — служебная программа командной строки, поддерживает выполнение процедур HTTP, в т.ч. POST, проверку подлинности «имя пользователя + пароль» и многое другое.
Свободно распространяемое ПО. Существует библиотека процедур
для их встраивания в программы. Libcurl работает более чем с 30 языками программирования.
12
API сервисов коротких ссылок
HTTP-запросы curl -s
http://tinyurl.com/create.php?url=http://93.153.187.115/player/xspf_player_slim.swf?\&song_url=http://93.153.187.115/player/pcms/$FTPFILENAME.mp3\&autoplay=true | grep "copy('http://tinyurl.com/" | sed -e "s/copy('//" -e "s/');//"
13
Пример сервиса
Запись с телефона короткого голосового сообщения и передача ссылки на него через микроблог пользователя
Воспроизведение в браузере через флеш-плеер
14
Архитектура сервиса
15
Описание модулей Модуль Web-интерфейса услуги и базы SQL :
Регистрация логинов/паролей пользователей и привязка телефонных номеров.
Запись информации регистрации в записываются в базу данных. В качестве каркаса для web-интерфейса используется Ruby on Rails. Содержит информацию о пользователе услуги: логин, пароль и
телефоны. Модуль IVR:
Система интерактивного речевого взаимодействия, обеспечивает прием и обработку телефонных вызовов.
Модуль FTP: Хранение аудио записи полученные от платформы IVR (.pcm, 8Khz,
8bit, mono, A-Law Compressed) Конвертация аудио записи формата .pcm в формат .mp3.
Ядро услуги: Совокупность Perl-скриптов и служебных программ. Обработка регистрационных данных. Перенос аудио файлы с сервера IVR на модуль FTP. Формирование коротких ссылок на проигрывание записей через
TinyURL. Публикация ссылок на записи в микроблогах пользователей через
Twitter API .