Class MultipleRecipientManager


  • public class MultipleRecipientManager
    extends java.lang.Object
    A MultipleRecipientManager allows to send packets to multiple recipients by making use of XEP-33: Extended Stanza Addressing. It also allows to send replies to packets that were sent to multiple recipients.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static MultipleRecipientInfo getMultipleRecipientInfo​(org.jivesoftware.smack.packet.Stanza packet)
      Returns the MultipleRecipientInfo contained in the specified stanza or null if none was found.
      static void reply​(org.jivesoftware.smack.XMPPConnection connection, org.jivesoftware.smack.packet.Message original, org.jivesoftware.smack.packet.Message reply)
      Sends a reply to a previously received stanza that was sent to multiple recipients.
      static void send​(org.jivesoftware.smack.XMPPConnection connection, org.jivesoftware.smack.packet.Stanza packet, java.util.Collection<? extends org.jxmpp.jid.Jid> to, java.util.Collection<? extends org.jxmpp.jid.Jid> cc, java.util.Collection<? extends org.jxmpp.jid.Jid> bcc)
      Sends the specified stanza to the collection of specified recipients using the specified connection.
      static void send​(org.jivesoftware.smack.XMPPConnection connection, org.jivesoftware.smack.packet.Stanza packet, java.util.Collection<? extends org.jxmpp.jid.Jid> to, java.util.Collection<? extends org.jxmpp.jid.Jid> cc, java.util.Collection<? extends org.jxmpp.jid.Jid> bcc, org.jxmpp.jid.Jid replyTo, org.jxmpp.jid.Jid replyRoom, boolean noReply)
      Sends the specified stanza to the collection of specified recipients using the specified connection.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MultipleRecipientManager

        public MultipleRecipientManager()
    • Method Detail

      • send

        public static void send​(org.jivesoftware.smack.XMPPConnection connection,
                                org.jivesoftware.smack.packet.Stanza packet,
                                java.util.Collection<? extends org.jxmpp.jid.Jid> to,
                                java.util.Collection<? extends org.jxmpp.jid.Jid> cc,
                                java.util.Collection<? extends org.jxmpp.jid.Jid> bcc)
                         throws org.jivesoftware.smack.SmackException.NoResponseException,
                                org.jivesoftware.smack.XMPPException.XMPPErrorException,
                                org.jivesoftware.smack.SmackException.FeatureNotSupportedException,
                                org.jivesoftware.smack.SmackException.NotConnectedException,
                                java.lang.InterruptedException
        Sends the specified stanza to the collection of specified recipients using the specified connection. If the server has support for XEP-33 then only one stanza is going to be sent to the server with the multiple recipient instructions. However, if XEP-33 is not supported by the server then the client is going to send the stanza to each recipient.
        Parameters:
        connection - the connection to use to send the packet.
        packet - the stanza to send to the list of recipients.
        to - the collection of JIDs to include in the TO list or null if no TO list exists.
        cc - the collection of JIDs to include in the CC list or null if no CC list exists.
        bcc - the collection of JIDs to include in the BCC list or null if no BCC list exists.
        Throws:
        org.jivesoftware.smack.SmackException.FeatureNotSupportedException - if special XEP-33 features where requested, but the server does not support them.
        org.jivesoftware.smack.XMPPException.XMPPErrorException - if server does not support XEP-33: Extended Stanza Addressing and some XEP-33 specific features were requested.
        org.jivesoftware.smack.SmackException.NoResponseException - if there was no response from the server.
        org.jivesoftware.smack.SmackException.NotConnectedException - if the XMPP connection is not connected.
        java.lang.InterruptedException - if the calling thread was interrupted.
      • send

        public static void send​(org.jivesoftware.smack.XMPPConnection connection,
                                org.jivesoftware.smack.packet.Stanza packet,
                                java.util.Collection<? extends org.jxmpp.jid.Jid> to,
                                java.util.Collection<? extends org.jxmpp.jid.Jid> cc,
                                java.util.Collection<? extends org.jxmpp.jid.Jid> bcc,
                                org.jxmpp.jid.Jid replyTo,
                                org.jxmpp.jid.Jid replyRoom,
                                boolean noReply)
                         throws org.jivesoftware.smack.SmackException.NoResponseException,
                                org.jivesoftware.smack.XMPPException.XMPPErrorException,
                                org.jivesoftware.smack.SmackException.FeatureNotSupportedException,
                                org.jivesoftware.smack.SmackException.NotConnectedException,
                                java.lang.InterruptedException
        Sends the specified stanza to the collection of specified recipients using the specified connection. If the server has support for XEP-33 then only one stanza is going to be sent to the server with the multiple recipient instructions. However, if XEP-33 is not supported by the server then the client is going to send the stanza to each recipient.
        Parameters:
        connection - the connection to use to send the packet.
        packet - the stanza to send to the list of recipients.
        to - the collection of JIDs to include in the TO list or null if no TO list exists.
        cc - the collection of JIDs to include in the CC list or null if no CC list exists.
        bcc - the collection of JIDs to include in the BCC list or null if no BCC list exists.
        replyTo - address to which all replies are requested to be sent or null indicating that they can reply to any address.
        replyRoom - JID of a MUC room to which responses should be sent or null indicating that they can reply to any address.
        noReply - true means that receivers should not reply to the message.
        Throws:
        org.jivesoftware.smack.XMPPException.XMPPErrorException - if server does not support XEP-33: Extended Stanza Addressing and some XEP-33 specific features were requested.
        org.jivesoftware.smack.SmackException.NoResponseException - if there was no response from the server.
        org.jivesoftware.smack.SmackException.FeatureNotSupportedException - if special XEP-33 features where requested, but the server does not support them.
        org.jivesoftware.smack.SmackException.NotConnectedException - if the XMPP connection is not connected.
        java.lang.InterruptedException - if the calling thread was interrupted.
      • reply

        public static void reply​(org.jivesoftware.smack.XMPPConnection connection,
                                 org.jivesoftware.smack.packet.Message original,
                                 org.jivesoftware.smack.packet.Message reply)
                          throws org.jivesoftware.smack.XMPPException.XMPPErrorException,
                                 java.lang.InterruptedException,
                                 org.jivesoftware.smack.SmackException.NotConnectedException,
                                 org.jivesoftware.smack.SmackException.NoResponseException,
                                 org.jivesoftware.smack.SmackException.FeatureNotSupportedException
        Sends a reply to a previously received stanza that was sent to multiple recipients. Before attempting to send the reply message some checks are performed. If any of those checks fails, then an XMPPException is going to be thrown with the specific error detail.
        Parameters:
        connection - the connection to use to send the reply.
        original - the previously received stanza that was sent to multiple recipients.
        reply - the new message to send as a reply.
        Throws:
        org.jivesoftware.smack.XMPPException.XMPPErrorException - if there was an XMPP error returned.
        java.lang.InterruptedException - if the calling thread was interrupted.
        org.jivesoftware.smack.SmackException.NotConnectedException - if the XMPP connection is not connected.
        org.jivesoftware.smack.SmackException.FeatureNotSupportedException - if a requested feature is not supported by the remote entity.
        org.jivesoftware.smack.SmackException.NoResponseException - if there was no response from the remote entity.
      • getMultipleRecipientInfo

        public static MultipleRecipientInfo getMultipleRecipientInfo​(org.jivesoftware.smack.packet.Stanza packet)
        Returns the MultipleRecipientInfo contained in the specified stanza or null if none was found. Only packets sent to multiple recipients will contain such information.
        Parameters:
        packet - the stanza to check.
        Returns:
        the MultipleRecipientInfo contained in the specified stanza or null if none was found.