【问题标题】:How does iChat start a conversation?iChat 如何开始对话?
【发布时间】:2011-10-12 09:41:54
【问题描述】:


我想知道 iChat 使用哪种协议与局域网中的其他客户端开始对话?
是 SIP 吗?还是 SIP + XMPP? 开始与 SIP 的会话并与 XMPP 交换消息? 非常感谢!

【问题讨论】:

    标签: xmpp p2p sip ichat


    【解决方案1】:

    它使用Bonjour、XMPP,但使用multicast DNS 表示存在和点对点连接而不是服务器。该协议由 Apple 设计,然后由XMPP Standards Foundation 公开记录为XEP-0174: Serverless Messaging

    【讨论】:

    • 非常感谢,所以现在我们可以借助 jmdns(提供 DNS-SD)发现 Presence 服务,我们知道 name@host:port。但问题是如何与知道其 name@host:port 的客户端开始对话? java中有没有合适的库?像 smack(但 smack 不支持 P2P),任何用于无服务器消息传递的库?我不想对数据框进行封装。
    • 我查看了 XEP-0174 并尝试建立与 bonjour 客户端的套接字连接,并发送字符串“
    【解决方案2】:

    所以,我了解了 ichat 现在是如何工作的。 DSN-SD + XEP-0174.
    不幸的是,XEP-0174 没有任何 java 库,但连接是基于套接字的。
    感谢大家的关注。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-10
      • 2013-07-31
      • 1970-01-01
      • 2016-12-25
      相关资源
      最近更新 更多