ЕМНИП, в XMPP можно получить только сами сообщения. Причём они приходят первому запросившему и дальше хранятся на клиенте, сервер про них забывает.
P.S. А сами сообщения получить можно, например через libphp-jabber.
P.P.S. Если на ejabberd настроено хранение сообщений в mysql, то можно получить список сообщений, ещё не принятых клиентом, прямо из базы.