Передача файлов в iPhone с помощью чата XMPP

Я разрабатываю приложение для чата, используя структуру 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:@"[email protected]/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? Может кто-нибудь помочь мне? заранее спасибо


person venkat    schedule 20.07.2012    source источник
comment
Я тоже получаю то же самое .. Как вы это решаете?   -  person Myaaoonn    schedule 31.12.2012
comment
любое решение для этого ..?   -  person Ahmed Z.    schedule 29.10.2013
comment
Я тоже застрял в той же точке... какое-нибудь решение для этого?   -  person Rohit Pathak    schedule 06.02.2014
comment
Привет, попробуй реализовать XEP-0096 xmpp.org/extensions/xep-0096.html   -  person Rohit Pathak    schedule 03.07.2014
comment
возможный дубликат FileTransfer с использованием XmppFrameWork в ios   -  person legoscia    schedule 23.07.2014


Ответы (1)


Если вы хотите отправить файл, просто загрузите этот файл на свой сервер с помощью веб-службы, а после завершения загрузки отправьте URL-адрес загруженного файла другому пользователю. Теперь этот пользователь может легко загрузить файл с этого конкретного URL-адреса.

person Parthpatel1105    schedule 04.06.2015