Over the past couple of weeks a number of clients have asked about SAP Kapsel. Most people who’ve heard of it know it’s something to do with SAP's Mobility Platform, but that is about as far as their knowledge goes.
So here is a brief overview of what SAP Kapsel is, where you can find it, and how to get started.
What is SAP Kapsel in one sentence…or two?
It is s set of plugins for hybrid (containerised web) applications to allow them to leverage the power of SAP's Mobility Platform - features like app-update management, authentication & secure storage. SAP Kapsel has been combined with open & industry standard mechanisms meaning you also get access to device functions (such as cameras, etc.).
What else is SAP Kapsel?
Kapsel is SAP's answer to that age old business question of how to produce enterprise mobile apps for multiple platforms in a cost effective way. This is not a new concept - a fact that, thankfully, SAP have not overlooked and rather than write their own answer to this question they have decided to embrace the already existing open frameworks and add to them to bring SAP support.
Previous iterations of SMP (also known as SUP) had a concept of the "Hybrid Web Container" which was a single app on your device that contained multiple web applications which were pushed down by the mobility platform. While it worked OK, it was cumbersome to setup and didn't provide the best user-experience to the end user.
So with SMP3 we now have SAP Kapsel which builds on the Apache Cordova initiative. Cordova allows developers to build web applications and wrap them up as native individual applications - so essentially when you open the app it launches a web UI. Where this gets interesting is how Cordova, based on your requirements, allows you to add plugins to the web app which allow access to native components such as cameras, file systems and other peripherals. So no matter what your target devices (iOS/Android/Blackberry) you develop a single web app, wrap it for a specific platform and Cordova does the rest.
What SAP has now done is release a set of SAP specific plugins for Cordova which support the access of different features of the SAP Mobility Platform:
AppUpdate: Ability to push DELTA updates to the app from the server - so when the user logs into the app it checks if there are updates and if so downloads and updates the app
AuthProxy: Handles secure authentication such as certificate provisioning etc.
EncryptedStorage: Key/value pair secure storage
Logger: Log out debug info which can be picked up by the server
Logon: Manages the application registration and authentication processes through the SMP server - used by most of the other plugins
Push: Adds push notification support to the app
Settings: Combined with the push module you can push down settings to the app
Should we be excited about SAP Kapsel?
I've been thinking about whether or not I'm excited about Kapsel…and I think I am. Not shout it from the roof-tops kind of excited, but rather quietly happy that SAP is developing add-ins for popular industry standard mechanisms for this kind of development. There is nothing new about Cordova applications being able to talk to SMP - we have been doing that already using SMP as a proxy for Gateway and/or using the REST API's for SMP directly from the apps but that fact that options like the "Logon" plugin for on-boarding and "AppUpdate" for managing the app lifecycle are included are pretty cool features. I'm really interested to see what the next iteration of this product brings!
How do I get started with SAP Kapsel?
SAP Kapsel, as I mentioned is a set of plugins for Cordova, so once you download the SMP SDK 3 from the SAP Service marketplace you can start to use the plugins with your Cordova apps and there is good documentation on the Sybase info-center as to how to do this.
Some other good introductory content
SAP Kapsel by Ian Thain
SAP Kapsel and the Hybrid Web Container HWC by David Clavey
An Introduction to SMP Kapsel by John Wargo