我正在创建一个可在iOS,Android,BB和Win7上运行的移动应用。这是一个基于位置的应用程序,您可以加入群组,然后能够看到该群组其他成员的位置。这一切都很好,很好。我目前正在使用GAE来管理这些小组。
现在,我想为群组成员添加相互聊天的功能。没有1-1 IM而是1-many聊天室。因此,当您访问应用中的某个群组时,您可以键入消息,该群组的所有其他成员都可以看到您的消息。我开始走移动推(APNS,C2DM等)的道路,但认为必须有更好的方法。如果应用程序实际上正在运行,我只希望收到消息,因此移动推送的重要部分在这种情况下并不重要。但我当然也不想进行民意调查。
所以我开始研究XMPP,它似乎是正确的解决方案,但我是这项技术的新手。我不希望用户必须拥有,或者通过他选择的某些服务创建一些在线IM存在。我想在移动应用程序中只有一个“用户名”的首选项,而这就是他所需要的。
所以这就是我真正需要帮助的地方。我可以以编程方式在某处创建聊天室,并为该组的用户创建ID吗?我是否需要托管我自己的XMPP服务器(我理解它不适用于GAE)。
或者我当然完全不是一个更好的解决方案?
非常感谢您的帮助。
沃伦
答案 0 :(得分:1)
我使用QuickBlox.com作为我的应用程序的后端。它内置基于XMPP的聊天模块,还有一个消息模块,可以帮助您将跨平台推送发送到iOS,Android和WP7。
顺便说一句,聊天模块支持MUC中的群组(多用户聊天),他们还有sample将聊天功能集成到我们的应用中。
答案 1 :(得分:0)
检查http://hosted.im/有免费计划(5位用户),至少可以测试一下。
关于XMPP实现,您可以执行您想要的操作,但您需要运行自己的xmpp服务器
服务器:
我不知道GAE是否支持扩展我在这里无法帮助你。
希望这有点帮助。
答案 2 :(得分:0)
即使问题有点老,我认为这对其他技术人员也很有用.. :)
您可以使用Quickblox作为服务器进行注册,他们对用户有不同的计划,包括免费计划。
此外,如果您希望您可以维护自己的服务器。
aSmack是用于实现Android的XMPP的好库。您可以从aSmack站点获取jar和source。只是谷歌吧。
但根据我自己的经验,实现多用户聊天有点困难..