smart meeting room availability dashboard...•iot is a business revolution enabled by ......

50
Partner: Veranstalter: SharePoint konferenz Smart Meeting Room Availability Dashboard Stephan Bisser SOLVION

Upload: others

Post on 22-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Partner: Veranstalter:

SharePointkonferenz

Smart Meeting Room Availability Dashboard

Stephan Bisser

SOLVION

Page 2: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Stephan• Technical Lead @SOLVION (O365 & Azure)

• Microsoft AI MVP

• P-TSP @Microsoft for Azure

• AI (Cognitive Services & Bots)

• Soccer

@cloudguy_pro

AskCloudgy

www.cloudguy.pro

[email protected]

Graz, Austria

Page 3: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Agenda

1 Business Problem 2 Azure 101

3 Solution Architecture 4 Demo

Page 4: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

What is the actual problem?

Page 5: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

What is the actual problem?

• Meeting rooms are booked but not used

• Opening 5+ room calendars in Outlook can be a pain

• Many meeting rooms on one floor → manual try and error not acceptable

• Ad hoc meetings get more important

Page 6: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

What is the actual problem?

Page 7: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

How to solve that problem?

Page 8: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Let‘s build a smart assistant (Bot)

Page 9: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

2000s: Mobile

• Social

• User download apps from App Stores

The future: Conversations

• Natural language between people and technology

• Conversational canvas

• Bots and agents

1990s: Internet

• Search

• User “visits” websites

1980s: PC

• Desktop

The evolution of computers and IT

Page 10: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

The solution‘s backend design

Page 11: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used
Page 12: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Microsoft’s Perspective on IoT• IoT is a business revolution enabled by

a technology revolution

• IoT enables a “digital feedback loop”

• This digital feedback loop connects

• Businesses to products to customers, enabling better products and customer insights

• Businesses to assets, enabling transformational optimization

BusinessesProducts

& Assets

Digital Feedback Loop

Page 13: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

thysenkrupp Example• Knowing if elevators are not operational

before customers do

• Knowing the maintenance needs, saving 50% of servicing

• Knowing the right part to bring the first time

• 4x reduction in the time spent servicing an elevator using HoloLens

BusinessesProducts

& Assets

Digital Feedback Loop

Page 14: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Microsoft’s Perspective on IoT

IoT is a massive opportunity for developers

Page 15: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

IoT in the Cloud and on the Edge

IoT in the Cloud Remote monitoring and management

Merging remote data from multiple IoT devices

Infinite compute and storage to train machine learning and other advanced AI tools

IoT on the EdgeLow latency tight control loops require near real-time response

Pre-process data on prem – E.g. video streams

Intelligence at the edge – ML, AI, Analytics

Offline operations (short and long term)

Protocol translation & data normalization

Privacy of data and protection of IP

Consistency

Page 16: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

A Simple View of an IoT Solution

ActionsThings Insights

Page 17: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

A More Realistic View…

ActionsThings Insights

… and why IoT needs simplifying

Updating devicesProvisioning

devices

Device updates

Data storage

Cold path analytics

Warm path analytics

Hot path analytics

On device analytics

Securing data

Business process integration

Solution scale

High availability

Disaster recovery

Transport protocols

Cost managementOperations monitoring

Device lifecycle

Data ownership

Data visualization

Cloud-to-devicecommands

< ---- End-to-End Security ---- >

Industry and government compliance

Enterprise integration

Device recovery

Internationalization

HW certification Manufacturing scale

Deployment

Drivers

Device commercialization

Page 18: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure IoT Hub

Bi-directional

communication

Enterprise scale

& integration

End-to-end

security

Millions of Devices

Multi-language, open source SDKs

HTTPS/AMQPS/MQTTS

Send Telemetry

Receive Commands

Device Management

Device Twins

Queries & Jobs

Billions of messages

Scale up and down

Declarative Message Routes

File Upload

WebSockets & Multiplexing

Azure Monitor

Azure Resource Health

Configuration Management

Per Device Certificates

Per Device Enable/Disable

TLS Security

X.509 Support

IP Whitelisting/Blacklisting

Shared Access Polices

Firmware/Software Updates

Page 19: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure

IoT Hub

Power plant

Elevators

Smart meters

Buildings

Medical devices

Device twin* Device twin

Query

Desired

Reported

Tags

Methods

Desired

Reported

Methods

Jobs

• Used to orchestrate software/firmware/configuration changes• Enables customers to build custom support for any OS

Azure IoT Hub – Device Management

