+ All Categories
Home > Technology > Codemotion Milano 2014 - IBM Internet of Things - Giulio Santoli

Codemotion Milano 2014 - IBM Internet of Things - Giulio Santoli

Date post: 14-Apr-2017
Category:
Upload: gjuljo
View: 756 times
Download: 2 times
Share this document with a friend
24
MILAN november 28 th /29 th , 2014 [email protected] Giulio Santoli IBM Solutions for the Internet of Things: IoT Foundation, MQTT Message Sight and Rational Rhapsody
Transcript

MILAN november 28th/29th, 2014

[email protected]

Giulio Santoli

IBM Solutions for the Internet of Things: IoT Foundation, MQTT

Message Sight and Rational Rhapsody

MILAN november 28th/29th, 2014 – Giulio Santoli

Internet of Things ison the crest of a wave…

MILAN november 28th/29th, 2014 – Giulio Santoli

Hype cycle for emerging technologies 2014Internet of Things

is here!

MILAN november 28th/29th, 2014 – Giulio Santoli

The number is expected to

increase

dramatically within the next decade,

with estimates

ranging from 30 billion devices

9 billion devices around the world are currently connected

to the Internet, including computers and smartphones

The Internet of Things has the

potential to create economic impact

of $8.9 trillion

The World is changing… by 2020

Source: IDC, December 2013

MILAN november 28th/29th, 2014 – Giulio Santoli

Everything is connected…

My tells my that the is over

My tells my to open the garage and start my

My tells my that an intruder is entred

A tells my to tell my that a arrived

MILAN november 28th/29th, 2014 – Giulio Santoli

MQTT, a messaging protocol for IoT

Open (standard, 40+ client implementations)

Lightweight (minimal overhead, efficient format, tiny clients)

Reliable (QoS for reliability in unrealiable neworks)

Simple (43-pages specification, connect/publish/subscribe)

Late 90s Aug 2010 Nov 2011 Sep 2014

Invented by and Published by Eclipse M2m Standard

(v. 3.1.1)

MILAN november 28th/29th, 2014 – Giulio Santoli

MQTT brokers

Appliance Cloud Open Source

• IBM Message Sight • IBM IoT Foundation• HiveMQ

• Eurotech EDC• Litmus Loop

• ...

• Mosquitto (C)

• Mosca (NodeJS)

• Moquette (Java)• RSMB (C)

• ...Up & running in <30 minutes1 rack = 273M msg/sec21M concurrent connectionsDMZ-ready, FIPS 140-2 deny-based access control

MILAN november 28th/29th, 2014 – Giulio Santoli

https://developer.ibm.com/messaging/messagesight

MILAN november 28th/29th, 2014 – Giulio Santoli

http://m2m.demos.ibm.com/collaboration.html#starfighter

https://hub.jazz.net/project/spirit/MQTT%20Starfighter%20Server/overview

MILAN november 28th/29th, 2014 – Giulio Santoli

http://m2m.demos.ibm.com/connectedCar.html#connectedCar

http://tiny.cc/ws0zpx

MILAN november 28th/29th, 2014 – Giulio Santoli

IBM BluemixIBM IoT Foundation

+ =

Simple, like 2+2

MILAN november 28th/29th, 2014 – Giulio Santoli

https://quickstart.internetofthings.ibmcloud.com

MILAN november 28th/29th, 2014 – Giulio Santoli

https://quickstart.internetofthings.ibmcloud.com

https://github.com/ibm-messaging/iot-arduino

MILAN november 28th/29th, 2014 – Giulio Santoli

Devices

IBM IoT Foundation

Apps

PUBLISH

RECEIVE

events

commands

PUBLISHcommands

REGISTERdevices

GENERATEAPI keys

HTTP HTTP

RECEIVEevents

(and services)

MQTT MQTT

MILAN november 28th/29th, 2014 – Giulio Santoli

https://developer.ibm.com/iot/recipes/improvise-application-development

username � <key>

password � <token>

clientid � a:<orgid>:<app-id>

publishes � iot-2/type/<type-id>/id/<device-id>/cmd/<cmd-id>/fmt/<format-id>

subscribes � iot-2/type/<type-id>/id/<device-id>/evt/<event-id>/fmt/<format-id>

Apps & Serviceskey: a-myorg-hketyuionf

token: AB3ur51jL+3awe0kl

Example

tcp://<org-id>.messaging.internetofthings.ibmcloud.com:1883

