2011-11-15 4 views
3

저는 자체 Openfire 서버를 설치하고 Spark와 Adium으로 테스트했습니다. 그러나 talk.google.com 연결할 때XMPPframewok with openfire

2011-11-16 01:34:26:850 iPhoneXMPP[1245:207] iPhoneXMPPAppDelegate: xmppStream:socketDidConnect: 
2011-11-16 01:34:26:850 iPhoneXMPP[1245:8d0f] SEND: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' to='flashmatch.net'> 
2011-11-16 01:34:27:464 iPhoneXMPP[1245:7b13] RECV: <stream:stream xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client" from="ip-10-112-57-167" id="ff9c2cf2" xml:lang="en" version="1.0"/> 
2011-11-16 01:34:27:772 iPhoneXMPP[1245:8d0f] RECV: <stream:features><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"/><register xmlns="http://jabber.org/features/iq-register"/></stream:features> 
2011-11-16 01:34:27:772 iPhoneXMPP[1245:207] iPhoneXMPPAppDelegate: xmppStreamDidConnect: 
2011-11-16 01:34:27:772 iPhoneXMPP[1245:207] SEND: <auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='DIGEST-MD5'/> 
2011-11-16 01:34:28:079 iPhoneXMPP[1245:7b13] RECV: <challenge xmlns="urn:ietf:params:xml:ns:xmpp-sasl">cmVhbG09ImlwLTEwLTExMi01Ny0xNjciLG5vbmNlPSIycWZoY01JL0R2a0Z0ME41TmNSdGpUaGk0dmVOamk4YUxHMU9LMmZwIixxb3A9ImF1dGgiLGNoYXJzZXQ9dXRmLTgsYWxnb3JpdGhtPW1kNS1zZXNz</challenge> 
2011-11-16 01:34:28:079 iPhoneXMPP[1245:7b13] decoded response: username="alan",realm="ip- 10-112-57-167",nonce="2qfhcMI/DvkFt0N5NcRtjThi4veNji8aLG1OK2fp",cnonce="8C2C32EC-532A-4A75-8166-F75387CE2F84",nc=00000001,qop=auth,digest-uri="xmpp/flashmatch.net",response=8b1ad8c7c968a92d36ff6ed895b0ed80,charset=utf-8 
2011-11-16 01:34:28:080 iPhoneXMPP[1245:7b13] SEND: <response xmlns="urn:ietf:params:xml:ns:xmpp-sasl">dXNlcm5hbWU9ImFsYW4iLHJlYWxtPSJpcC0xMC0xMTItNTctMTY3Iixub25jZT0iMnFmaGNNSS9EdmtGdDBONU5jUnRqVGhpNHZlTmppOGFMRzFPSzJmcCIsY25vbmNlPSI4QzJDMzJFQy01MzJBLTRBNzUtODE2Ni1GNzUzODdDRTJGODQiLG5jPTAwMDAwMDAxLHFvcD1hdXRoLGRpZ2VzdC11cmk9InhtcHAvZmxhc2htYXRjaC5uZXQiLHJlc3BvbnNlPThiMWFkOGM3Yzk2OGE5MmQzNmZmNmVkODk1YjBlZDgwLGNoYXJzZXQ9dXRmLTg=</response> 
2011-11-16 01:34:28:386 iPhoneXMPP[1245:8d0f] RECV: <failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure> 
2011-11-16 01:34:28:386 iPhoneXMPP[1245:207] iPhoneXMPPAppDelegate: xmppStream:didNotAuthenticate: 

같은 샘플 프로젝트가 잘 작동 : iOS 용 XMPPFramework에서 샘플 프로젝트를 실행할 때 나는 다음과 같은 인증 오류를 가지고 있지만. 아무도 여기서 무엇이 잘못되었는지 알지 못합니까?

+0

동일한 문제가 발생합니다. 솔루션을 찾기 위해 관리됩니까? – user281300

+0

나도. 어떤 행운이 해결책을 찾고 있습니까? –

답변

5

코드를 살펴 보지 않고 문제를 추측하기는 어렵지만 authontication 문제는 사용자 JID 또는 비밀번호에 문제가 있음을 나타냅니다. 따라서 두 가지 가능한 문제를 생각해 볼 수 있습니다.

  1. Openfire에서 사용자와 비밀번호를 올바르게 설정했는지 확인해야합니다.
  2. 두 번째로 올바르게 설정된 경우 "서버 이름"속성을 확인하십시오. 관리자 패널 -> 서버 정보 -> 서버 이름으로 이동하십시오. 이것은 iOS 프로젝트에서 사용자의 도메인 이름과 일치해야합니다. 이 예를 보겠습니다. 서버 이름을 "127.0.0.1"로 설정 한 경우 [email protected]을 사용해야합니다. YOURUSER @ localhost를 사용하면 인증 프로세스가 실패합니다.
4

당신은 로그인 "[email protected]"와 같은 서버의 IP 주소와 사용자 이름을 제공 할 때

당신은 다음의 다음 줄을 추가 지정된 도메인에서 로그인을 시도하는 경우 setupStream의 코드

[xmppStream setHostName:@"google.com"];//domain name 
[xmppStream setHostPort:5222];//port number 
3

관리자 패널에서 openfire ServerName을 확인할 수 있습니다.

서버 관리자> 서버 정보> 서버 이름 : 서버 _]

호스트 주소/IP는 서버 이름에 하나 다를 수 있습니다 :

[host_address] : 9090/- 관리 패널 [server_name]

서버 이름이 호스트 주소 설정과 다른 경우 아래 설정이됩니다. 대부분의 경우 서버 이름은 &이며 호스트 주소는 같습니다. 그래서 iOS xmppframework로 인증에 문제가 없습니다.

xmppStream.hostName = @"hostaddress"; 
xmppStream.hostPort = 5222; 

jabberID = @"[email protected]";