• Query across millions of device twins, schedule jobs to update them* JSON documents that store device state information including metadata, configurations, and conditions. Azure IoT Hub maintains a device twin for each device that you connect to IoT Hub.

Page 20: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Iot Hub

Page 21: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

PaaSIaaSOn-Premises

The evolution of application platforms

Serverless

Page 22: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

What is serverless?

$

Page 24: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Combine IoT + AI + Serverless • IoT is a lot about processing events

• IoT is also about producing and computing events locally

• Machine Learning is a lot about preparing data

• Intelligence can be added to your app using several services easily

IoT Hub

Stream Analytics

Event Grid

Cognitive Services IoT

Page 25: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Function AppsEvent driven execution off of HTTP, Queues, Databases, Timer/Chron

No brainer for simple jobs and workers

Serverless – never create or manage VMs or clusters, auto-scale

Pay only for resources used during execution (CPU and Memory)

Page 26: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Every 15 minutes Clean tableFind and clean invalid data

Applications

Page 27: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

File added to

Blob Storage

Transform CSV to data rows

CSV

Power BI

Chart graphic

Applications

Page 28: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Millions of devices feed

into Stream Analytics

Store data in

SQL Online

Transform to structured data

Applications

Page 29: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

? ...

Cortana Analytics answers questionsMessage sent

to Chatbot

Chatbot sends

response

Applications

Page 30: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Functions

Page 31: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

1) Trigger

7) Develop Locally

3) Develop 4) Execute

6) Monitor and Improve

2) Input Binding 5) Output Binding

Web Hooks

Azure Services Azure Services

App ServicesHosting Plans

Azure Services

Azure Functions Development Lifecycle

Page 32: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Functions App

Page 33: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Storage

Managed, Scalable and secure data storage

Blobs – object and file storage via an HTTPS URL

Tables – noSQL key/value data

Queues – messages and work items

Files – mountable file shares

Automatically replicated and backed up

Optional geo-replication

x-archive, cold storage, soft delete, snapshot and restore

Page 34: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Storage Table

Page 35: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

The solution‘s frontend design

Page 36: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used
Page 37: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Bots 101“a computer program designed to have a

conversation with a human being, especially over the internet” *

* https://dictionary.cambridge.org/dictionary/english/chatbot

Page 38: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Bots 101

• It’s one thing: it’s an app that performs an automated task

• It solves the user’s needs in the quickest/easiest way compared to any other option... like an app, or a website

• What makes a bot great:

• It is not how much AI it has

• It is not how much natural language it offers

• It is not whether it uses voice or not

Page 40: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Microsoft Bot Framework

Page 41: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Azure Bot Service1 intents.matches('GetRoom',function(session, args){

2 var statusEntity = builder.EntityRecognizer.findEntity(args.entities, 'Status');

3 var locationEntity = builder.EntityRecognizer.findEntity(args.entities, 'Location');

4 session.sendTyping();

5 session.send("Please wait, I'm geeting the room availability...");

6 var tableService = azure.createTableService(„<ConnectionString>");

7 var query = new azure.TableQuery().top(10);

8 tableService.queryEntities('MeetingRoomStatus', query, null, function(error, result, response) {

9 if (!error) {

10 var objNumber = Object.keys(result.entries).length;

11 var numberIndicator = 0;

12 var outStringRooms = "";

13 var status = statusEntity['entity'];

14 if(objNumber > 1){

15 result.entries.forEach(function(room) {

16 var roomName = room.Name["_"];

17 var roomStatus = capitalize(status);

18 if (room.Status["_"] == roomStatus){

19 outStringRooms += '\n\n';

20 outStringRooms += roomName;

21 numberIndicator = 2;

22 }

23 });

24 sendStatusOutput(session, outStringRooms, numberIndicator);

25 });

26 });

Page 42: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used
Page 43: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Language Understanding

[ $Operation ] [ $Status ] [ $ObjectType ] [ $Location ]

www.luis.ai

Intent = GetRoom

„Show me all free rooms in 1st floor “„Show me all free rooms in 1st floor “

Page 44: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

LUIS

Page 45: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used
Page 46: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

DEMO

Page 47: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Backend

Page 48: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Frontend

Page 49: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Ich freue mich auf Ihr Feedback!

SharePointkonferenz

Partner: Veranstalter:

@cloudguy_pro

AskCloudgy

www.cloudguy.pro

[email protected]

Page 50: Smart Meeting Room Availability Dashboard...•IoT is a business revolution enabled by ... Serverless –never create or manage VMs or clusters, auto-scale Pay only for resources used

Vielen Dank!

SharePointkonferenz

Partner: Veranstalter: