【问题标题】:iPhone Chat Using XMPPFramework and Openfire Server使用 XMPPFramework 和 Openfire 服务器的 iPhone 聊天
【发布时间】:2011-12-31 01:03:23
【问题描述】:

我正在开发一个使用 XMPPFramework 和 Openfire 作为服务器的聊天应用程序。我的应用程序的用户在不同的服务器上注册自己。我仅将 Openfire 服务器用于聊天通信。

现在,我对我的聊天应用的架构有疑问。

我希望每次用户在我的服务器上注册时都将用户添加到 Openfire。为此,我必须在我的服务器中编写一个服务来将注册的详细信息插入 Openfire。这个结构好吗?

另一个问题 - 是否可以在 iPhone 中使用 Objective-C 在 Openfire 服务器中插入/创建用户? Openfire 是否为此提供任何 API,或者我是否必须为此编写外部查询才能插入 Openfire 数据库?

如果可以通过 iPhone 应用程序而不是使用外部服务进行插入,任何人都可以提供一个链接到使用的方法和代码吗?

【问题讨论】:

标签: ios xmpp openfire xmppframework


【解决方案1】:

带内注册无疑是使用 XMPP 实现此目的的最佳方式。

【讨论】:

    【解决方案2】:

    首先检查启动的xmpstream是否支持通过方法'supportsInBandRegistration'进行注册。注册的基本要求是必须存在有效​​的 xmpp 连接。

    如果支持注册,用元素创建下面的数组

    NSMutableArray *elements = [NSMutableArray array];
    [elements addObject:[NSXMLElement elementWithName:@"username" stringValue:@"userName"]];
    [elements addObject:[NSXMLElement elementWithName:@"password" stringValue:[[NSUserDefaults standardUserDefaults] valueForKey:userPassword]]];
    

    并通过XMPPStream方法,

     - (BOOL)registerWithElements:(NSArray *)elements error:(NSError **)errPtr
    

    注册成功可以通过下面的委托方法来检查。

      - (void)xmppStreamDidRegister:(XMPPStream *)sender
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-16
      • 2012-04-24
      • 2012-04-15
      • 1970-01-01
      • 1970-01-01
      • 2012-11-17
      • 2015-02-05
      • 1970-01-01
      相关资源
      最近更新 更多