2016-08-02 6 views
0

Я использую XMPPOutgoingFileTransfer и XMPPIncomingFileTransfer для передачи файлов. Когда оба пользователя находятся в сети, я могу отправить данные файла. Но когда какой-либо один пользователь переходит в автономный режим, тогда ему не удается отправить данные файла, и после вызова делегата.Почему XMPPOutgoingFileTransfer терпит неудачу, когда другой пользователь отключен?

- (void)xmppOutgoingFileTransfer:(XMPPOutgoingFileTransfer *)sender 
      didFailWithError:(NSError *)error 

И ошибка

Error Domain=XMPPOutgoingFileTransferErrorDomain Code=503 "<service-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>" UserInfo={NSLocalizedDescription=<service-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>} 

Как я могу отправить файл с данными в автономном режиме пользователя. Спасибо заранее.

ответ

3

В XMPP передача файлов осуществляется между сторонами. Существует несколько спецификаций XMPP для передачи файлов, но чтобы лучше понять, как это работает, вы можете прочитать один из них, например XEP-0234 Jingle File Transfer. Это в основном Session Initiation, то есть переговоры о передаче данных вне диапазона непосредственно между одноранговым узлом или через прокси. Это предназначено для передачи в реальном времени (например, как телефонный звонок, за исключением того, что это другой тип данных).

Существует новая спецификация, которая поддерживает загрузку файла в разделяемое пространство через HTTP и общий доступ к общим ссылкам: XEP-0363 HTTP File Upload. Однако вам необходимо убедиться, что ваша библиотека и ваш сервер поддерживают ее.

+0

Большое спасибо @ Mickaël. – Sujit

 Смежные вопросы

  • Нет связанных вопросов^_^