ssl://<org-id>.messaging.internetofthings.ibmcloud.com:8883

MQTT Host

MILAN november 28th/29th, 2014 – Giulio Santoli

Devices

https://developer.ibm.com/iot/recipes/improvise-registered-devices

https://developer.ibm.com/iot/recipes/improvise-commands

username � use-token-auth

password � <auth-token>

clientid � d:<orgid>:<type-id>:<divice-id>

publishes � iot-2/evt/<event-id>/fmt/<format>

subscribes � iot-2/cmd/<cmd-type>/fmt/<format-id>

payload � {“d”: {“name1”: “value1”, “name2”: intvalue } }

org=myorg

type=mydevicetype

id=mydeviceid

auth-method=token

auth-token=Gh3e(EA998fart4

Example

MILAN november 28th/29th, 2014 – Giulio Santoli

View an organization (GET):https://internetofthings.ibmcloud.com/api/v0001/organizations/<org-id>

List all devices (GET) / Registr a device (POST):https://internetofthings.ibmcloud.com/api/v0001/organizations/<org-id>/devices

Historical data for a device (GET):https://internetofthings.ibmcloud.com/api/v0001/historian/<org-id>/<type-id>/<id>?filter

REST API Examples

https://developer.ibm.com/iot/recipes/api-documentation

curl --user “<key>:<token>" https://internetofthings.ibmcloud.com/api/v0001/organizations/<org-id>/devices

Example: get all devices

MILAN november 28th/29th, 2014 – Giulio Santoli

https://github.com/ibm-messaging/iot-visualization

Collect and Visualize data

MILAN november 28th/29th, 2014 – Giulio Santoli

UML is dead, long live to UML

IBM Rational Developer for Model-Driven Development in C/C++, Java and Ada

MILAN november 28th/29th, 2014 – Giulio Santoli

http://www.ibm.com/developerworks/downloads/r/rhapsodydeveloper

MILAN november 28th/29th, 2014 – Giulio Santoli

Rhapsody & Rasbperry Pi

MILAN november 28th/29th, 2014 – Giulio Santoli

Create your Internet of Thingsapplication with IBM Bluemix!

MILAN november 28th/29th, 2014 – Giulio Santoli

But it’s not over…..…more sessions yet to come

TODAYBluemix sessionat 14:40Cloud Track Room BL.27.0.5

TOMORROWMobile sessionat 14:10Mobile Track Room BL.27.0.5

TOMORROWKeynote IBMat 10:10Room BL.27.0.1

MILAN november 28th/29th, 2014 – Giulio Santoli

© 2014 IBM Corporation

IBM Security Systems

24

www.ibm.com/security

© Copyright IBM Corporation 2014. All rights reserved. The information contained in these materials is provided for informational purposes

only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use

of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any

warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement

governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in

all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole

discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any

way. IBM, the IBM logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United

States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.

Statement of Good Security Practices: IT system security involves protecting systems and information through prevention, detection and response

to improper access from within and outside your enterprise. Improper access can result in information being altered, destroyed or misappropriated

or can result in damage to or misuse of your systems, including to attack others. No IT system or product should be considered completely secure

and no single product or security measure can be completely effective in preventing improper access. IBM systems and products are designed to

be part of a comprehensive security approach, which will necessarily involve additional operational procedures, and may require other systems,

products or services to be most effective. IBM DOES NOT WARRANT THAT SYSTEMS AND PRODUCTS ARE IMMUNE FROM THE

MALICIOUS OR ILLEGAL CONDUCT OF ANY PARTY.

ibm.biz/bluemixeurope

© Copyright IBM Corporation 2014. All rights reserved. The information contained in these materials is provided for informational purposes

only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use

of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any

warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement

governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in

all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole

discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any

way. IBM, the IBM logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United

States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.

Statement of Good Security Practices: IT system security involves protecting systems and information through prevention, detection and response

to improper access from within and outside your enterprise. Improper access can result in information being altered, destroyed or misappropriated

or can result in damage to or misuse of your systems, including to attack others. No IT system or product should be considered completely secure

and no single product or security measure can be completely effective in preventing improper access. IBM systems and products are designed to

be part of a comprehensive security approach, which will necessarily involve additional operational procedures, and may require other systems,

products or services to be most effective. IBM DOES NOT WARRANT THAT SYSTEMS AND PRODUCTS ARE IMMUNE FROM THE

MALICIOUS OR ILLEGAL CONDUCT OF ANY PARTY.


Recommended