Ауторизация в XMPP
От: Robin20  
Дата: 14.05.15 10:24
Оценка:
Пытаюсь разобраться с XMPP протоколом. Отправляю и получаю ответы такие

>>>>>>>>>>>>

<?xml version="1.0"?>
<stream:stream xmlns:stream="http://etherx.jabber.org/streams" version="1.0" xmlns="jabber:client" to="jabber.ru" xml:lang="en" xmlns:xml="http://www.w3.org/XML/1998/namespace">


<<<<<<<<<<<<
<?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='3797363518' from='jabber.ru' version='1.0' xml:lang='ru'>
<stream:features><starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/><compression xmlns='http://jabber.org/features/compress'><method>zlib</method></compression><push xmlns='p1:push'/><rebind xmlns='p1:rebind'/><ack xmlns='p1:ack'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>PLAIN</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.process-one.net/en/ejabberd/' ver='S4v2n+rKmTsgLFog7BtVvK2o660='/><register xmlns='http://jabber.org/features/iq-register'/></stream:features>



>>>>>>>>>

<starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/>


<<<<<<<<<<
<proceed xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>


Перевожу соккет в режим "Encrypted" в протоколе TLS 1.0

После чего снова отправляю

>>>>>>>>>>>>

<?xml version="1.0"?>
<stream:stream xmlns:stream="http://etherx.jabber.org/streams" version="1.0" xmlns="jabber:client" to="jabber.ru" xml:lang="en" xmlns:xml="http://www.w3.org/XML/1998/namespace">


<<<<<<<<<<<<<<<
<?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='1144965688' from='jabber.ru' version='1.0' xml:lang='ru'>
<stream:features><compression xmlns='http://jabber.org/features/compress'><method>zlib</method></compression><push xmlns='p1:push'/><rebind xmlns='p1:rebind'/><ack xmlns='p1:ack'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>PLAIN</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.process-one.net/en/ejabberd/' ver='S4v2n+rKmTsgLFog7BtVvK2o660='/><register xmlns='http://jabber.org/features/iq-register'/></stream:features>



Посылаю ауторизацию но ответ получается фейловый. Не верный протокол

>>>>>>>>>>>>>>>>>>

<auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">"AHRlc3QtbG9naW4AcGFzc3dvcmQ="</auth>


<<<<<<<<<<<<<<<<<<
<failure xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><bad-protocol/></failure>



Я наверное пропускаю какое-то действие. Что-то связанное с sasl. Не нашёл где разобраться. И вообще кода сишного примера не нашёл нормального. Может кто знает в чём причина?
Re: Ауторизация в XMPP
От: Robin20  
Дата: 14.05.15 17:21
Оценка:
Разобрался
<auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">"AHRlc3QtbG9naW4AcGFzc3dvcmQ="</auth>


<auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">AHRlc3QtbG9naW4AcGFzc3dvcmQ=</auth>



Кавычки убрал заработало.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.