Class ICEResolver


  • public class ICEResolver
    extends TransportResolver
    ICE Resolver for Jingle transport method that results in sending data between two entities using the Interactive Connectivity Establishment (ICE) methodology. (XEP-0176) The goal of this resolver is to make possible to establish and manage out-of-band connections between two XMPP entities, even if they are behind Network Address Translators (NATs) or firewalls. To use this resolver you must have a STUN Server and be in a non STUN blocked network. Or use an XMPP server with public IP detection Service.
    • Constructor Detail

      • ICEResolver

        public ICEResolver​(org.jivesoftware.smack.XMPPConnection connection,
                           java.lang.String server,
                           int port)
    • Method Detail

      • initialize

        public void initialize()
                        throws org.jivesoftware.smack.XMPPException
        Description copied from class: TransportResolver
        Initialize the Resolver.
        Specified by:
        initialize in class TransportResolver
        Throws:
        org.jivesoftware.smack.XMPPException - if an XMPP protocol error was received.
      • cancel

        public void cancel()
                    throws org.jivesoftware.smack.XMPPException
        Description copied from class: TransportResolver
        Cancel any asynchronous resolution operation.
        Specified by:
        cancel in class TransportResolver
        Throws:
        org.jivesoftware.smack.XMPPException - if an XMPP protocol error was received.
      • resolve

        public void resolve​(JingleSession session)
                     throws org.jivesoftware.smack.XMPPException,
                            org.jivesoftware.smack.SmackException,
                            java.lang.InterruptedException
        Resolve the IP and obtain a valid transport method.
        Specified by:
        resolve in class TransportResolver
        Parameters:
        session - the Jingle session.
        Throws:
        org.jivesoftware.smack.SmackException - if Smack detected an exceptional situation.
        java.lang.InterruptedException - if the calling thread was interrupted.
        org.jivesoftware.smack.XMPPException - if an XMPP protocol error was received.