【发布时间】:2014-02-06 03:22:49
【问题描述】:
我正在使用https://github.com/robbiehanson/XMPPFramework 连接到我自己的 ejabberd 服务器,但协商后总是失败。
这是我得到的日志: 2014-01-17 07:14:40.780 聊天 [48246:70b] 错误:(空)
2014-01-17 07:14:40.789 聊天[48246:70b] xmppStreamWillConnect
2014-01-17 07:14:46.076 聊天[48246:70b] socketDidConnect
2014-01-17 07:14:46.077 聊天[48246:70b] xmppStreamDidStartNegotiation
2014-01-17 07:14:51.799 Chat[48246:70b] xmppStreamDidDisconnect:错误域=GCDAsyncSocketErrorDomain Code=7“远程对等方关闭套接字”UserInfo=0x918d2e0 {NSLocalizedDescription=远程对等方关闭套接字}
这里是代码:
- (void)viewDidLoad
{
[super viewDidLoad];
self.stream = [[XMPPStream alloc] init];
self.stream.myJID = [XMPPJID jidWithString:@"test@gmail.com"];
self.stream.hostName = @"my host ip";
self.stream.hostPort = 5222;
[self.stream addDelegate:self delegateQueue:dispatch_get_main_queue()];
self.reconnect = [[XMPPReconnect alloc] init];
[self.reconnect activate:self.stream];
self.muc = [[XMPPMUC alloc] init];
[self.muc activate:self.stream];
NSError *error = nil;
if (![self.stream connectWithTimeout:XMPPStreamTimeoutNone error:&error]) {
NSLog(@"error: %@", error);
}
NSLog(@"error: %@", error);
}
- (void)xmppStreamWillConnect:(XMPPStream *)sender
{
NSLog(@"xmppStreamWillConnect");
}
- (void)xmppStream:(XMPPStream *)sender socketDidConnect:(GCDAsyncSocket *)socket
{
NSLog(@"socketDidConnect");
}
- (void)xmppStreamDidStartNegotiation:(XMPPStream *)sender
{
NSLog(@"xmppStreamDidStartNegotiation");
}
- (void)xmppStream:(XMPPStream *)sender willSecureWithSettings:(NSMutableDictionary *)settings
{
NSLog(@"willSecureWithSettings: %@", settings);
}
- (void)xmppStreamDidSecure:(XMPPStream *)sender
{
NSLog(@"xmppStreamDidSecure");
}
- (void)xmppStreamDidConnect:(XMPPStream *)sender
{
NSLog(@"xmppStreamDidConnect");
NSError *error = nil;
[self.stream authenticateAnonymously:&error];
NSLog(@"authenticate: %@", error);
}
- (void)xmppStreamDidRegister:(XMPPStream *)sender
{
NSLog(@"xmppStreamDidRegister");
}
- (void)xmppStream:(XMPPStream *)sender didNotRegister:(NSXMLElement *)error
{
NSLog(@"didNotRegister: %@", error);
}
- (void)xmppStreamDidAuthenticate:(XMPPStream *)sender
{
NSLog(@"xmppStreamDidAuthenticate");
}
- (void)xmppStream:(XMPPStream *)sender didNotAuthenticate:(NSXMLElement *)error
{
NSLog(@"didNotAuthenticate: %@", error);
}
- (void)xmppStreamWasToldToDisconnect:(XMPPStream *)sender
{
NSLog(@"xmppStreamWasToldToDisconnect");
}
- (void)xmppStreamConnectDidTimeout:(XMPPStream *)sender
{
NSLog(@"xmppStreamConnectDidTimeout");
}
- (void)xmppStreamDidDisconnect:(XMPPStream *)sender withError:(NSError *)error
{
NSLog(@"xmppStreamDidDisconnect: %@", error);
}
【问题讨论】:
-
嘿@disorderdev 你解决了这个问题......然后放一些代码......我有同样的问题......
标签: ios xmpp ejabberd xmppframework