XMPPFramework和OpenFire服务器,身份验证工程,连接挂起

问题描述:

我试图通过使用iOS的XMPPFramework连接到OpenFire服务器。 连接建立后,认证完成(强制为平原),但认证后有一个发送的重新协商包,没有回应。 我试图在*,谷歌和OpenFire支持上搜索,但找不到任何有用的东西。XMPPFramework和OpenFire服务器,身份验证工程,连接挂起

我的XML转储(从应用程序):

2012-07-26 13:07:26:745 iPhoneXMPP[1777:707] iPhoneXMPPAppDelegate: xmppStream:socketDidConnect: 
2012-07-26 13:07:26:749 iPhoneXMPP[1777:1c03] SEND: <?xml version='1.0'?> 
2012-07-26 13:07:26:750 iPhoneXMPP[1777:1c03] SEND: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' to='xmpp.mobile-engineering.nl'> 
2012-07-26 13:07:26:981 iPhoneXMPP[1777:1b03] RECV: <stream:stream xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client" from="xmpp.mobile-engineering.nl" id="153cc75d" stream1:lang="en" version="1.0"/> 
2012-07-26 13:07:27:107 iPhoneXMPP[1777:1c03] RECV: <stream:features xmlns:stream="http://etherx.jabber.org/streams"><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>DIGEST-MD5</mechanism><mechanism>PLAIN</mechanism><mechanism>CRAM-MD5</mechanism></mechanisms><compression xmlns="http://jabber.org/features/compress"><method>zlib</method></compression><auth xmlns="http://jabber.org/features/iq-auth"/></stream:features> 
2012-07-26 13:07:27:113 iPhoneXMPP[1777:707] iPhoneXMPPAppDelegate: xmppStreamDidConnect: 
2012-07-26 13:07:27:116 iPhoneXMPP[1777:707] SEND: <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">AGhvcHNhAGhvcHNh</auth> 
2012-07-26 13:07:27:219 iPhoneXMPP[1777:1b03] RECV: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl"/> 
2012-07-26 13:07:27:220 iPhoneXMPP[1777:1b03] SEND: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' to='xmpp.mobile-engineering.nl'> 

的一条消息是发送到服务器,并没有在此结束。 当我问XMPPFramework状态是什么时,我得到:STATE_XMPP_OPENING

我得到的上述XML转储是认证成功。但下一步是不...

我在这里做错了什么?

我用下面的页面上提到的补丁修复它: https://github.com/robbiehanson/XMPPFramework/issues/81

看来,框架发送消息,但不听它。我已经实现了这个补丁,我现在可以登录到OpenFire服务器!

嗨我也看到相同的问题,我只是想连接到Jabber.org。我didAuthenticate和我didNotAuthenticate方法没有得到调用。有没有我们没有设置的通知?

我的转储:

2012-07-27 00:24:22:013 cloud9learning[41017:1c03] RECV: <stream:stream xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" from="jabber.org" id="d528010a9f1f6e27" version="1.0"/> 
2012-07-27 00:24:22:014 cloud9learning[41017:1c03] RECV: <stream:features xmlns:stream="http://etherx.jabber.org/streams"><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>CRAM-MD5</mechanism><mechanism>LOGIN</mechanism><mechanism>PLAIN</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms><compression xmlns="http://jabber.org/features/compress"><method>zlib</method></compression><ver xmlns="urn:xmpp:features:rosterver"><optional/></ver></stream:features> 
2012-07-27 00:24:22:014 cloud9learning[41017:c07] JabberManager: xmppStreamDidConnect: 
2012-07-27 00:24:24:750 cloud9learning[41017:c07] SEND: <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="DIGEST-MD5"/> 
RECV: <challenge xmlns="urn:ietf:params:xml:ns:xmpp-sasl">bm9uY2U9IlBsRlh4eGVFa1hZdnRNYVdBdVdQT1F3a0VURjVDVnl6ZWxzODZZbkxmcFE9IixyZWFsbT0iamFiYmVyLm9yZyIscW9wPSJhdXRoIixtYXhidWY9MTYzODQsY2hhcnNldD11dGYtOCxhbGdvcml0aG09bWQ1LXNlc3M=</challenge> 
2012-07-27 00:24:24:841 cloud9learning[41017:4603] SEND: <response xmlns="urn:ietf:params:xml:ns:xmpp-sasl">dXNlcm5hbWU9ImNsb3VkOXRlc3QiLHJlYWxtPSJqYWJiZXIub3JnIixub25jZT0iUGxGWHh4ZUVrWFl2dE1hV0F1V1BPUXdrRVRGNUNWeXplbHM4NlluTGZwUT0iLGNub25jZT0iNzc1N0M5RUQtNjJGQy00M0VCLUIxOUYtNjlBREYzRkFBMTlFIixuYz0wMDAwMDAwMSxxb3A9YXV0aCxkaWdlc3QtdXJpPSJ4bXBwL2phYmJlci5vcmciLHJlc3BvbnNlPTUxZmY3YTFhYzI1NzM5ZTIxOGQ2MmI0Njk1NjE0ZjcwLGNoYXJzZXQ9dXRmLTg=</response> 
2012-07-27 00:24:24:932 cloud9learning[41017:6e03] RECV: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl">cnNwYXV0aD1lYzE4OTI1YTY0NTZlMzMwMDg3ZTZjZmE1ZmQzMjMzZQ==</success> 
2012-07-27 00:24:24:932 cloud9learning[41017:6e03] SEND: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' to='jabber.org'>