Перейти к тексту

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

При первом входе в developerWorks для Вас будет создан профиль. Выберите информацию отображаемую в Вашем профиле — скрыть или отобразить поля можно в любой момент.

Вся введенная информация защищена.

  • Закрыть [x]

При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

Вся введенная информация защищена.

  • Закрыть [x]

Создание инструмента Web-уведомлений с применением XMPP

Написание Web-приложений реального времени с использованием XMPP, PHP и JavaScript

Бен Вердмюллер, консультант и писатель, Freelance
Фото Бена Вердмюллера
Бен Вердмюллер (Ben Werdmuller) – стратег и Web-разработчик – вот уже более 10 лет специализируется на открытых платформах. Он один из основателей и технический руководитель Elgg, структуры социальных сетей с открытым исходным кодом. Бен регулярно публикует блоги на сайте http://benwerd.com/.

Описание:  Web-приложения реального времени – это сетевые приложения с пользовательским Web-интерфейсом, которые отображают интернет-информацию по мере ее появления. Примерами служат агрегаторы новостей и средства мониторинга, которые постоянно обновляются, получая данные из внешнего источника. В этом руководстве мы создадим Pingstream, небольшую утилиту уведомления, которая использует PHP и JavaScript для связи через Extensible Messaging and Presence Protocol (XMPP), набор XML-технологий для поддержки функций определения присутствия и связи в режиме реального времени.

Дата:  19.09.2011
Уровень сложности:  средний

Активность:  4306 просмотров
Комментарии:  

Перед началом работы

Это руководство познакомит вас с Web реального времени и некоторыми причинами, по которым создают Web-приложения реального времени. Вы узнаете о методах, позволяющих создавать отзывчивые, постоянно обновляемые Web-приложения, которые экономят ресурсы сервера, обеспечивая удобство для пользователя.

Об этом руководстве

Часто используемые сокращения

  • DOM: Document Object Model
  • HTML: HyperText Markup Language
  • HTTP: Hypertext Transfer Protocol
  • REST: Representational State Transfer
  • RSS: Really Simple Syndication
  • URL: Uniform Resource Locator
  • XML: Extensible Markup Language

Web-приложения реального времени позволяют получать уведомления сразу, как только информация опубликована, без необходимости наведываться в источник для ручного обновления. Они стали популярны благодаря таким инструментам, как Twitter и Friendfeed, Google Wave и Meebo.

Extensible Messaging и Presence Protocol (XMPP) – это основанный на XML набор технологий для создания приложений реального времени, определяемых как сетевые приложения, которые постоянно обновляют данные по мере их появления или изменения. Изначально он был разработан как среда для поддержки корпоративных приложений мгновенного обмена сообщениями и информацией о присутствии.

В этом руководстве мы создадим Pingstream, простой инструмент, который постоянно обновляется с помощью каналов RSS (код Pingstream содержится в разделе Загрузки). По ходу дела вы:

  • узнаете, почему XMPP особенно подходит для Web-приложений;
  • познакомитесь с компонентами связи XMPP;
  • установите и настроите сервер Openfire XMPP;
  • подключитесь к XMPP-серверу с использованием PHP и библиотеки XMPPHP;
  • научитесь проверять наличие новых элементов в канале и передавать их на XMPP;
  • воспользуетесь Strophe и JQuery для подключения к XMPP-серверу через HTTP с применением технологии Bidirectional-streams Over Synchronous HTTP (BOSH);
  • отобразите уведомления XMPP на Web-странице.

Предварительные требования

Это руководство предполагает некоторое знакомство с разработкой Web-приложений на PHP, хотя и мало углубляется в программирование. Также понадобится некоторый опыт работы с HTML и JavaScript. Будет полезен и опыт работы в среде JQuery JavaScript. Никакого предварительного знакомства с XMPP или подобными технологиями не требуется.

Чтобы следовать этому руководству, понадобится следующее программное обеспечение сервера:

  • PHP 5.2 или более поздняя версия,
  • Apache HTTP Server,
  • MySQL.

В процессе работы мы загрузим и установим также следующее программное обеспечение и библиотеки:

  • Openfire,
  • jQuery,
  • Strophe,
  • XMPPHP,
  • Last RSS.

Еще полезно найти инструмент PhpMyAdmin для сервера MySQL. Если для локального тестирования ПО Web-приложения реального времени используется настольный компьютер, XAMPP может оказаться полезным для установки и эксплуатации инфраструктуры тестирования Web-сервера.

См. ссылки в разделе Ресурсы.

1 из 10 | следующая

Комментарии



static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=XML, Open source
ArticleID=758201
TutorialTitle=Создание инструмента Web-уведомлений с применением XMPP
publish-date=09192011
author1-email=ben@benwerd.com
author1-email-cc=

Теги

Help
Используйте форму поиска, чтобы найти любой контент с данным тегом в My developerWorks. Используйте ползунок, чтобы отразить больше или меньше тегов.

КнопкаПопулярные теги отображает самые распространенные теги для данной области контента (например: Java, Linux, WebSphere).

Кнопка Мои теги отображает Ваши теги для данной области контента (например: Java, Linux, WebSphere).

Используйте форму поиска, чтобы найти любой контент с данным тегом в My developerWorks. Кнопка Популярные теги отображает самые распространенные теги для данной области контента (например: Java, Linux, WebSphere). Кнопка Мои теги отображает Ваши теги для данной области контента (например: Java, Linux, WebSphere).