Поток XMPP: ошибка (конфликт) при входе в систему с (a) Smack

В настоящее время я работаю с чатом xmpp/jabber для Android. Я только что попробовал Openfire и попытался подключить свою учетную запись jabber. Соединение было успешным. Но я не могу отправить какое-либо сообщение. Он показывает некоторую конфликтную ошибку. Пожалуйста, проверьте журнал ошибок .дайте мне решение для этого.

Initializing connection to server eworks port 5222
Connected: true
Creating entry for buddy 'testuser2' with name testuser2
Sending mesage 'Hello mate' to user testuser2@eworks
Buddy:testuser2 - Status:null
stream:error (conflict)
at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:306)
at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44)
at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76)

person Jithu P.S    schedule 18.04.2013    source источник


Ответы (1)


XMPP stream:error из-за конфликта означает, что уже есть соединение с таким же полным JID (то есть голым JID и ресурсной частью).

Большинство серверов XMPP могут обрабатывать конфликты, переназначая другой ресурс после обнаружения конфликта. Это поведение можно настроить.

person Roman S.    schedule 18.04.2013
comment
Это не дает ответа на вопрос. Чтобы подвергнуть критике или запросить разъяснения у автора, оставьте комментарий под его сообщением — вы всегда можете прокомментировать свои собственные сообщения, и как только у вас будет достаточно reputation вы сможете комментировать любой пост. - person ShadowScripter; 18.04.2013
comment
@ShadowScripter Я вижу здесь ответ. Но ответ неполный: конфликты возникают только тогда, когда вы пытаетесь привязать ресурс JID, который уже привязан пользователем и, следовательно, подключен. XMPP предназначен для обработки нескольких подключений от одного и того же пользователя (голый JID), но тогда ресурс должен быть другим. - person Flow; 19.04.2013
comment
@Flow, как решить эту проблему, поскольку я получаю сообщение об ошибке конфликта, так как я могу закрыть ранее запущенное соединение с тем же именем ресурса и активировать текущее? потому что, если я буду использовать другое имя ресурса, я увижу много активных соединений с тем же именем - person Hunt; 04.06.2014
comment
Здравствуйте, @Jithu PS, у меня такая же проблема, вы можете помочь мне, если вы сделали это...? - person Joseph Mekwan; 05.11.2015
comment
Прослушиватель XMPP connectionClosedOnError() вызывается на предыдущем работающем устройстве, когда возникает конфликт одного и того же клиентского ресурса, и у него есть StreamErrorException конфликта, с этим мы можем закрыть ранее запущенное соединение, но проблема в том, что оно работает только в первый раз, это проблема, с которой я сталкиваюсь прямо сейчас. Кто-нибудь имеет представление об этом? - person Nooruddin Lakhani; 06.10.2017