Ответ 1
1), как отслеживать онлайн-и офлайн-сообщение в pubsub, используя пороть?
Я бы предложил использовать идентификатор элемента PubSub.
2) можно ли получить непрочитанное количество сообщений в pubsub, используя smack? если да, то как его достичь?
У узлов PubSub нет подписанного количества непрочитанных сообщений.
Если вы хотите догнать все новые элементы, так как вы получили последний элемент из PubSub node, вы обычно запоминаете последний идентификатор элемента и используете его для запроса всех новых элементов на PubSub node. К сожалению, в настоящее время нет способа запросить PubSub node для новых элементов после определенного ID.
Но если вы подписаны на node, служба будет уведомлять вас о новых элементах, даже если вы в автономном режиме. И если ваш сервер сохраняет эти офлайн-сообщения для вас, вы получите их в конце концов.
3), как узнать, кто (издатель) отправляет это сообщение в node?
К сожалению, нет надежного способа для JID объекта, который опубликовал элемент. Это тоже возможно, возможно, было исправлено с расширением XEP.