I'm creating a mobile app that runs on iOS, Android, BB and Win7. It's a location-based app and you can join groups and then be able to see the location of other members of the group. That's all fine and good. I'm currently using GAE to开发者_运维百科 manage the groups.
Now I'd like to add the ability for members of the group to chat with each other. No 1-1 IM but 1-many chat room. So when you've accessed a certain group in the app, you can type a message and all other members of that group will be able to see your message. I started down the road of mobile push (APNS, C2DM, etc) but thought there had to be a better way. I only want the messages coming in if the app is actually running anyway, so the important part of mobile push is not important in this case. But I of course don't want to poll either.
So I started looking into XMPP and it seems like the right solution, but I'm new to this technology. I don't want the user to have to already have, or create some online IM presence with some service of his choice. I'd like to just have a "Username" pref in the mobile app and that's all he ever needs to do.
So that's where I really need some help. Can I programatically create a chat room somewhere and ids for the users of the group? Would I need to host my own XMPP server (which I understand will not work with GAE).
Or am I just of course altogether than there's a better solution?
Thanks very much for any help.
Warren
I use QuickBlox.com as a back-end for my application. It has built-in Chat module based on XMPP and also a Messages module which can help you to send cross platform pushes to iOS, Android and WP7.
By the way, chat module supports groups in MUC (multi user chat) and they also have a sample to integrate the chat into our app.
Check http://hosted.im/ there is free plan (5 users) at least you can test it.
Regarding XMPP implementation, you can do what you want but you will need to run your own xmpp server
Servers:
- ejabberd
- openfire
- jabberd
- jabberd2
- tigase
I don't know if GAE support extension I can't help you here.
Hope this help a little bit.
even the question is little bit old i think this will be useful for other techbees.. :)
You can use Quickblox as your server with registering with them they have different plans for users including free plans.
Also if you want you can maintain your own server.
aSmack is good library for implementing XMPP for android. You can get both the jar and source from the aSmack site. just google it.
But from my own experience its a little bit tough to implement the Multi user Chat..
精彩评论