I need to implement the push notification for Android but there will not be internet access and only intranet access is available. So I think I cannot use C2DM and third party API like UrbanAirship. So I am thinking of using MQTT RSMB(Really Small Message Broker), C# .net as Publisher to the broker and wMqtt.jar for Android as subcriber to the broker.
I have downloaded the RSMB and found the followings exe: -broker.exe -stdinpub.exe -stdoutsub.exe
I have successfully subscribed from Android and published messages using stdinpub.exe with topic.
I would like to get some advice from you guys on the followings :
1).Is RSMB free? Is there any other alternatives that suit my case?
2).how will I be able to connect to the RSMB broker using C# (for publishing and subscribing). Are there any C# client library for RSMB?
3).How is the performance and reliability of the MQTT ? I might need to push a few hundreds of messages at the same time.
4).If there is no other ways then I am thinking of executing the stdinpub.exe inside my C# application.(It might sound bad).
I find that there is very little information about MQTT on the web and should I really go that way or are there any other alternatives?
Ok, here's a breakdown for you:
1) You need to read the license file that was included with RSMB when you downloaded it. My understanding is that you can't use RSMB for commercial purposes and if IBM release it as a commercial product you have to stop using it.
There is an open source MQTT broker available called Mosquitto (which I develop). It provides full MQTT protocol support and is available for a number of platforms. It also includes client libraries in C, with C++ and Python wrappers, as well as example publish and subscribe clients. You can get more information at http://mosquitto.org/
2) There are two C# libraries available, although I've never used either of them myself. You can find a link to them as well as a whole load of other MQTT related software at http://mqtt.org/software
3) I've had RSMB and Mosquitto handling 1500 messages (100 bytes each) per second on an old VIA C3 600MHz machine. On more modern hardware I'd expect them to perform significantly better.
With regards to information on MQTT, I hope that there is a reasonable amount on the mosquitto website - see http://mosquitto.org/man/mqtt-7.html for an overview for example. You can also come ask questions on the #mqtt irc channel on the Freenode network at http://webchat.freenode.net/ There is also a mailing list at https://launchpad.net/~mqtt-users which may be of use.
I'm afraid I can't really comment on whether you should be using MQTT or something else.