These are the slides I used for my JavaOne 2015 session. In this presentation I introduce the new Apache Unomi project, as well as its possibilities for integrating with technologies such as content management systems, native mobile applications, beacons and digital signage. The demo featured an iOS native mobile application detecting in-store beacons and sending the tracking data to Apache Unomi. The digital signage was done using an Apple TV being updated with plugins hosted in Apache Unomi.
2. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
ABOUT ME
ONLY NARCISSIST SLIDE
2
Co-founder & CTO
of Jahia
First time at
JavaOne in 2001
Apache
committer
Coder at
heart
3. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
INTRODUCING
GET TO KNOW ME
THE APACHE UNOMI CONTEXT SERVER
3
4. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
A FRONT-END
FOR USER CENTRIC
BIG DATA TECHNOLOGIES.
“
”WITH BUILT-IN DATA PRIVACY
ONE WAY TO LOOK AT IT
AKA USING VERY BIG FONTS
4
5. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
THE APPROACH
WE ARE NOT ALONE
5
DATA
PRIVACY
The Context Server
Standard
Apache Unomi
Reference Implementation
Two trusted, solid and
recognized communities
6. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
VITAL
STANDARDIZATION
PROJECT
“
”LAURENT LISCIA, CEO OF OASIS
TESTIMONIALS
I LOVE WHEN PEOPLE APPROVE
6
7. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
EXPECTATIONS VS REALITY
DO YOU REALLY KNOW ME ?
7
EXPECTATIONS REALITY
BI
SALES
SUPPORT
@
REPORT
CMS
ANALYTICS
CRM
ID
MA
?
8. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
CLEAN & OPEN ARCHITECTURE
THE BIG PICTURE
8
+
UNOMI CORE
CXSID directory
Segmentation Engine
Events
Tracking Engine
RESTFUL API
+
DATA
BACK-END
FRONT-END
+
Apache
BI
SALES
REPORT
ANALYTICS
CRM
ID
MA
…
9. Introducing Apache Unomi - JavaOne 2015 - October 26th 20159
USE CASES
REST API
DOMAIN MODEL Still on-going, join now to make it
easier to fit with your solutions
CONTEXT SERVER SPECIFICATION
JOIN US NOW
10. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
UNOMI FUNCTIONALITIES
MORE THAN JUST KNOWING ME
10
UNOMI
User tracking
Event tracking
Goal tracking, scoring Segmentation Form
Input
tracking
Download
tracking
Impersonification
(personas)
A/B testing
Profile
(visitor,contact,leads)
management and export
Reporting
Privacy
management
11. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
UNOMI ARCHITECTURE
VIEW FROM THE HILL
11
APACHE KARAF
PERSISTENCE IMPLEMENTATION (ELASTICSEARCH, …)
PERSISTENCE SPI (SERVICE PROVIDER INTERFACE)
APACHE CXF
REST API
OSGI SERVICES
12. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
INPUT/OUTPUT
TALKING TO OTHERS
12
RULES
ACTIONS
Protocols
HTTP REST + JSON
SEGMENTSEVENTS
CONTEXT
CONDITIONS
PROFILES
CONTEXT SERVER
BIG DATA
FRAMEWORKS
13. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
SCALABILITY
FIGHTING BACK AT DENIAL OF SERVICES
13
CONTEXT SERVER CMS
Issue
trackingCRMSocial
BIG DATA
SYSTEMS
14. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
ONE IMPORTANT THING
THE GOOD, THE BAD AND THE UGLY
PRIVACY
14
15. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
THE BIG QUESTION
EXPRESSED IN CODING
15
privacy != cloud ?
16. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
PRIVACY: DO IT ALL YOURSELF
BECAUSE I’M ALWAYS RIGHT
16
Are you using
recognized and
safe standards?
Can you trust
your software?
Is your
network secure?
How do you
protect against
hackers?
How do you give
users control
over their data?
Can you trust
your backups ?
Mobile support?
17. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
PRIVACY : TRUSTING OTHERS
WITH GREAT PRIVACY COMES GREAT RESPONSIBILITY
17
TRUST IS COMPLEX
TRANSPARENCY
ETHICS
CONTROL
SECURITY
AUDITING
ACCESS
18. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
YES, TRUST MATTERS
EXAMPLES ARE TOO EASY TO FIND
18
19. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
A CONTRADICTION
THIS COULD KEEP YOU UP AT NIGHT
19
privacy != marketing?
20. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
ONE EXAMPLE
SHARING A LITTLE TOO MUCH…
20
ONE WEBSITE
66 EXTERNAL TRACKERS
21. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
DATA CONTROL LOSS
SO MANY QUESTIONS
21
Customers
DATA
PRIVACY
What data
is collected?
How is the
data used?
Is opt-in
or opt-out
available?
Where is the data sent?
How is the sent
data used?
22. Workspace Factory Launch Presentation 1 24 August 201522
WHAT THEY REALLY DO
MORE THAN WE THINK
Collect data
Send data to third parties
Mine data
Sell data analysis
Some of this might be acceptable, but you need to
know about it and have some control over it
23. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
UNOMI + OASIS CONTEXT SERVER
NO UNILATERAL APPROACH HERE
23
OASIS Context Server Apache Unomi Others
Transparency Yes Yes No
REST API Yes Yes Yes
Community Growing Growing ?
SSL Planned Yes Some
Open source Yes Yes No
Free Yes Yes No
Completed No No Yes
Technology stack Any Java (OSGi) Any
Vendor support Multiple Apache Community Yes
Released 2016 Very soon Yes
On-premise Yes Yes Mostly no
Cloud Yes Yes Most
OEM Available Yes Yes Probably not
24. Introducing Apache Unomi - JavaOne 2015 - October 26th 201524
23 APRIL 2014
12 JUNE 2015
23 SEPT 2015
5 OCT 2015
20 OCT 2015
APACHE STATUS
I WANT IT ALL AND I WANT IT NOW
INCUBATION
ACCEPTED
Incubation vote
closed, 8 binding
votes
INCUBATOR
PODLING
Resources created
INCUBATION
PROPOSAL
Submission as
a new project
UNOMI
ANNOUNCED
Unomi publicly
announced at
JahiaOne 2015
GITHUB INITIAL
IMPORT
Project got started
directly under Apache
License
25. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
COMMERCIAL APPLICATIONS
MAKING MONEY WITH SOMETHING FREE
25
First (known) application:
Build your own !
It’s the beauty
of the Apache
License !
Angular UI built on top of Apache Unomi REST services
26. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
CURRENT TRENDS
ISN’T SOMETHING MISSING?
26
Internet
of Things
BigData
?
27. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
THE MISSING PIECE
HEY LOOK WHAT I FOUND !
27
User
ContextInternet
of Things
BigData
28. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
THE MISSING PIECE
HEY LOOK WHAT I FOUND !
28
User
ContextInternet
of Things
BigData
Web browsers
Mobile devices
29. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
THE MISSING PIECE
HEY LOOK WHAT I FOUND !
29
User
ContextInternet
of Things
Web browsers
Mobile devices
Apache Unomi
30. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
THE MISSING PIECE
HEY LOOK WHAT I FOUND !
30
User
ContextInternet
of Things
Web browsers
Mobile devices
Apache Unomi
BigData
31. A IOT SHOPPING EXAMPLE
AKA AVOIDING BACK INJURIES
Workspace Factory Launch Presentation 1 24 August 201531
Improving shopping experience
Reduce health care costs
Brick-and-mortar to online digital transformation
32. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
BEACON POSITIONING
PLANTING LITTLE WHITE BOXES
32
Great for indoor positioning
33. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
EXAMPLE SCENARIO
CAN WE LOWER HEALTH COSTS AT THE SAME TIME ?
33
1 2
3
Enter shop Browse soda aisle
Browse alcohol aisle
Digital signage in alcohol aisle
Remember: client
has nothing in cart !
34. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
INTERNET OF THINGS
LET’S TAKE SOME RISKS!
UNOMI INTEGRATION DEMO
34
36. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
HOW IT WORKS
RELAYING SIGNALS
36
Unomi Context
Server
Content Server
(Jahia Digital
Factory)
Push Notification
service
37. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
DIGITAL SIGNAGE UPDATES
WATCHING TV CAN PAY SOMETIMES
37
Unomi Context
Server
38. Introducing Apache Unomi - JavaOne 2015 - October 26th 201538
OCTOBER 5th,
2015
Project start after
ApacheCon 2015
return
CODE, CODE,
CODE
Integration
Apache Unomi
with all IoT
devices & servers
OCTOBER 19th,
2015
Implementation
completed
OCTOBER 26th,
2015
Demonstration
and presentation
IMPLEMENTATION TIMELINE
COME ON, GIVE ME ONE MORE WEEK!
39. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
IMPLEMENTATION START POINT
Jahia Marketing Factory
1
2
3
1
2
3
Includes Apache Unomi
YOU ALWAYS NEED A PLACE TO START
Jahia Watcher Mobile App
Integrated with Digital
Factory, but no support for
Unomi or beacons
Jahia Digital Factory
Content management system
and main authentication
39
40. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
IMPLEMENTATION TASKS
MY PRETTY TO-DO LIST
40
Convert code to Swift 2.0
iBeacon self-training
Unomi native mobile integration
tvOS self-training
Unomi iBeacon plugin
Unomi iOS push notification plugin
Unomi Digital Signage plugin
tvOS Digital Signage App
New Context server settings screen
Privacy mobile app screen
41. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
EXTENDING UNOMI
THINKING OUTSIDE “OUT OF THE BOX”
41
iBeacon plugin
iOS Push notification
plugin
Digital Signage
plugin
Apache
Unomi Core
Public
REST API
Admin
REST API
43. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
BEACON UNOMI RULES
THAT LAST ONE WAS LAME
43
{
"metadata" : {
"id": "interestedInAcmeDrinks",
"name": "Update digital signage and notify user interested in ACME drinks",
"description" : "Update digital signage and notify user interested in ACME drinks"
},
"condition" : {
"parameterValues": {
"subConditions":[
{
"type": "profileInterestEventCondition",
"parameterValues":{
"interestName":"alcoholicBeverages",
"value":"10"
}
},
{
"type": "profileInterestEventCondition",
"parameterValues":{
"interestName":"nonAlcoholicBeverages",
"value":"10"
}
}
],
"operator" : "and"
},
"type": "booleanCondition"
},
"actions" : [
{
"type": "setDigitalSignageProfile",
"parameterValues": {
}
},
{
"type": "sendNotification",
"parameterValues": {
}
}
]
}
44. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
TVOS CHALLENGES
OTHERWISE IT WOULD JUST BE SO EASY
44
No web browser !
No push notifications !
Limited documentation
No hardware to test on (only simulator)
Still in beta
45. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
WHERE ?
LINKS
45
http://incubator.apache.org/projects/unomi.html
https://github.com/Jahia/unomi
46. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
WHERE?
MORE LINKS
46
https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cxs
jahia.com/products/marketing-factory
47. Introducing Apache Unomi - JavaOne 2015 - October 26th 2015
Q & A
QUESTIONS & ANSWERS
WAKE UP, IT’S YOUR TURN
47