<div dir="ltr">Morning all,<div><br></div><div>I've noticed in a number of places - both places I've worked and places I know others - that were XMPP is used, there's often a desire to simply exchange some private application data. Often, that data is in JSON, though I imagine it occurs in XML sometimes too.</div><div><br></div><div>What unfortunately tends to happen is that the data gets stuffed into the <body/>, and sometimes other "fields" of IM messages are abused in similar ways.</div><div><br></div><div>In the concrete cases I've seen, <subject/> has been used to indicate a message payload type, with the payload itself stuffed into <body/>. This is clearly bad practise.</div><div><br></div><div>We (more or less) have the right tools for encapsulating JSON into XMPP, so that is clearly not enough for newcomers to XMPP to make the "right" decision. Instead, they're using existing, easy-to-use APIs in client libraries to find a low-cost, pragmatic solution - but thereby painting themselves into a corner in the long term.</div><div><br></div><div>Is there interest amongst the developer community to provide a generalised, interoperable facility for the exchange of simple, arbitrary data between consenting entities? I'm calling this SADEX, but I'm really, really, not wed to this name.</div><div><br></div><div>The key here would be the API - you'd want to provide the equivalent of a function call such as:</div><div><br></div><div>void sadex_message(JID to, String type, String data)</div><div><br></div><div>You'd also need a callback for when you receive some, and perhaps an IQ form.</div><div><br></div><div>The wire format is pretty trivial, and largely uninteresting, but I'm happy to sketch something out in a XEP if people want something concrete to work against - but mostly I'd like to know if there's interest.</div><div><br></div><div>Dave.</div></div>