Запросы на получение доставки не работают для 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);
Тем не менее, клиент на принимающей стороне получает сообщение в порядке, но слушатель не уволен в отправителясистема Все, что ям отсутствует?