Package rocks.xmpp.core.stanza.model

Examples of rocks.xmpp.core.stanza.model.AbstractPresence


        xmppSession.addPresenceListener(new PresenceListener() {
            @Override
            public void handle(PresenceEvent e) {
                if (e.isIncoming()) {
                    // A client SHOULD "unlock" after having received a <message/> or <presence/> stanza from any other resource controlled by the peer (or a presence stanza from the locked resource); as a result, it SHOULD address its next message(s) in the chat session to the bare JID of the peer (thus "unlocking" the previous "lock") until it receives a message from one of the peer's full JIDs.
                    AbstractPresence presence = e.getPresence();
                    synchronized (chatSessions) {
                        Jid contact = presence.getFrom().asBareJid();
                        if (chatSessions.containsKey(contact)) {
                            for (ChatSession chatSession : chatSessions.get(contact).values()) {
                                chatSession.chatPartner = contact;
                            }
                        }
View Full Code Here


        });
        xmppSession.addPresenceListener(new PresenceListener() {
            @Override
            public void handle(PresenceEvent e) {
                if (!e.isIncoming() && isEnabled()) {
                    AbstractPresence presence = e.getPresence();
                    if (presence.getTo() == null) {
                        synchronized (LastActivityManager.this) {
                            // If an available presence with <show/> value 'away' or 'xa' is sent, append last activity information.
                            if (lastActivityStrategy != null && lastActivityStrategy.getLastActivity() != null && presence.isAvailable() && (presence.getShow() == AbstractPresence.Show.AWAY || presence.getShow() == AbstractPresence.Show.XA) && presence.getExtension(LastActivity.class) == null) {
                                presence.getExtensions().add(new LastActivity(getSecondsSince(lastActivityStrategy.getLastActivity()), presence.getStatus()));
                            }
                        }
                    }
                }
            }
View Full Code Here

                }
            });
            xmppSession.addPresenceListener(new PresenceListener() {
                @Override
                public void handle(PresenceEvent e) {
                    AbstractPresence presence = e.getPresence();
                    if (!e.isIncoming() && (!presence.isAvailable() || presence.getShow() != AbstractPresence.Show.AWAY && presence.getShow() != AbstractPresence.Show.XA)) {
                        lastActivity = new Date();
                    }
                }
            });
        }
View Full Code Here

        });

        xmppSession.addPresenceListener(new PresenceListener() {
            @Override
            public void handle(PresenceEvent e) {
                AbstractPresence presence = e.getPresence();
                if (e.isIncoming()) {
                    boolean hasReachability = checkStanzaForReachabilityAndNotify(presence);
                    Jid contact = presence.getFrom().asBareJid();
                    if (!hasReachability && reachabilities.remove(contact) != null) {
                        // If no reachability was found in presence, check, if the contact has previously sent any reachability via presence.
                        notifyReachabilityListeners(contact, new ArrayList<Address>());
                    }
                } else {
                    if (presence.isAvailable() && presence.getTo() == null) {
                        synchronized (addresses) {
                            if (!addresses.isEmpty()) {
                                presence.getExtensions().add(new Reachability(new ArrayList<>(addresses)));
                            }
                        }
                    }
                }
            }
View Full Code Here

TOP

Related Classes of rocks.xmpp.core.stanza.model.AbstractPresence

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.