Login  Register

Re: Messaging solutions for Pharo

Posted by Andres Fortier-3 on Nov 24, 2014; 10:49am
URL: https://forum.world.st/Messaging-solutions-for-Pharo-tp4791119p4791891.html

Hi Stef,

thanks! Glad to be doing things in Pharo :)

On Sun, Nov 23, 2014 at 9:24 AM, stepharo <[hidden email]> wrote:
Hello Andres

nice to see you on this list :)

Stef

Le 19/11/14 19:40, Andres Fortier a écrit :
Hi Esteban,
Never used either of them, but IIRC there was a Jabber package in Visualworks (JabberXMPP?), although not sure if it provided both client and server. There is also http://www.squeaksource.com/@zQrCJXpxIQLxqde8/tV369AO0. Seems dated, but maybe worth a shot considering you only need the server side?

HTH,
Andrés

On Wed, Nov 19, 2014 at 3:06 PM, Esteban A. Maringolo <[hidden email]> wrote:
Hi,

I'll be needing to add bidirectional messaging to our current Android (Java) application, and as usual I'm expecting to manage the server side of the communication with Pharo.

I'm evaluating two alternatives, but I'm in open to other, proven, options.

Option 1. WebSockets
Open a WebSocket on each device, and push/retrieve messages from each of these, tracking the device id if I need to recreate a new socket (avoiding recreating new sockets in case of connectivity issues, very common).

Option 2. MQTT [1]
This is basically a mobile oriented MQ, super low footprint on mobile. 
For what I saw, I could implement the server using an intermediate MQ (RabbitMQ) and use STOMP to connect to it.

Option 3. XMPP [3]
Provides several features I'll need in the future, like file transfer in addition to regular text messaging. It is very well supported in Android with Smack [4], but I don't know if we have a Pharo server for it, or if somebody ever played with it.

By means of simplicity and use load I favor option 1, because I can understand it better, and as everything moves towards web based technologies, I could implement WAMP [5] on top of that in the future.

Right now I'd need to have a hundred websockets opened at the same time, which doesn't sound like a heavy load to me, but I certainly don't know. In the future it could be an order of magnitude bigger, and that's why I don't discard more complex solutions like XMPP or MQTT.

Regards!