1 Reply Latest reply on Jul 31, 2015 1:00 AM by John Tikis

    Message receipts using AbstractComponent

    John Tikis

      When an External Component implemented by Whack using the AbstractComponent method receives a XMPP message of the form


      <message from='dummy@mycompany.com/MSGID1' id='richard2-4.1.247' to='externalcomp.mycompany.com'>

        <body>My lord, dispatch; read o'er these articles.</body>

        <request xmlns='urn:xmpp:receipts'/>



      It should reply with a message of the form


      <message from='externalcomp.mycompany.com' id='bi29sg183b4v' to='dummy@mycompany.com/MSGID1'

        <received xmlns='urn:xmpp:receipts' id='richard2-4.1.247'/>



      I noticed that Tinder has no way of respecting this delivery receipts XEP-0184.


      I tried to implement it using:

      if (message.getChildElement("received", "urn:xmpp:receipts") != null) {
       String messageId = message.getFrom().toString();
       sendReceiptMessage(to, from, messageId);

      where SendReceiptMessage is


       private boolean sendReceiptMessage(String from, String to,String messageId) {
             Message xmppMsg = new Message();
             xmppMsg.addChildElement("received", "urn:xmpp:receipts");
             if(messageId!=null) xmppMsg.setID(messageId);
             try {
                 return true;
             } catch (Exception e) {
             return false;


      However, it is not working as getChildElement("received", "urn:xmpp:receipts") always return NULL.


      Any idea how to implement (recognize and form) a delivery receipt?