ios 通过 xmppframework 传输文件

Posted

技术标签:

【中文标题】ios 通过 xmppframework 传输文件【英文标题】:ios File transfer by xmppframework 【发布时间】:2013-06-13 15:44:53 【问题描述】:

我使用 xep0096 和 xep0065 完成文件转换,并将文件从 spark 发送到 ios 模拟器。 openfire 服务器设置:

xmpp.auth.anonymous true
xmpp.domain mydomain
xmpp.filetransfer.enabled true
xmpp.proxy.enabled true
xmpp.proxy.externalip 114.xxx.xxx.xxx
xmpp.proxy.port 7777
xmpp.proxy.transfer.required false
xmpp.session.conflict-limit 0
xmpp.socket.ssl.active true

前面表现很好,但是 spark 发送激活 xml 信息是这样的:

<iq id="da0Di-69" to="proxy.mydomain" type="set">
  <query xmlns="http://jabber.org/protocol/bytestreams" sid="jsi_8730437306760952695">
    <activate>ios@mydomain/leestarxin</activate>
  </query>
</iq>

服务器返回

<iq id="da0Di-69" to="spark@mydomain/leestarxin" from="proxy.mydomain" type="error">
  <error code="405" type="CANCEL">
    <not-allowed xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
  </error>
</iq>

查找xep0065,发现错误405:

<not-allowed/> if only one party (either Requester or Recipient, but not both) is connected to the Proxy

为什么会返回这个错误?谁能帮帮我? 谢谢!

补充:

我可以收到回调

- (void)turnSocket:(TURNSocket *)sender didSucceed:(GCDAsyncSocket *)socket

但无法获取任何数据。

【问题讨论】:

我也更改了上述设置,但我收到连接失败回调。你能解飞机吗 【参考方案1】:

我的回答迟了,问题也很老了,但可能对其他人有帮助。查看Jonathon StaffXMPPFramework 的最新推送。链接here

【讨论】:

以上是关于ios 通过 xmppframework 传输文件的主要内容,如果未能解决你的问题,请参考以下文章

XMPPFramework - 如何将图像从一台设备传输到另一台设备?

iOS开发之使用XMPPFramework实现即时通信

iOS上的XMPPFramework -xmppRoomDidDestroy:没有被调用

iOS开发--XMPPFramework--好友列表

如何在目标c中通过ios中的XMPPFramework连接XMPP服务器

iOS XMPPFramework registerWithPassword 错误