Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX

Preview:

Citation preview

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Tweet for Beer! Beer Tap Powered by Java Goes IoT, Cloud, and JavaFX Java end-to-end to pour some beer

Bruno Borges Principal Product Manager – Developer Advocate Oracle Corp. May 2015

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Speaker

• Bruno Borges

– Principal Product Manager – Developer Advocate

– Oracle Corp.

– @brunoborges – bruno.borges@oracle.com

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Safe Harbor Statement

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Internet of Things Changes Everything

• FDA (USA) and EU CE approved ingestible and wearable sensors.

• Delivers precise information about medication ingestion, dose timing and associated physiologic response of patients, including heart rate, activity, rest, and skin temperature.

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Connecting Devices to the Internet

Connected Devices Big Data Responsiveness

Analysis for decision making and

automation of information flows

Proprietary connectors No or limited local

intelligence

Decisions in the backend

Data to Fuel the Services

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

The Internet of Things

Intelligent Devices Big and Fast Data Responsiveness

High Frequency Analysis for instant evolution, decision

making and automation of

information flows

Always available Local store and

Local decision making

True customer service differentiation enabled

by easy access to applications, processes

and services

Data to Fuel the Services

Value From Services

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Driving New IoT Services

• Better Customer Experience

• New Business Models

• Operational Improvements

• Increased Efficiency

Grow Revenue

Reduce Cost

• HVAC • Lighting • Safety and Security • Resource Utilization • Maintenance

• Preventative Maintenance • Remote Diagnostics • Safety Systems • V2X and C2X • Fleet and Use Management

Shareholder Value

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Today: Slow and Painful

Incident Scheduling Diagnostic Scheduling Parts Mgt Customer

Care Repair Billing

Loyalty Program

Concerns: Cost, Wasted time, Scheduling, Loss of Use

Concerns: Customer Satisfaction, Cost, Resource Availability, Scheduling

Browser

Supply Chain

Ordering

Scheduling

CRM

Middleware Applications

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Tomorrow: Improving Customer Experience

Incident

Scheduling

Diagnostic

Parts Mgt Repair Billing

Customer Care - Loyalty

IoT

Supply Chain

Ordering

Scheduling

CRM

Middleware Enterprise Device

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Increasing Intelligence

IoT

Supply Chain

Ordering

Scheduling

CRM

Middleware Enterprise Device

Incident

Customer Care - Loyalty

Scheduling

Diagnostic

Parts Mgt Repair Billing

Analytics • Additional up-sell and

cross-sell opportunities

• Customer for a lifetime versus customer for a transaction

• Multiple function-based processes versus lifetime relationships across functions

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Unlocking the Value of IoT Data

• Volume, Velocity and Variety

Time

Bu

sin

ess

Val

ue

Engine STOP

HOT Warning – maintenance required

WARM

Piece of trim gone: note for future development

COLD

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Tweet for Beer Project

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

+ =

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

#FUUUUU

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Watch demo video on YouTube https://youtu.be/UbdXGNEHieo

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Token Generation – Simple Random!

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Reading Twitter Stream with Apache Camel

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Reading Twitter Stream with Apache Camel

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Reading Twitter Stream with Apache Camel

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

REST Service in the Oracle Java Cloud Service @Path("turnon“) public class TurnonResource {

@Context ServletContext servletContext;

@PUT @Consumes("text/plain") @Produces("text/plain")

public String putText(String cmd) {

servletContext.setAttribute(“TURNON", cmd); return "Received: " + cmd;

} @GET @Produces("text/plain")

public String getText() {

String cmd = (String) servletContext.getAttribute(“TURNON"); servletContext.removeAttribute(“TURNON"); return cmd;

} }

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Oracle Java Cloud Service cloud.oracle.com DEMO Dashboard

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Company Confidential – Shared

42

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Company Confidential – Shared

43

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Oracle Java Cloud Service

• Popular IDEs supported

• Plugins for Ant and Maven

• Oracle Java Cloud Service SDK available

• Deploy to the Cloud

• Visualize logs

• Visualize metrics

Integrated IDEs

REST

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Turning On the Beer Tap with GPIO

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Dumb loop connects to the Cloud

Don’t do this at home (or work)

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Dumb loop connects to the Cloud

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Java EE 7 – JAX-RS 2.0 Client API

public String readFromCloud() {

Client client = ClientBuilder.newClient();

WebTarget target = client.target(URL_CLOUD_REST_SERVICE);

String cmd = target.request().get(String.class);

return “true”.equals(cmd) ? “1” : “0”;

}

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Java GPIO on Raspberry Pi with pi4j

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Device Cloud

IoT Cloud Service

Enterprise Orchestration

The Building Blocks for IoT

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Oracle Internet of Things Cloud Service

Endpoint Management

Message delivery & Event Cache

Stream Processing

Device Software Management

Event and Metadata Store

Device with IoT Cloud Service

Gateway software

Mobile app using IoT Cloud Service SDK

Device integrated with IoT Cloud Service SDK

2G/3G/LTE Network

WWAN

Oracle Integration Cloud

Service

Oracle Business Intelligence

Cloud Service

Firewall

IoT Cloud Service Gateway & SDKs

Other Devices

Other Cloud Services

IoT Cloud Service

Event Dispatcher Database-as-a-

Service

Custom Application

Charging and Billing

CRM / OM / SFA

ERP • Financials • SCM • HCM

Industry Vertical

Applications

Field Service

Enterprise Cloud or On Premise