PubSubHubbub (PuSH) никогда не предназначался для приложений чата. Иногда его называют «IM для Интернета». Я бы посоветовал вам просмотреть этот слайд: Рубин реального времени для сети реального времени от igrigorik
Вопрос действительно в том, как в реальном времени вы хотите получить? Если вам нужна скорость, то XMPP - лучший вариант (500 мс), в то время как PuSH зависит от вашего канала и от того, как он ретранслируется. Помните, что с PuSH в общей сложности 4 сетевых прыжка, прежде чем контент достигнет подписчика.
Еще большая проблема в том, что PuSH использует HTTP Post. Даже если вы в конечном итоге создадите приложение для чата на основе PuSH и, скажем, на более позднем этапе вы захотите сделать его доступным для других устройств или даже в качестве настольного приложения, вам придется передавать тот же контент с помощью XMPP. Другое место, где вы будете проигрывать, это то, что пользователям вашего приложения чата будет очень трудно войти в систему с любого другого чата по своему выбору.