Reliable Messaging in Swift

Knowing whether your messages have reached your server is a common problem for people on unreliable connections, and XMPP addresses this with XEP-0198: Stream Management. Support for XEP-0198 has been slow to take off, but we’re starting to see a network effect of clients and servers supporting it, with a patch available for Psi, support in the upcoming release of Prosody and a working prototype for Isode’s M-Link, so we’ve reached the stage that it makes sense to add it for Swift.

Remko’s written all the code we need in our Swiften library, and I’ve plugged the UI together to produce XEP-0198 support for Swift, demonstrated in the video below. This has so far been tested against Prosody and M-Link, and has already shown itself to be useful.

Support will be included in the next beta release of Swift, or is already available in the source code repository.