Class Jingle

  • All Implemented Interfaces:
    org.jivesoftware.smack.packet.Element, org.jivesoftware.smack.packet.IqView, org.jivesoftware.smack.packet.NamedElement, org.jivesoftware.smack.packet.StanzaView, org.jivesoftware.smack.packet.TopLevelStreamElement, org.jivesoftware.smack.packet.XmlElement, org.jivesoftware.smack.packet.XmlLangElement

    public final class Jingle
    extends org.jivesoftware.smack.packet.IQ
    The Jingle element.

    Jingle Element Structure

    
     jingle
     │  action (REQUIRED, XEP-0166 § 7.2)
     |    content-accept
     |    content-add
     |    content-modify
     |    content-reject
     |    content-remove
     |    description-info
     |    security-info
     |    session-accept
     |    session-info
     |    session-initiate
     |    transport-accept
     |    transport-info
     |    transport-reject
     |    transport-replace
     │  initator (RECOMMENDED for session initiate, NOT RECOMMENDED otherwise, full JID, XEP-0166 § 7.1)
     │  responder (RECOMMENDED for session accept, NOT RECOMMENDED otherwise, full JID. XEP-0166 § 7.1)
     │  sid (REQUIRED, SHOULD match XML Nmtoken production)
     │
     ├── <reason/> (optional, XEP-0166 § 7.4)
     │    │
     │    └──(alternative─session│busy│..)
     │
     └── <content/> (one or more, XEP-0166 § 7.3)
          │  creator (REQUIRED, must be one of)
          |    initiator
          |    responder
          │  disposition (OPTIONAL)
          │  name (REQUIRED)
          │  senders (OPTIONAL, except when content-modify then REQUIRED)
          |    both (default)
          |    initiator
          |    none
          |    responder
          │
          ├──description
          │  │  media
          │  │  xmlns
          │  │
          │  ├──payload─type
          │  │
          │  └──file (XEP─0234)
          │
          └──transport
             │  xmlns
             │  pwd (OPTIONAL, XEP-0176 Jingle ICE)
             │  ufrag (OPTIONAL, XEP-0176 Jingle ICE)
             │  mode (XEP-0234 Jingle File Transfer)
             │  sid (XEP-0234 Jingle File Transfer)
             │
             └──candidate
                   component
                   foundation
                   generation
                   id
                   ip
                   network
                   port
                   priority
                   protocol
                   type
     
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  Jingle.Builder  
      • Nested classes/interfaces inherited from class org.jivesoftware.smack.packet.IQ

        org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder, org.jivesoftware.smack.packet.IQ.ResponseType, org.jivesoftware.smack.packet.IQ.Type
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      static Jingle.Builder builder​(java.lang.String stanzaId)  
      static Jingle.Builder builder​(org.jivesoftware.smack.packet.IqData iqData)  
      static Jingle.Builder builder​(org.jivesoftware.smack.XMPPConnection connection)  
      JingleAction getAction()
      Get the action specified in the jingle IQ.
      static Jingle.Builder getBuilder()
      Deprecated.
      java.util.List<JingleContent> getContents()
      Get a List of the contents.
      org.jxmpp.jid.FullJid getInitiator()
      Get the initiator.
      protected org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder​(org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder xml)  
      JingleReason getReason()  
      org.jxmpp.jid.FullJid getResponder()
      Get the responder.
      java.lang.String getSid()
      Returns the session ID related to the session.
      JingleContent getSoleContentOrThrow()
      Get the only jingle content if one exists, or null.
      • Methods inherited from class org.jivesoftware.smack.packet.IQ

        createErrorResponse, createErrorResponse, createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementQName, getChildElementXML, getElementName, getType, setType, toString, toXML
      • Methods inherited from class org.jivesoftware.smack.packet.Stanza

        addCommonAttributes, addExtension, addExtensions, appendErrorIfExists, getDefaultLanguage, getError, getExtension, getExtension, getExtension, getExtensionElement, getExtensions, getExtensions, getExtensions, getExtensions, getExtensionsMap, getFrom, getLanguage, getNamespace, getStanzaId, getTo, hasExtension, hasExtension, hasStanzaIdSet, logCommonAttributes, overrideExtension, removeExtension, removeExtension, setError, setError, setFrom, setLanguage, setNewStanzaId, setStanzaId, setStanzaId, setTo, throwIfNoStanzaId
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface org.jivesoftware.smack.packet.Element

        toXML, toXML
      • Methods inherited from interface org.jivesoftware.smack.packet.IqView

        isRequestIQ, isResponseIQ
      • Methods inherited from interface org.jivesoftware.smack.packet.StanzaView

        getError, getExtension, getExtension, getExtensions, getExtensions, getExtensions, getFrom, getStanzaId, getTo, hasExtension, hasExtension, hasExtension
      • Methods inherited from interface org.jivesoftware.smack.packet.XmlElement

        getQName
    • Field Detail

      • ACTION_ATTRIBUTE_NAME

        public static final java.lang.String ACTION_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
      • INITIATOR_ATTRIBUTE_NAME

        public static final java.lang.String INITIATOR_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
      • RESPONDER_ATTRIBUTE_NAME

        public static final java.lang.String RESPONDER_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
      • SESSION_ID_ATTRIBUTE_NAME

        public static final java.lang.String SESSION_ID_ATTRIBUTE_NAME
        See Also:
        Constant Field Values
    • Method Detail

      • getInitiator

        public org.jxmpp.jid.FullJid getInitiator()
        Get the initiator. The initiator will be the full JID of the entity that has initiated the flow (which may be different to the "from" address in the IQ)
        Returns:
        the initiator
      • getResponder

        public org.jxmpp.jid.FullJid getResponder()
        Get the responder. The responder is the full JID of the entity that has replied to the initiation (which may be different to the "to" address in the IQ).
        Returns:
        the responder
      • getSid

        public java.lang.String getSid()
        Returns the session ID related to the session. The session ID is a unique identifier generated by the initiator. This should match the XML Nmtoken production so that XML character escaping is not needed for characters such as &.
        Returns:
        Returns the session ID related to the session.
      • getAction

        public JingleAction getAction()
        Get the action specified in the jingle IQ.
        Returns:
        the action.
      • getContents

        public java.util.List<JingleContent> getContents()
        Get a List of the contents.
        Returns:
        the contents.
      • getSoleContentOrThrow

        public JingleContent getSoleContentOrThrow()
        Get the only jingle content if one exists, or null. This method will throw an IllegalStateException if there is more than one jingle content.
        Returns:
        a JingleContent instance or null.
        Throws:
        java.lang.IllegalStateException - if there is more than one jingle content.
      • getIQChildElementBuilder

        protected org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder​(org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder xml)
        Specified by:
        getIQChildElementBuilder in class org.jivesoftware.smack.packet.IQ
      • builder

        public static Jingle.Builder builder​(org.jivesoftware.smack.XMPPConnection connection)
      • builder

        public static Jingle.Builder builder​(org.jivesoftware.smack.packet.IqData iqData)
      • builder

        public static Jingle.Builder builder​(java.lang.String stanzaId)