Not logged in. · Lost password · Register
Forum: XMPP Protocol RSS
Avatar
notizklotz #1
Member since Dec 2005 · 10 posts · Location: Switzerland
Group memberships: Members
Show profile · Link to this post
Subject: Suitability of XMPP for Message Oriented Communication
I'm currently implementing a .NET CF PDA application which should help groups handling unplanned short-term collaborative tasks. It mainly consists of "Services" like conference chat, a shared agenda or a shared whiteboard. To make it easy for people to see what content has changed since the last time they used their PDA I have chosen a message oriented communication approach, so the message log essentially can do the job. A message just encapsulates service specific information about what the user did. Instead of using a language dependent Message Oriented Middleware I'm evaluating XMPP (and agsXMPP) for my needs.

Basically, these are the requirements:
[list]Arbitrary content embedded in the messages
Offline support. (Store messages until server/client is reachable again)
Guaranteed message delivery to all groups members
Guaranteed message order
(Optional)Support for late-joining people. (so somebody joining the conference chat sees all the previous messages)[/list]

As far as I see, JEP-0045 (Multi User Chat) would meet the requirements. But can I add additional XML content to the messages?
Or should I better look into the more generic JEP-0060 (Publish-Subscribe)?
Or would it be better to write my own XMPP protocol and extend an existing server to support it?
Avatar
Alex #2
Member since Feb 2003 · 4449 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
hi,

All your requirements are no problem with the most standard XMPP servers.
XMPP means eXtensible Messaging and Presence Protocol. And the whole protocol is optimized to be extensible. You can add whatever content you want to your messages. It only has to be valid Xml. The server routes the message only from one JID to another JID, or in GroupChat from one JID to many JIDs, without taking care about the content.
When a client is not available, the server stores the message for offline delivery, and of course delivers the message once the user is reachable again. Because the protocol is TCP/IP  based the correct message order is guarantued.
In the most groupchat modules you can configure how many previous messages will be shown when a new person joins the chat.
Publish Subscribe and Multi-User Chat (MUC) are both very interesting. But for MUC much more server modules are currently available.

Alex
This post was edited on 2005-12-15, 11:06 by Unknown user.
Avatar
notizklotz #3
Member since Dec 2005 · 10 posts · Location: Switzerland
Group memberships: Members
Show profile · Link to this post
Alex, thank you very much for your info!
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters: