Оповещение о происходящем на сайте в jabber и вконтакт.


В погоне за местами где можно дублировать информацию с сайта нашел ресурс - Juick. Служит для ведения блога через XMPP клиент. По идее, очень удобно делать через него какие-либо заметки, особенно если сделать их недоступными для всех кроме себя.

Для друпала есть модуль Juick для публикации посетителями понравившейся статьи в свой блог на этом ресурсе. Пришла мысль автоматом публиковать там записи с сайта.

До этого нашел друпаловский модуль Action Jabber, который позволяет оповещать о событиях на сайте в jabber.

После прочтения правил Juick от идеи публикаций на нем отказался.

Категорически запрещается:

  • Размещать или рассылать спам (в том числе, поисковый) или автоматически сгенерированные сообщения.

К тому же, регистрация новых пользователей на нем временно приостановленна.

Но идея оповещения о событиях на сайте через XMPP очень понравилась, т.к. этот протокол позволяет оповещать как непосредственно в жаббер, так и во всякие службы поддерживающие XMPP протокол, например, многими горячо любимый Vkontakt.

При установке модуля возникли мелкие ньюансы. Сначала он просил XMPPHP библиотеку, которую нужно было скачать, распаковать и скопировать файлы из каталога XMPPHP в каталог modules/actionjabber/XMPPHP.

После этого модуль как-будто заработал, но сообщения не посылал. При этом особенно и не ругался. Оказалось что нехватает библиотеки openssl для PHP и он не мог подключиться к серверу.

После ее установки и перезапуска апача модуль нормально заработал и получилось отослать сообщение.

Настройка модуля состоит из двух пунктов:

  1. созданию действия - admin/settings/actions/manage, где описываем, кому, от кого и что посылать.
  2. подключения этого действия к необходимому событию - admin/build/trigger/node.

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

При попытке отправить сообщение пользователю во вконтакт, подключиться к их серверe почему-то не получилось. Оставил пока разбираться на попозжее.