SlideShare uma empresa Scribd logo
1 de 75
Baixar para ler offline
Director - IoT Architecture, WSO2
Building Smart, Connected Products
with WSO2 IoT Platform
Sumedha Rubasinghe
Amazon Dash Button
Source : http://www.amazon.com
August Smart Lock
Source : https://www.pcmag.com/feature/345176/august-smart-lock-homekit-enabled/3
Source : https://www.propellerhealth.com/how-it-works/
Rebecca Minkoff, New York
Source : https://www.fungglobalretailtech.com/research/deep-dive-iot-retail-digitalizing-brick-mortar-stores/
Rio Tinto Mining
● 73 Self driving Komatsu Trucks
● 1billion material transferred
Source : https://qz.com/874589/rio-tinto-is-using-self-driving-416-ton-trucks-to-haul-raw-materials-around-australia/
Smart, Connected Products
are disrupting businesses.
Smart, Connected Products
are disrupting adapting businesses.
*
Device Registration & Management
Integration
Security - Data
ScalabilityEvent Management
App/Firmware Management
Security – Device Access
App Developers
IoT Device
Admins
Purchase
Use Register
Device Owners
Develop AppsManufacture
Device Cloud
Use Monitor
Challenges in building connected products
*
Device Registration & Management
Integration
Security - Data
ScalabilityEvent Management
App/Firmware Management
Security – Device Access
App Developers
IoT Device
Admins
Purchase
Use Register
Device Owners
Develop AppsManufacture
Device Cloud
Use Monitor
Challenges in building connected products
*
Device Registration & Management
Integration
Security - Data
ScalabilityEvent Management
App/Firmware Management
Security – Device Access
App Developers
IoT Device
Admins
Purchase
Use Register
Device Owners
Develop AppsManufacture
Device Cloud
Use Monitor
Challenges in building connected products
*
Device Registration & Management
Integration
Security - Data
ScalabilityEvent Management
App/Firmware Management
Security – Device Access
App Developers
IoT Device
Admins
Purchase
Use Register
Device Owners
Develop AppsManufacture
Device Cloud
Use Monitor
Challenges in building connected products
High Level Architecture
For building smart,
connected products
Server side cloud Server side cloud
Server side cloud
with edge computing
TCP / UDP
Ethernet WiFi MFC Bluetooth
Low Energy
MOTT-SN ZigBee MFC Bluetooth
Low Energy
MOTT-SN ZigBee
Communication
Gateway
Communication
Gateway
Edge Computing
Web / Portal Dashboard API Management
Event Processing and Analytics
Aggregation / Bus Layer
ESB and Message Broker
Communications
Zigbee, BLE, MFC, MQTT-SN, MQTT, HTTP
DevicesManager
Identity&AccessManagement
Reference Architecture for IoT
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
WSO2 IoT Platform
Device 1
Device 2
Device n
SDK
Device Binding
Hardware
SDK
Edge Computing Core
Communication
API
Applications
System
Device Management Plugins
Devices
System Applications
HTTP, MQTT, XMPP and Custom Transports
Authenticationand
Authorization
Analytics
Device Management Core Analytics Plugins
Devices AppsIoT Platform
Building a connected locker
It’s the journey that matters.
Source : http://www.worldofwanderlust.com/journey-matters-end/
Connected Locker - Solution Architecture
ESP8266 nodemcu
PCF 8574T Keypad driver
Relay module
DHT11 temperature sensor
Door sensor
IR sensor
Metal detector
Solenoid lock
Source https://www.postscapes.com/what-exactly-is-the-internet-of-things-infographic/
Source : https://www.postscapes.com/internet-of-things-protocols/
31NEXBOX A95X
XBee on USB explorer
Arduino with XBee shield
Relay module
Device Gateway
Edge Devices
Mix mode connectivity - XBee, Wifi
Connecting to IoT Platform
Device Management Core
Essential functionality for production grade IoT
architectures.
Device Management Core
Device Management Core
Device
Management
Device Type
Management
Configuration
Management
Policy
Management
Operation
Management
User Management
Certificate
Management
Application
Management
Compliance
Monitoring
Push
Notification
Management
APNS FCM
MQTT HTTP
Plugin
Management
Common plugin
for custom device
types
….
100% API driven IoT Platform
Build your own experience with our managed REST APIs.
Device Management Core
WSO2 APIM
Store in
IoTS
Device Management
Device Group Mgt
Policy Management
Certificate Mgt
User Management
Core APIs available in IoTS
WSO2 APIM
Publisher in
IoTS
Publishing REST APIs
Device Mgt Portal
Subscribing to REST
APIs through API
Application
Accessing the APIs
though various clients
Any other client app
Obtaining an OAuth2 token for API access
curl -k -X POST https://localhost:8243/api-application-registration/register
-H 'authorization: Basic <Base64 encoded username:password>'
-H 'content-type: application/json'
-d '{ "applicationName":"device-management-app", "tags":["device_management"]}'
curl -k -d
"grant_type=password&username=admin&password=admin&scope=perm:admin:device-type
perm:device-types:events perm:device-types:events:view perm:device-types:types
perm:devices:operations"
-H "Authorization: Basic <Base64 encoded client credentials>"
-H "Content-Type: application/x-www-form-urlencoded" https://localhost:8243/token
Getting client credentials
Getting token for API access
1
3
2
Registering “locker” as a device type
curl -X POST http://localhost:8280/api/device-mgt/v1.0/admin/device-types
-H 'authorization: Bearer <access token>'
-H 'content-type: application/json'
-d '{"name": "smart-lock","deviceTypeMetaDefinition":
{"properties": ["lockId"],"features": [{"code": "lock_code", "name": "Set Lock Code for user",
"description": "Set 4 digit lock code with comma separated username"},{"code": "Allow
Open","name": "allow_open", "description": "Set true to allow open with code, false otherwise"}],
"pushNotificationConfig": {"type": "MQTT", "scheduled": false}, "description": "this is a new remote
control smart lock", "initialOperationConfig": {"operations": ["lock_code"]}}}'
Registering a new device type using APIs
1
Device type is the extension point to introduce new
type of devices to IoT platform.
{
"name":"smart-lock",
"deviceTypeMetaDefinition":{
"properties":[
"lockId"
],
"features":[
{
"code":"lock_code",
"name":"Set Lock Code",
"description":"Set 4 digit lock code with comma
separated username"
},
{
"code":"Allow Open",
"name":"allow_open",
"description":"Set true to allow open with code,
false otherwise"
}
],
"pushNotificationConfig":{
"type":"MQTT",
"scheduled":false
},
"description":"this is a new remote control smart
lock",
"initialOperationConfig":{
"operations":[
"lock_code"
{
"name":"smart-lock",
"deviceTypeMetaDefinition":{
"properties":[
"lockId"
],
"features":[
{
"code":"lock_code",
"name":"Set Lock Code",
"description":"Set 4 digit lock code with comma
separated username"
},
{
"code":"Allow Open",
"name":"allow_open",
"description":"Set true to allow open with code,
false otherwise"
}
],
"pushNotificationConfig":{
"type":"MQTT",
"scheduled":false
},
"description":"this is a new remote control smart
lock",
"initialOperationConfig":{
"operations":[
"lock_code"
Properties
{
"name":"smart-lock",
"deviceTypeMetaDefinition":{
"properties":[
"lockId"
],
"features":[
{
"code":"lock_code",
"name":"Set Lock Code",
"description":"Set 4 digit lock code with comma
separated username"
},
{
"code":"Allow Open",
"name":"allow_open",
"description":"Set true to allow open with code,
false otherwise"
}
],
"pushNotificationConfig":{
"type":"MQTT",
"scheduled":false
},
"description":"this is a new remote control smart
lock",
"initialOperationConfig":{
"operations":[
"lock_code"
Properties
Operations
{
"name":"smart-lock",
"deviceTypeMetaDefinition":{
"properties":[
"lockId"
],
"features":[
{
"code":"lock_code",
"name":"Set Lock Code",
"description":"Set 4 digit lock code with comma
separated username"
},
{
"code":"Allow Open",
"name":"allow_open",
"description":"Set true to allow open with code,
false otherwise"
}
],
"pushNotificationConfig":{
"type":"MQTT",
"scheduled":false
},
"description":"this is a new remote control smart
lock",
"initialOperationConfig":{
"operations":[
"lock_code"
Properties
Operations
Communication
Registering device type (‘locker’) via UIs
1
2
Registering an event stream from ‘locker’
1
curl -X POST http://localhost:8280/api/device-mgt/v1.0/events/locker
-H 'authorization: Bearer <access token>'
-H 'content-type: application/json'
-d '{"eventAttributes": {"attributes": [{"name": "locker_status","type": "String"}, "transport":
"MQTT"}'
Device instance will be sending events to IoT
platform. These event formats need to be
registered.
Device Enrollment Process
Capabilities of every device type is unique.
Device Provisioning Methodologies
Keys, Certs burnt to hardware
Device Provisioning Methodologies
Keys, Certs burnt to hardware Keys, Certs burnt to firmware
Device Provisioning Methodologies
Keys, Certs burnt to hardware Keys, Certs burnt to firmware
TPM (Trusted Platform Module)
or UUID
Device Provisioning Methodologies
Keys, Certs burnt to hardware Keys, Certs burnt to firmware
TPM (Trusted Platform Module)
or UUID
User initiated
Device Provisioning Methodologies
Enrolling a locker instance
1
curl -X POST /api/device-mgt/v1.0/device/agent/enroll
-H 'accept: application/json'
-H 'authorization: Bearer <accessToken>'
-H 'content-type: application/json'
-d '{
"name": "devicename", "type": "locker",
"description": "description",
"deviceIdentifier": "1234",
"enrolmentInfo": {"ownership": "BYOD", "status": "ACTIVE"} ,
"properties": [{"name": "propertyName","value": "propertyValue"
}]}'
Enrolling a locker instance
curl -X POST /api/device-mgt/v1.0/device/agent/enroll
-H 'accept: application/json'
-H 'authorization: Bearer <accessToken>'
-H 'content-type: application/json'
-d '{
"name": "devicename", "type": "locker",
"description": "description",
"deviceIdentifier": "1234",
"enrolmentInfo": {"ownership": "BYOD", "status": "ACTIVE"} ,
"properties": [{"name": "propertyName","value": "propertyValue"
}]}'
API endpoint
Access token
Instance name
Instance id
Enrolling a locker instance (via App)
Pushing lock_code command to locker
1
curl -X POST https://localhost:9443/api/device-mgt/v1.0/devices/locker/operations
-H 'authorization: Bearer <accessToken>'
-d '{
"deviceIdentifiers": ["1234"],
"operation": {
"code": "lock_code",
"type": "PROFILE",
"status": "PENDING",
"isEnabled": true,
"payLoad": "1234,sumedha"
}
}'
Pushing allow_open command to locker
1
curl -X POST https://localhost:9443/api/device-mgt/v1.0/devices/locker/operations
-H 'authorization: Bearer <accessToken>'
-d '{
"deviceIdentifiers": ["1234"],
"operation": {
"code": "allow_open",
"type": "PROFILE",
"status": "PENDING",
"isEnabled": true,
"payLoad": "true"
}
}'
Publishing sensor data from locker - HTTP
1
curl -k -X POST https://localhost:8243/api/device-mgt/v1.0/device/agent/events/publish/locker/1234
-H 'authorization: Bearer <accessToken>'
-H 'content-type: application/json'
-d '{"temperature":0.0,"humidity":0.0,"metal":false,"occupancy":false,"open":false,"attempt":"string"}'
Publishing sensor data from locker - MQTT
1
MQTT Topic :carbon.super/locker/1234/events
Device Event Payload :
{"temperature":0.0,"humidity":0.0,"metal":false,"occupancy":false,"open":false,"attempt":"string"
Data stream processing
for continuous in flow of close to real time data.
Data Stream Processing
Data Stream Processing
● Lock usage anomaly detection
○ object inside, door open
● Lock access detection
● Temperature / Humidity changes
● Identifying metal objects
Event Receivers Execution Plan
Event
Publishers
Event Sources
Input Stream
Input Stream
Output Stream
Output Stream
Batch Processing
● Lock access statistics over a month
Event
Receivers
Event Sources
Input Stream
Input Stream
Event
Store
Spark Script
Result
Store
Console:
Spark Query
Output
Stream
Event
Publishers
Data Stream Processing
● Event Flow
Data sharing capabilities
Collect, share, exchange
App details page
API Store
Built-in geo based functionality
Every device is located somewhere.
• Devices can be moving /
stationary
• Analytics on moving
devices
– Real time location updates
– Geo Fencing
– Geo Tagging
– Geo Messaging
– Alerting
• Analytics on stationary
devices
– Location Map
– Geo location based groups
Location based services
Location based services
+
Location based services
Support for Edge / Fog computing
Privacy, latency, offline operations matters.
• Why?
– Safeguard privacy
– Reduce latency
– Minimize bandwidth usage
– Avoid connectivity issues
• A platform specific packaged offering of WSO2 Siddhi, e.g.
– Edge Computing Engine for Android
– Edge Computing Engine for Yocto Linux
• WSO2 Siddhi
– Lightweight, easy-to-use open source CEP engine
– https://github.com/wso2/siddhi
• Centralized distribution of rules and offline execution mode
Edge / Fog Computing
• Firebase Cloud Messaging (FCM) or local push notifications
• Auto enroll device with mutual SSL
• Integrate with Android system service apps (sign with vendor
firmware signing key)
– Reboot, firmware upgrade, silent app install/update/remove
• Data containerization
• Android for work support
• Device ownership application via device owner APIs (for
COPE)
Android-Based Device Management
wso2.com

Mais conteúdo relacionado

Mais procurados

WSO2 Platform Introduction
WSO2 Platform IntroductionWSO2 Platform Introduction
WSO2 Platform Introduction
WSO2
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5
Richard Hudson
 

Mais procurados (20)

Azure IoT services - overview, SenZations 2015
Azure IoT services - overview, SenZations 2015Azure IoT services - overview, SenZations 2015
Azure IoT services - overview, SenZations 2015
 
In-Memory Computing Driving Edge Computing and Blockchain Technologies
In-Memory Computing Driving Edge Computing and Blockchain TechnologiesIn-Memory Computing Driving Edge Computing and Blockchain Technologies
In-Memory Computing Driving Edge Computing and Blockchain Technologies
 
IoT – The reality of real world solutions
IoT – The reality of real world solutions IoT – The reality of real world solutions
IoT – The reality of real world solutions
 
Connecting IoT devices to Azure
Connecting IoT devices to AzureConnecting IoT devices to Azure
Connecting IoT devices to Azure
 
Architecting IoT solutions with Microsoft Azure
Architecting IoT solutions with Microsoft AzureArchitecting IoT solutions with Microsoft Azure
Architecting IoT solutions with Microsoft Azure
 
Microsoft Azure and IoT – how to use
Microsoft Azure and IoT – how to useMicrosoft Azure and IoT – how to use
Microsoft Azure and IoT – how to use
 
IoT design and services
IoT design and servicesIoT design and services
IoT design and services
 
IoT on the Edge
IoT on the EdgeIoT on the Edge
IoT on the Edge
 
IBM IoT Architecture and Capabilities at the Edge and Cloud
IBM IoT Architecture and Capabilities at the Edge and Cloud IBM IoT Architecture and Capabilities at the Edge and Cloud
IBM IoT Architecture and Capabilities at the Edge and Cloud
 
Internet of things (IoT) with Azure
Internet of things (IoT) with AzureInternet of things (IoT) with Azure
Internet of things (IoT) with Azure
 
Business Transformation with Microsoft Azure IoT
Business Transformation with Microsoft Azure IoTBusiness Transformation with Microsoft Azure IoT
Business Transformation with Microsoft Azure IoT
 
WSO2 IoT Server and Device Cloud
WSO2 IoT Server and Device CloudWSO2 IoT Server and Device Cloud
WSO2 IoT Server and Device Cloud
 
WSO2 Platform Introduction
WSO2 Platform IntroductionWSO2 Platform Introduction
WSO2 Platform Introduction
 
Building IoT solutions using Windows 10 IoT Core & Azure
Building IoT solutions using Windows 10 IoT Core & AzureBuilding IoT solutions using Windows 10 IoT Core & Azure
Building IoT solutions using Windows 10 IoT Core & Azure
 
Using an Open Source RESTful Backend for IoT Applications
Using an Open Source RESTful Backend for IoT ApplicationsUsing an Open Source RESTful Backend for IoT Applications
Using an Open Source RESTful Backend for IoT Applications
 
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
An Introduction to Eclipse Kura - Eclipse Day Florence 2014An Introduction to Eclipse Kura - Eclipse Day Florence 2014
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5
 
IoT Platform Meetup - HP Enterprise
IoT Platform Meetup - HP EnterpriseIoT Platform Meetup - HP Enterprise
IoT Platform Meetup - HP Enterprise
 
Device to Intelligence, IOT and Big Data in Oracle
Device to Intelligence, IOT and Big Data in OracleDevice to Intelligence, IOT and Big Data in Oracle
Device to Intelligence, IOT and Big Data in Oracle
 
IBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATION
IBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATIONIBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATION
IBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATION
 

Destaque

Destaque (20)

[WSO2Con EU 2017] WSO2 Unleashed: Full Stack Automation, Pitfalls and Solutions
[WSO2Con EU 2017] WSO2 Unleashed: Full Stack Automation, Pitfalls and Solutions[WSO2Con EU 2017] WSO2 Unleashed: Full Stack Automation, Pitfalls and Solutions
[WSO2Con EU 2017] WSO2 Unleashed: Full Stack Automation, Pitfalls and Solutions
 
[WSO2Con EU 2017] Fraud Prevention and Compliance in Financial Sector with WS...
[WSO2Con EU 2017] Fraud Prevention and Compliance in Financial Sector with WS...[WSO2Con EU 2017] Fraud Prevention and Compliance in Financial Sector with WS...
[WSO2Con EU 2017] Fraud Prevention and Compliance in Financial Sector with WS...
 
[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises
 
[WSO2Con EU 2017] Keynote: Mobile Identity in the Digital Economy
[WSO2Con EU 2017] Keynote: Mobile Identity in the Digital Economy[WSO2Con EU 2017] Keynote: Mobile Identity in the Digital Economy
[WSO2Con EU 2017] Keynote: Mobile Identity in the Digital Economy
 
[WSO2Con EU 2017] From the Trenches: IoT Customer Stories
[WSO2Con EU 2017] From the Trenches: IoT Customer Stories[WSO2Con EU 2017] From the Trenches: IoT Customer Stories
[WSO2Con EU 2017] From the Trenches: IoT Customer Stories
 
[WSO2Con EU 2017] Building Smarter Cities: Examples from Deployments Across t...
[WSO2Con EU 2017] Building Smarter Cities: Examples from Deployments Across t...[WSO2Con EU 2017] Building Smarter Cities: Examples from Deployments Across t...
[WSO2Con EU 2017] Building Smarter Cities: Examples from Deployments Across t...
 
[WSO2Con EU 2017] Transforming the Way We Deliver Operational Technology
[WSO2Con EU 2017] Transforming the Way We Deliver Operational Technology[WSO2Con EU 2017] Transforming the Way We Deliver Operational Technology
[WSO2Con EU 2017] Transforming the Way We Deliver Operational Technology
 
[WSO2Con EU 2017] How to Learn and Contribute to Ballerina
[WSO2Con EU 2017] How to Learn and Contribute to Ballerina[WSO2Con EU 2017] How to Learn and Contribute to Ballerina
[WSO2Con EU 2017] How to Learn and Contribute to Ballerina
 
[WSO2Con EU 2017] Integration Platform Strategy for Digital Transformation
[WSO2Con EU 2017] Integration Platform Strategy for Digital Transformation[WSO2Con EU 2017] Integration Platform Strategy for Digital Transformation
[WSO2Con EU 2017] Integration Platform Strategy for Digital Transformation
 
[WSO2Con EU 2017] Creating Composite Services Using Ballerina
[WSO2Con EU 2017] Creating Composite Services Using Ballerina[WSO2Con EU 2017] Creating Composite Services Using Ballerina
[WSO2Con EU 2017] Creating Composite Services Using Ballerina
 
[WSO2Con EU 2017] Travis Perkins - Our Digital Transformation & the Importanc...
[WSO2Con EU 2017] Travis Perkins - Our Digital Transformation & the Importanc...[WSO2Con EU 2017] Travis Perkins - Our Digital Transformation & the Importanc...
[WSO2Con EU 2017] Travis Perkins - Our Digital Transformation & the Importanc...
 
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
[WSO2Con EU 2017] How API Management at Suva is Helping in Reducing Costs to ...
 
[WSO2Con EU 2017] Implementing Data Exchange Infrastructure in Government
[WSO2Con EU 2017] Implementing Data Exchange Infrastructure in Government[WSO2Con EU 2017] Implementing Data Exchange Infrastructure in Government
[WSO2Con EU 2017] Implementing Data Exchange Infrastructure in Government
 
[WSO2Con EU 2017] WHO CARES? A WSO2 Cloud Oriented Reference Architecture for...
[WSO2Con EU 2017] WHO CARES? A WSO2 Cloud Oriented Reference Architecture for...[WSO2Con EU 2017] WHO CARES? A WSO2 Cloud Oriented Reference Architecture for...
[WSO2Con EU 2017] WHO CARES? A WSO2 Cloud Oriented Reference Architecture for...
 
[WSO2Con EU 2017] Manipulating XML, JSON and SQL Data Types with Ballerina
[WSO2Con EU 2017] Manipulating XML, JSON and SQL Data Types with Ballerina[WSO2Con EU 2017] Manipulating XML, JSON and SQL Data Types with Ballerina
[WSO2Con EU 2017] Manipulating XML, JSON and SQL Data Types with Ballerina
 
[WSO2Con EU 2017] Keynote: Ballerina Plans and Futures
[WSO2Con EU 2017] Keynote: Ballerina Plans and Futures[WSO2Con EU 2017] Keynote: Ballerina Plans and Futures
[WSO2Con EU 2017] Keynote: Ballerina Plans and Futures
 
[WSO2Con EU 2017] Building Next Generation Banking Middleware at ING: The Rol...
[WSO2Con EU 2017] Building Next Generation Banking Middleware at ING: The Rol...[WSO2Con EU 2017] Building Next Generation Banking Middleware at ING: The Rol...
[WSO2Con EU 2017] Building Next Generation Banking Middleware at ING: The Rol...
 
[WSO2Con EU 2017] How a Large Organization Weighted on a WSO2 Integration Pla...
[WSO2Con EU 2017] How a Large Organization Weighted on a WSO2 Integration Pla...[WSO2Con EU 2017] How a Large Organization Weighted on a WSO2 Integration Pla...
[WSO2Con EU 2017] How a Large Organization Weighted on a WSO2 Integration Pla...
 
[WSO2Con EU 2017] WSO2 Integration Cloud: End-to-End Demonstration Including ...
[WSO2Con EU 2017] WSO2 Integration Cloud: End-to-End Demonstration Including ...[WSO2Con EU 2017] WSO2 Integration Cloud: End-to-End Demonstration Including ...
[WSO2Con EU 2017] WSO2 Integration Cloud: End-to-End Demonstration Including ...
 
[WSO2Con EU 2017] File Processing and Websockets with Ballerina
[WSO2Con EU 2017] File Processing and Websockets with Ballerina[WSO2Con EU 2017] File Processing and Websockets with Ballerina
[WSO2Con EU 2017] File Processing and Websockets with Ballerina
 

Semelhante a [WSO2Con EU 2017] Building Smart, Connected Products with WSO2 IoT Platform

Semelhante a [WSO2Con EU 2017] Building Smart, Connected Products with WSO2 IoT Platform (20)

What’s New in WSO2 IoT Server 3.1.0
What’s New in WSO2 IoT Server 3.1.0What’s New in WSO2 IoT Server 3.1.0
What’s New in WSO2 IoT Server 3.1.0
 
Fiware IoT Proposal & Community
Fiware IoT Proposal & Community Fiware IoT Proposal & Community
Fiware IoT Proposal & Community
 
Blockchin Architecture on Azure-Part-3
Blockchin Architecture on Azure-Part-3Blockchin Architecture on Azure-Part-3
Blockchin Architecture on Azure-Part-3
 
CIS14: Securing the Internet of Things with Open Standards
CIS14: Securing the Internet of Things with Open StandardsCIS14: Securing the Internet of Things with Open Standards
CIS14: Securing the Internet of Things with Open Standards
 
2016-Mar-03 Leppitsch in Auckland meetup
2016-Mar-03 Leppitsch in Auckland meetup2016-Mar-03 Leppitsch in Auckland meetup
2016-Mar-03 Leppitsch in Auckland meetup
 
Fiware io t_ul20_cpbr8
Fiware io t_ul20_cpbr8Fiware io t_ul20_cpbr8
Fiware io t_ul20_cpbr8
 
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case StudiesReply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
 
Architecting io t solutions with microisoft azure ignite tour version
Architecting io t solutions with microisoft azure ignite tour versionArchitecting io t solutions with microisoft azure ignite tour version
Architecting io t solutions with microisoft azure ignite tour version
 
AWS IoT 및 Mobile Hub 서비스 소개 (김일호) :: re:Invent re:Cap Webinar 2015
AWS IoT 및 Mobile Hub 서비스 소개 (김일호) :: re:Invent re:Cap Webinar 2015AWS IoT 및 Mobile Hub 서비스 소개 (김일호) :: re:Invent re:Cap Webinar 2015
AWS IoT 및 Mobile Hub 서비스 소개 (김일호) :: re:Invent re:Cap Webinar 2015
 
Internet of Things: Identity & Security with Open Standards
Internet of Things: Identity & Security with Open StandardsInternet of Things: Identity & Security with Open Standards
Internet of Things: Identity & Security with Open Standards
 
FIWARE IoT Proposal & Community
FIWARE IoT Proposal & CommunityFIWARE IoT Proposal & Community
FIWARE IoT Proposal & Community
 
Pentesting Android Applications
Pentesting Android ApplicationsPentesting Android Applications
Pentesting Android Applications
 
Webinar: Extend The Power of The ForgeRock Identity Platform Through Scripting
Webinar: Extend The Power of The ForgeRock Identity Platform Through ScriptingWebinar: Extend The Power of The ForgeRock Identity Platform Through Scripting
Webinar: Extend The Power of The ForgeRock Identity Platform Through Scripting
 
“Deploying Edge AI Solutions at Scale for the Internet of Things,” a Presenta...
“Deploying Edge AI Solutions at Scale for the Internet of Things,” a Presenta...“Deploying Edge AI Solutions at Scale for the Internet of Things,” a Presenta...
“Deploying Edge AI Solutions at Scale for the Internet of Things,” a Presenta...
 
Blockchain and IAM for IOT Edge Authentication
Blockchain and IAM for IOT Edge AuthenticationBlockchain and IAM for IOT Edge Authentication
Blockchain and IAM for IOT Edge Authentication
 
IoT Sensor Sensibility - Hull Digital - C4Di - Feb 2016
IoT Sensor Sensibility - Hull Digital - C4Di - Feb 2016IoT Sensor Sensibility - Hull Digital - C4Di - Feb 2016
IoT Sensor Sensibility - Hull Digital - C4Di - Feb 2016
 
[WSO2Con EU 2018] Blockchain in the Business API Ecosystem - API Consumption ...
[WSO2Con EU 2018] Blockchain in the Business API Ecosystem - API Consumption ...[WSO2Con EU 2018] Blockchain in the Business API Ecosystem - API Consumption ...
[WSO2Con EU 2018] Blockchain in the Business API Ecosystem - API Consumption ...
 
CCICI CIP 1.0 Testbed - Security access implementation and reference - v1.0
CCICI CIP 1.0 Testbed - Security access implementation and reference - v1.0CCICI CIP 1.0 Testbed - Security access implementation and reference - v1.0
CCICI CIP 1.0 Testbed - Security access implementation and reference - v1.0
 
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
 
citus™ iot ecosystem
citus™ iot ecosystemcitus™ iot ecosystem
citus™ iot ecosystem
 

Mais de WSO2

Mais de WSO2 (20)

Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
WSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the CloudWSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the Cloud
 
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
 
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and ApplicationsWSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
WSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital Businesses
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of TransformationWSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 

[WSO2Con EU 2017] Building Smart, Connected Products with WSO2 IoT Platform

  • 1. Director - IoT Architecture, WSO2 Building Smart, Connected Products with WSO2 IoT Platform Sumedha Rubasinghe
  • 2. Amazon Dash Button Source : http://www.amazon.com
  • 3. August Smart Lock Source : https://www.pcmag.com/feature/345176/august-smart-lock-homekit-enabled/3
  • 5. Rebecca Minkoff, New York Source : https://www.fungglobalretailtech.com/research/deep-dive-iot-retail-digitalizing-brick-mortar-stores/
  • 6. Rio Tinto Mining ● 73 Self driving Komatsu Trucks ● 1billion material transferred Source : https://qz.com/874589/rio-tinto-is-using-self-driving-416-ton-trucks-to-haul-raw-materials-around-australia/
  • 7. Smart, Connected Products are disrupting businesses.
  • 8. Smart, Connected Products are disrupting adapting businesses.
  • 9. * Device Registration & Management Integration Security - Data ScalabilityEvent Management App/Firmware Management Security – Device Access App Developers IoT Device Admins Purchase Use Register Device Owners Develop AppsManufacture Device Cloud Use Monitor Challenges in building connected products
  • 10. * Device Registration & Management Integration Security - Data ScalabilityEvent Management App/Firmware Management Security – Device Access App Developers IoT Device Admins Purchase Use Register Device Owners Develop AppsManufacture Device Cloud Use Monitor Challenges in building connected products
  • 11. * Device Registration & Management Integration Security - Data ScalabilityEvent Management App/Firmware Management Security – Device Access App Developers IoT Device Admins Purchase Use Register Device Owners Develop AppsManufacture Device Cloud Use Monitor Challenges in building connected products
  • 12. * Device Registration & Management Integration Security - Data ScalabilityEvent Management App/Firmware Management Security – Device Access App Developers IoT Device Admins Purchase Use Register Device Owners Develop AppsManufacture Device Cloud Use Monitor Challenges in building connected products
  • 13. High Level Architecture For building smart, connected products
  • 14. Server side cloud Server side cloud Server side cloud with edge computing TCP / UDP Ethernet WiFi MFC Bluetooth Low Energy MOTT-SN ZigBee MFC Bluetooth Low Energy MOTT-SN ZigBee Communication Gateway Communication Gateway Edge Computing
  • 15. Web / Portal Dashboard API Management Event Processing and Analytics Aggregation / Bus Layer ESB and Message Broker Communications Zigbee, BLE, MFC, MQTT-SN, MQTT, HTTP DevicesManager Identity&AccessManagement Reference Architecture for IoT
  • 16. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 17. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 18. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 19. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 20. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 21. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 22. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 23. WSO2 IoT Platform Device 1 Device 2 Device n SDK Device Binding Hardware SDK Edge Computing Core Communication API Applications System Device Management Plugins Devices System Applications HTTP, MQTT, XMPP and Custom Transports Authenticationand Authorization Analytics Device Management Core Analytics Plugins Devices AppsIoT Platform
  • 24. Building a connected locker It’s the journey that matters. Source : http://www.worldofwanderlust.com/journey-matters-end/
  • 25. Connected Locker - Solution Architecture
  • 26.
  • 27. ESP8266 nodemcu PCF 8574T Keypad driver Relay module DHT11 temperature sensor Door sensor IR sensor Metal detector Solenoid lock
  • 28.
  • 31. 31NEXBOX A95X XBee on USB explorer Arduino with XBee shield Relay module Device Gateway Edge Devices Mix mode connectivity - XBee, Wifi
  • 32. Connecting to IoT Platform
  • 33. Device Management Core Essential functionality for production grade IoT architectures.
  • 34. Device Management Core Device Management Core Device Management Device Type Management Configuration Management Policy Management Operation Management User Management Certificate Management Application Management Compliance Monitoring Push Notification Management APNS FCM MQTT HTTP Plugin Management Common plugin for custom device types ….
  • 35. 100% API driven IoT Platform Build your own experience with our managed REST APIs.
  • 36. Device Management Core WSO2 APIM Store in IoTS Device Management Device Group Mgt Policy Management Certificate Mgt User Management Core APIs available in IoTS WSO2 APIM Publisher in IoTS Publishing REST APIs Device Mgt Portal Subscribing to REST APIs through API Application Accessing the APIs though various clients Any other client app
  • 37. Obtaining an OAuth2 token for API access curl -k -X POST https://localhost:8243/api-application-registration/register -H 'authorization: Basic <Base64 encoded username:password>' -H 'content-type: application/json' -d '{ "applicationName":"device-management-app", "tags":["device_management"]}' curl -k -d "grant_type=password&username=admin&password=admin&scope=perm:admin:device-type perm:device-types:events perm:device-types:events:view perm:device-types:types perm:devices:operations" -H "Authorization: Basic <Base64 encoded client credentials>" -H "Content-Type: application/x-www-form-urlencoded" https://localhost:8243/token Getting client credentials Getting token for API access 1 3 2
  • 38. Registering “locker” as a device type curl -X POST http://localhost:8280/api/device-mgt/v1.0/admin/device-types -H 'authorization: Bearer <access token>' -H 'content-type: application/json' -d '{"name": "smart-lock","deviceTypeMetaDefinition": {"properties": ["lockId"],"features": [{"code": "lock_code", "name": "Set Lock Code for user", "description": "Set 4 digit lock code with comma separated username"},{"code": "Allow Open","name": "allow_open", "description": "Set true to allow open with code, false otherwise"}], "pushNotificationConfig": {"type": "MQTT", "scheduled": false}, "description": "this is a new remote control smart lock", "initialOperationConfig": {"operations": ["lock_code"]}}}' Registering a new device type using APIs 1 Device type is the extension point to introduce new type of devices to IoT platform.
  • 39. { "name":"smart-lock", "deviceTypeMetaDefinition":{ "properties":[ "lockId" ], "features":[ { "code":"lock_code", "name":"Set Lock Code", "description":"Set 4 digit lock code with comma separated username" }, { "code":"Allow Open", "name":"allow_open", "description":"Set true to allow open with code, false otherwise" } ], "pushNotificationConfig":{ "type":"MQTT", "scheduled":false }, "description":"this is a new remote control smart lock", "initialOperationConfig":{ "operations":[ "lock_code"
  • 40. { "name":"smart-lock", "deviceTypeMetaDefinition":{ "properties":[ "lockId" ], "features":[ { "code":"lock_code", "name":"Set Lock Code", "description":"Set 4 digit lock code with comma separated username" }, { "code":"Allow Open", "name":"allow_open", "description":"Set true to allow open with code, false otherwise" } ], "pushNotificationConfig":{ "type":"MQTT", "scheduled":false }, "description":"this is a new remote control smart lock", "initialOperationConfig":{ "operations":[ "lock_code" Properties
  • 41. { "name":"smart-lock", "deviceTypeMetaDefinition":{ "properties":[ "lockId" ], "features":[ { "code":"lock_code", "name":"Set Lock Code", "description":"Set 4 digit lock code with comma separated username" }, { "code":"Allow Open", "name":"allow_open", "description":"Set true to allow open with code, false otherwise" } ], "pushNotificationConfig":{ "type":"MQTT", "scheduled":false }, "description":"this is a new remote control smart lock", "initialOperationConfig":{ "operations":[ "lock_code" Properties Operations
  • 42. { "name":"smart-lock", "deviceTypeMetaDefinition":{ "properties":[ "lockId" ], "features":[ { "code":"lock_code", "name":"Set Lock Code", "description":"Set 4 digit lock code with comma separated username" }, { "code":"Allow Open", "name":"allow_open", "description":"Set true to allow open with code, false otherwise" } ], "pushNotificationConfig":{ "type":"MQTT", "scheduled":false }, "description":"this is a new remote control smart lock", "initialOperationConfig":{ "operations":[ "lock_code" Properties Operations Communication
  • 43. Registering device type (‘locker’) via UIs 1 2
  • 44. Registering an event stream from ‘locker’ 1 curl -X POST http://localhost:8280/api/device-mgt/v1.0/events/locker -H 'authorization: Bearer <access token>' -H 'content-type: application/json' -d '{"eventAttributes": {"attributes": [{"name": "locker_status","type": "String"}, "transport": "MQTT"}' Device instance will be sending events to IoT platform. These event formats need to be registered.
  • 45. Device Enrollment Process Capabilities of every device type is unique.
  • 47. Keys, Certs burnt to hardware Device Provisioning Methodologies
  • 48. Keys, Certs burnt to hardware Keys, Certs burnt to firmware Device Provisioning Methodologies
  • 49. Keys, Certs burnt to hardware Keys, Certs burnt to firmware TPM (Trusted Platform Module) or UUID Device Provisioning Methodologies
  • 50. Keys, Certs burnt to hardware Keys, Certs burnt to firmware TPM (Trusted Platform Module) or UUID User initiated Device Provisioning Methodologies
  • 51. Enrolling a locker instance 1 curl -X POST /api/device-mgt/v1.0/device/agent/enroll -H 'accept: application/json' -H 'authorization: Bearer <accessToken>' -H 'content-type: application/json' -d '{ "name": "devicename", "type": "locker", "description": "description", "deviceIdentifier": "1234", "enrolmentInfo": {"ownership": "BYOD", "status": "ACTIVE"} , "properties": [{"name": "propertyName","value": "propertyValue" }]}'
  • 52. Enrolling a locker instance curl -X POST /api/device-mgt/v1.0/device/agent/enroll -H 'accept: application/json' -H 'authorization: Bearer <accessToken>' -H 'content-type: application/json' -d '{ "name": "devicename", "type": "locker", "description": "description", "deviceIdentifier": "1234", "enrolmentInfo": {"ownership": "BYOD", "status": "ACTIVE"} , "properties": [{"name": "propertyName","value": "propertyValue" }]}' API endpoint Access token Instance name Instance id
  • 53. Enrolling a locker instance (via App)
  • 54. Pushing lock_code command to locker 1 curl -X POST https://localhost:9443/api/device-mgt/v1.0/devices/locker/operations -H 'authorization: Bearer <accessToken>' -d '{ "deviceIdentifiers": ["1234"], "operation": { "code": "lock_code", "type": "PROFILE", "status": "PENDING", "isEnabled": true, "payLoad": "1234,sumedha" } }'
  • 55. Pushing allow_open command to locker 1 curl -X POST https://localhost:9443/api/device-mgt/v1.0/devices/locker/operations -H 'authorization: Bearer <accessToken>' -d '{ "deviceIdentifiers": ["1234"], "operation": { "code": "allow_open", "type": "PROFILE", "status": "PENDING", "isEnabled": true, "payLoad": "true" } }'
  • 56. Publishing sensor data from locker - HTTP 1 curl -k -X POST https://localhost:8243/api/device-mgt/v1.0/device/agent/events/publish/locker/1234 -H 'authorization: Bearer <accessToken>' -H 'content-type: application/json' -d '{"temperature":0.0,"humidity":0.0,"metal":false,"occupancy":false,"open":false,"attempt":"string"}'
  • 57. Publishing sensor data from locker - MQTT 1 MQTT Topic :carbon.super/locker/1234/events Device Event Payload : {"temperature":0.0,"humidity":0.0,"metal":false,"occupancy":false,"open":false,"attempt":"string"
  • 58. Data stream processing for continuous in flow of close to real time data.
  • 60. Data Stream Processing ● Lock usage anomaly detection ○ object inside, door open ● Lock access detection ● Temperature / Humidity changes ● Identifying metal objects Event Receivers Execution Plan Event Publishers Event Sources Input Stream Input Stream Output Stream Output Stream
  • 61. Batch Processing ● Lock access statistics over a month Event Receivers Event Sources Input Stream Input Stream Event Store Spark Script Result Store Console: Spark Query Output Stream Event Publishers
  • 64.
  • 67. Built-in geo based functionality Every device is located somewhere.
  • 68. • Devices can be moving / stationary • Analytics on moving devices – Real time location updates – Geo Fencing – Geo Tagging – Geo Messaging – Alerting • Analytics on stationary devices – Location Map – Geo location based groups Location based services
  • 71. Support for Edge / Fog computing Privacy, latency, offline operations matters.
  • 72. • Why? – Safeguard privacy – Reduce latency – Minimize bandwidth usage – Avoid connectivity issues • A platform specific packaged offering of WSO2 Siddhi, e.g. – Edge Computing Engine for Android – Edge Computing Engine for Yocto Linux • WSO2 Siddhi – Lightweight, easy-to-use open source CEP engine – https://github.com/wso2/siddhi • Centralized distribution of rules and offline execution mode Edge / Fog Computing
  • 73. • Firebase Cloud Messaging (FCM) or local push notifications • Auto enroll device with mutual SSL • Integrate with Android system service apps (sign with vendor firmware signing key) – Reboot, firmware upgrade, silent app install/update/remove • Data containerization • Android for work support • Device ownership application via device owner APIs (for COPE) Android-Based Device Management
  • 74.