Для тех, кто ищет возможные решения этой проблемы спустя много лет после того, как это было изначально задано и на него был дан ответ, я недавно смог обойти эту ошибку аутентификации, явно установив значение authzid
для XMPPTCPConnectionConfiguration
.
Я столкнулся с проблемой, когда моя конфигурация подключения работала нормально для некоторых клиентских серверов XMPP, но не для других, хотя все они использовали аутентификацию SASL PLAIN. После некоторого устранения неполадок я узнал, что те, которые терпели неудачу, ожидали значения authzid
. После настройки моего кода, чтобы установить это, он работает как в средах, которые работали раньше, так и в средах, в которых произошел сбой.
Вот как я строю свою конфигурацию подключения:
XMPPTCPConnectionConfiguration.builder()
.setHost(XMPP_DOMAIN)
.setXmppDomain(XMPP_DOMAIN)
.setPort(XMPP_PORT)
.setCompressionEnabled(true) // optional, not all servers will support this
.setUsernameAndPassword(XMPP_USER, XMPP_PASSWORD)
.setResource(XMPP_RESOURCE)
.setAuthzid(JidCreate.entityBareFrom(String.format("%s@%s", XMPP_USER, XMPP_DOMAIN))) // <-- this was the change I needed
.build();
В частности, мне нужно было добавить эту строку:
.setAuthzid(JidCreate.entityBareFrom(String.format("%s@%s", XMPP_USER, XMPP_DOMAIN)))
person
Default
schedule
21.12.2019