【问题标题】:XMPP - Enabling Chat Among UsersXMPP - 启用用户之间的聊天
【发布时间】:2011-11-04 13:37:45
【问题描述】:

我使用 XMPP 协议和 Openfire 服务器实现了一个 iPhone 聊天应用程序。我可以在 XMPP Client 中列出用户,但我不知道如何在这些用户之间启用聊天。

我想知道:

  1. 如何向选定的用户发送文本

  2. 如何提升聊天窗口并在这两个用户之间发起文本聊天

谢谢。

【问题讨论】:

    标签: ios objective-c xmpp xmppframework


    【解决方案1】:

    XMPPFramework 就是这样一个框架。您必须构建完整的 UI 和创建聊天应用程序所需的所有其他逻辑。

    要向其他用户发送聊天消息,您可以使用类似以下的代码:

    NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
    [body setStringValue:@"Message text here"];
    
    NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
    [message addAttributeWithName:@"type" stringValue:@"chat"];
    [message addAttributeWithName:@"to" stringValue:@"recipient.jid.com"];
    [message addChild:body];
    
    [xmppStream sendElement:message];
    

    例如,您需要使用 UITextField 创建 UI 以输入消息文本。 XMPPFramework 是发送和接收 XMPP 节的低级代码。您还需要在接收 XMPP 消息的位置添加代码,可能使用 isChatMessage 方法,然后通知收件人他们已收到一条消息,将其显示给他们并允许他们回复。

    【讨论】:

    • 谢谢marc,它真的很有帮助。我还有一个疑问“recipient.jid.com”属性的字符串值。这是我们的主机名吗??
    • 例如我的主机名是 182.18.0.162.. 所以我的 to 应该是 nik@182.18.0.162.. 对吗?.. 但我不能向选定的用户发送文本.. 聊天不是工作..
    猜你喜欢
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    • 1970-01-01
    • 2018-02-17
    • 1970-01-01
    相关资源
    最近更新 更多