Запросы на получение доставки не работают для XMPP Android (aSmack)

Я использую OpenFire с помощью aSmack.

Я могу'Не получается заставить DeliveryReceipts работать.

Когда я создаю соединение, я делаю следующее:

//create connection
connection.login(username, password);
DeliveryReceiptManager.getInstanceFor(connection).enableAutoReceipts();
DeliveryReceiptManager.getInstanceFor(connection).addReceiptReceivedListener(new ReceiptReceivedListener()
{
        @Override
        public void onReceiptReceived(String arg0, String arg1, String arg2)
        {
            Log.v("app", arg0 + ", " + arg1 + ", " + arg2);
        }
});

m отправка сообщения другому пользователю с использованием:

//send chat
Message msg = new Message(id, Message.Type.chat);
msg.setBody(chat);
DeliveryReceiptManager.addDeliveryReceiptRequest(msg);
connection.sendPacket(msg);

Вышеуказанное не работает, хотя сообщение отправляется с ReceiptRequest. Слушатель не уволят отправителяконец, хотя получатель получает сообщение. (Я подтвердил это путем отладки, что DeliveryReceiptRequest действительно прикрепляется к отправляемому сообщению) .I '

Мы также попытались вручную отправить квитанцию, используя следующую команду в моем PacketListener with (MessageTypeFilter (Message.Type.chat)):

Packet received = new Message();
received.addExtension(new DeliveryReceipt(packet.getPacketID()));
received.setTo(packet.getFrom());
getConnection().sendPacket(received);

Тем не менее, клиент на принимающей стороне получает сообщение в порядке, но слушатель не уволен в отправителясистема Все, что ям отсутствует?

Ответы на вопрос(2)

Ваш ответ на вопрос