iPhone使用XMPP聊天进行文件传输

3

我正在使用XMPP框架开发一个聊天应用程序。

我已经能够发送和接收聊天消息,但是现在我想传输文件。

我尝试使用TURNSocket,但它没有起作用。

我的代码:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        NSMutableArray *turnSockets=[NSMutableArray alloc] init];
    }
    return self;
}

- (void)viewDidLoad
{
    XMPPJID *jid = [XMPPJID jidWithString:@"venkat.varra@gmail.com/gmail.9D2001A1"];
    TURNSocket *turnSocket = [[TURNSocket alloc] initWithStream:[self xmppStream] toJID:jid];
   [turnSockets addObject:turnSocket];
   [turnSocket startWithDelegate:self delegateQueue:dispatch_get_main_queue()];
}

- (void)turnSocket:(TURNSocket *)sender didSucceed:(GCDAsyncSocket *)socket 
{
    NSData *dataF = [[NSData alloc] initWithContentsOfFile:
    [[NSBundle mainBundle] pathForResource:@"orange" ofType:@"png"]];

    [socket writeData:dataF withTimeout:60.0f tag:0];
}

- (void)turnSocketDidFail:(TURNSocket *)sender 
{
    NSLog(@"TURN Connection failed!");
    [turnSockets removeObject:sender];          
}

运行此程序时,它总是调用turnsocketDidFail方法。

如何在iPhone上使用turn socket实现聊天应用中的文件传输? 有没有人能帮助我? 提前致谢。


我也遇到了同样的问题。你是怎么解决的? - Myaaoonn
有什么解决办法吗? - Ahmed Z.
我也卡在同一个点上了...有解决方法吗? - Rohit Pathak
嘿,尝试实现XEP-0096 http://xmpp.org/extensions/xep-0096.html - Rohit Pathak
可能是在iOS中使用XmppFrameWork进行文件传输的重复问题。 - legoscia
1个回答

0
如果您想发送文件,只需使用Web服务将该文件上传到服务器,上传完成后,向另一个用户发送已上传文件的URL。 该用户现在可以从特定的URL轻松地下载文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接