Я начал теперь с Pubsubhubbub (и все о вещах в реальном времени), но у меня возникают проблемы с опцией Subscriber.
Я пытаюсь разработать webapp в PHP для:
Я проверяю, существует ли библиотека php для подписчика (в Git), но использование этой библиотеки не может сделать работу с подпиской (получить ошибку 409!).
Как я могу это сделать?
Это старый вопрос, и связанная с ним библиотека PHP имеет много недостатков.
Рекомендуемый PHP-подписчик в вики Google Code – это PuSHSubscriber:
http://github.com/lxbarth/PuSHSubscriber/
ОБНОВИТЬ:
Я разветвил PuSHSподписчиков: http://github.com/bobdia/PuSHSubscriber
Я сделал несколько несовместимых изменений с оригиналом. Простую реализацию можно найти в каталоге / example . Это не предназначено для реального использования, просто для демонстрационных целей. Надеюсь, вы сочтете это полезным.
Первое, что я попробую, – это забыть о библиотеках и попытаться понять, что происходит в контексте абонента. Для создания скрипта, который обрабатывает все это, должно быть действительно просто.
Абонентское приложение должно делать 2 вещи:
Итак, начнем :
hub.challenge
который он получает в теле ответа и возвращает 200. curl -X POST http://pubsubhubbub.appspot.com/ -d'hub.mode=subscribe' -d'hub.verify=sync' -d'hub.topic=http://the.feed.url' -d'hub.callback=http://the.script.url' -D-
Если все было в порядке, запрос на отклонение, который вы отправляете, должен сообщить вам, что центр возвратил 204. Если вы получите что-нибудь еще, проверьте тело ответа, это покажет вам, что пошло не так.
Позже…
Надеюсь, это поможет. Вы также можете использовать этот инструмент для отладки вашей подписки за помощью.
Некоторый код, который может быть полезен, с хорошими документами:
Пример подачи агрегирования: