Reference implementation of the OASIS Context Server specification
In a few words
Apache Unomi is the reference implementation of the upcoming OASIS Context Server (CXS) standard (https://www.oasis-open.org/committees/cxs/) to help standardize personalization of online experience while promoting ethical web experience management and increased user privacy controls.
Apache Unomi gathers information about users actions, information that is processed and stored by Unomi services. The collected information can then be used to personalize content, derive insights on user behavior, categorize the profiles into segments along user-definable dimensions or acted upon by algorithms.
Articles & slides
- Linux.com : Unomi: A Bridge Between Privacy and Digital Marketing
- Introducing Apache Unomi, JavaOne 2015 This presentation has a cool example of integrating Apache Unomi with IoT devices (Internet of Things) such as beacons, smartphones and even televisions
- Apache Unomi In-depth, ApacheCon EU 2015
- Simple entry-point to retrieve the profile context and collecting user-triggered events (page view, click, downloads, etc…)
- Full & simple REST API for Context Server administration
- Highly scalable architecture
- Fully OSGi compliant application
- Persistence & query layer uses ElasticSearch (other providers may be implemented in the future)
- Uses Apache Karaf as the OSGi runtime (supports both Apache Felix and Eclipse Equinox OSGi implementations)
- Very simple to deploy and install (simply unzip & run)
- Extensible through plugin architecture (using OSGi & simple JSON descriptors)
At a glance
Unomi provides the context of the current user interacting with any Unomi-aware system. Using this context, Unomi-connected systems can send events to the context server. These events might, in turn, trigger rules that perform actions that can update the current context, interact with external systems or pretty much anything that can be implemented using the Unomi API.
- JDK 7 or later, http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Maven 3.0+, http://maven.apache.org
- Look at possible integration with newsletter management systems such as MailChimp, for example to synchronize profile data with collected info.
- Integrate with machine learning implementations such as Prediction.io or Apache Mahout