2017-09-28 4 views
10

Wie bekomme ich eine Offline-Nachricht in PubSub? Verwenden der Smack-Bibliothek nach der Suche fand ich eine Antwort, die wie folgt aussieht:Wie PubSub-Benachrichtigungen verwalten, die offline in XMPP gesendet werden?

// Create a pubsub manager using an existing XMPPConnection 
PubSubManager mgr = PubSubManager.getInstanceFor(con); 

// Get the node 
LeafNode node = mgr.getNode("testNode"); 

List<? extends Item> items = node.getItems(100); 

Aber node.getItems(100) kehrt letzten 100 Nachrichten, die auch online und offline sein kann.

1) Wie verfolgen Sie Online-und Offline-Nachrichten in Pubsub mit Smack?

2) ist es möglich, die Anzahl der ungelesenen Nachrichten in Pubsub mit Smack zu erhalten? Wenn ja, wie erreiche ich das?

3) Wie kann man wissen, wer (Herausgeber) diese Nachricht in einem Knoten sendet?

Ich ging gerade durch die Dokumentation von Smack und PubSub von here und here aber die Lösungen nicht auf meine Fragen im Zusammenhang finden. Kann mir also jemand helfen, das zu lösen?

Antwort

3

1) Wie verfolgen Sie Online- und Offline-Nachrichten in Pubsub mit Smack?

Ich würde vorschlagen, die PubSub Artikel ID zu verwenden.

2) ist es möglich, die Anzahl der ungelesenen Nachrichten in Pubsub mit Smack zu erhalten? Wenn ja, wie geht das?

PubSub-Knoten haben keine Anzahl ungelernter Nachrichten pro Teilnehmer.

Wenn Sie alle neuen Elemente nachholen möchten, seit Sie das letzte Element von einem PubSub-Knoten erhalten haben, erinnern Sie sich normalerweise an die ID des letzten Elements und verwenden diese, um alle neueren Elemente auf dem PubSub-Knoten abzufragen. Leider gibt es (zur Zeit) keine Möglichkeit, einen PubSub-Knoten nach einer bestimmten ID nach neueren Elementen abzufragen.

Wenn Sie jedoch einen Knoten abonniert haben, wird der Dienst Sie über neue Objekte informieren, auch wenn Sie offline sind. Und wenn Ihr Server diese Offline-Nachrichten für Sie speichert, werden Sie diese schließlich erhalten.

3) Wie kann ich wissen, wer (Herausgeber) diese Nachricht in einem Knoten sendet?

Leider gibt es keinen zuverlässigen Weg zum JID der Entität, die einen Artikel veröffentlicht hat. Auch dies könnte wahrscheinlich mit einer Erweiterung XEP behoben werden.

Verwandte Themen