Smack is an Open Source XMPP (Jabber) client library for instant messaging and presence. A pure Java library, it can be embedded into your applications to create anything from a full XMPP client to simple XMPP integrations such as sending notification messages and presence-enabling devices.
Starting with b91978dcc4ae partial support for the IoT XEPs was added to Smack. The XEPs consists, amongst other XEPs, of
The XEPs are in experimental state, which means changes to them are possible.
Smack does currently only support a partial set of the mechanisms specified, especially when it comes to Data and Control. For example only boolean and integer values can be read and written But support for more data types can be easily added.
The development of the API was sponsored by Clayster.
Clayster creates technology to secure trust in the transactions between physical and digital entities, and strives to be that generic foundation for your physical assets digital life.
Clayster has an IoT discovery and provisioning platform supporting XEP-0347 and XEP-0324. The platform is available for those who are interested to explore XMPP and IoT further. If you don't want to run your own infrastructure, Clayster is able to provide an XMPP Server and the discovery/provisioning platform for you. Feel free to reach out to rikard at clayster.com if you are interested to learn more about using XMPP for your next IoT project. www.clayster.com
Two new releases of Smack have just been pushed to Maven Central.
Smack 4.1.7 fixes a few bugs. One noteworthy bug is that on certain platforms Smack's setEnabledSSL(Protocols|Ciphers) had no effect. More information about the fixed bugs can be found in the Release Notes.
The careful reader may noticed that this is the first beta release of Smack 4.2. Which means that Smack 4.2 just entered the beta phase. My rough timeplan is to release Smack 4.2 in 6 months: starting with 3 months long beta period now, followed by 3 months of release candidates. But as all schedules in the software industry, take it with a grain of salt.
I've just released and uploaded Smack 4.1.6 and 4.2.0-alpha3 to Maven Central.
Smack 4.1.6 contains a few important bug fixes for Smack's stable branch: 4.1. The changelog can be found here: Smack Changelog
The third alpha version of Smack's upcoming development branch contains a ton of fixes and new features. Adventurous users are encouraged to explore the API improvements. But, as the version name suggests, don't use an alpha version for production deployments. A provisional and incomplete list of Smack 4.2's highlights can be found at Smack 4.2 Readme and Upgrade Guide · igniterealtime/Smack Wiki · GitHub
The Ignite Realtime community is proud to announce the availability of Smack 4.1.5. Like all patch level releases, this release includes some important fixes and users are strongly encouraged to update. Smack 4.1.5 is a API compatible drop-in replacement for every release of the Smack 4.1 series. Have a look at the changelog and the git changelog.
Thanks to everyone who contributed to this release by providing bug reports and patches.
I've just published Smack 4.2.0-alpha2 on Maven Central. Everyone who wants to look into which direction Smack is heading, and current Smack users eager to be prepared for the upcoming API changes are invited to test this version out. We are awaiting your feedback in the Smack Users forum.
More information about Smack 4.2 can be found in the Smack 4.2 Readme and Upgrade Guide.