【发布时间】:2015-11-22 15:03:36
【问题描述】:
ejabberd我安装了最新的 ejabberd 并按照建议逐步设置主机名,如jyhu使用test@jyhu。xmpp我正在从github下载最新的XMPPFramework。-
iOS设置项目如下:-
init xmppStreamself.xmppStream = [[XMPPStream alloc] init]; [self.xmppStream addDelegate:self delegateQueue:dispatch_get_main_queue()]; [self.xmppStream setHostName:@"127.0.0.1"]; [self.xmppStream setHostPort:5280]; -
setup JID[self.xmppStream setMyJID:[XMPPJID jidWithString:self.userName]]; -
connectif (![self.xmppStream connectWithTimeout:XMPPStreamTimeoutNone error:&error]) { NSLog(@"%@", [error userInfo]); }
-
然后设置一些相关的委托方法。
当我运行我的项目时,ejabberd 日志显示如下
2015-08-28 10:45:29.890 [信息] @ejabberd_listener:accept:299 (#Port) 接受连接 127.0.0.1:62419 -> 127.0.0.1:5280 2015-08-28 10:45:29.890 [信息] @ejabberd_http:init:157 开始:{gen_tcp,#Port}
代表会去:
- (void)xmppStreamWillConnect:(XMPPStream *)sender- (void)xmppStream:(XMPPStream *)sender socketDidConnect:(GCDAsyncSocket *)socket- (void)xmppStreamDidStartNegotiation:(XMPPStream *)sender- (void)xmppStreamDidDisconnect:(XMPPStream *)sender withError:(NSError *)error
但是最重要的方法
- (void)xmppStreamDidConnect:(XMPPStream *)sender永远不会被执行。
【问题讨论】: