Giter VIP home page Giter VIP logo

azure / iot-workshop-asset-tracking Goto Github PK

View Code? Open in Web Editor NEW
49.0 11.0 19.0 9.84 MB

End-to-end IoT workshop focusing on a real-time asset tracking scenario.

Home Page: https://aka.ms/iot-workshop-asset-tracking

License: Creative Commons Attribution 4.0 International

CSS 19.77% JavaScript 73.73% HTML 6.06% SCSS 0.45%
iot iot-hub azure-iot azure-stream-analytics azure-maps time-series-insights mxchip

iot-workshop-asset-tracking's Introduction

Azure IoT Workshop: Real-time asset tracking for international company Contoso Art Shipping

Contoso Intro image

Introduction and Scenario

Contoso Art Shipping Inc. is a company specialized in shipping artwork. They are losing money as their customers are generally dissatisfied with their service – more and more parcel are getting damaged due to adverse weather conditions and improper handling, which causes a tremendous increase in insurance claims, as well as associated personnel costs to follow up on said claims.

Contoso already have an ERP in place and they have built a mobile application that allows to show “basic” tracking information, essentially the parcel pick-up date and estimated delivery date.

They realize they need to be more precise on the location of the parcels, conditions during travel, and their overall ability to detect that goods are getting tampered during transport – they ship ~50,000 shipments a month with the issues mentioned above costing them an estimated $2 per shipment on average, i.e over $1M every year.

Contoso Art Shipping's requirements in a nutshell

  • Track in real-time the physical location and condition of their parcels
  • Efficiently store this data so that it can be accessed and queried
  • Get alerts when abnormal conditions are detected…
  • …and visualize them on a map
  • Integrate with their existing business applications
  • Scale from a very small deployment to something much bigger

Outline

In this workshop, you will be building Contoso Art Shipping's IoT solution.

  1. Connecting an asset tracking device to Azure IoT
  2. Setting up a data pipeline
  3. Anomaly detection
  4. Map visualization - Where are my parcels?

The last part will showcase how to feed your insights (we'll learn how to trigger events on sudden temperature variations on our asset tracking devices) into Contoso's ERP and mobile application. It will be shown through a demo, as time constraints don't allow for this part to be included in this one-day workshop.

Supporting slide deck & video walkthrough

You can follow along using the following slide deck.

The video recording below walks you through the various steps of the workshop in about 3 hours:

<iframe src="https://www.youtube.com/embed/3A6Lhakfyes" width="560" height="315" frameborder="0" allowfullscreen> </iframe>

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Legal Notices

Microsoft and any contributors grant you a license to the Microsoft documentation and other content in this repository under the Creative Commons Attribution 4.0 International Public License, see the LICENSE file, and grant you a license to any code in the repository under the MIT License, see the LICENSE-CODE file.

Microsoft, Windows, Microsoft Azure and/or other Microsoft products and services referenced in the documentation may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries. The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks. Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653.

Privacy information can be found at https://privacy.microsoft.com/en-us/

Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise.

iot-workshop-asset-tracking's People

Contributors

dependabot[bot] avatar kartben avatar microsoftopensource avatar olivierbloch avatar pjgpetecodes avatar salmanmkc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iot-workshop-asset-tracking's Issues

IoT Hub free tier might not be enough for full-day workshop

IoT Hub free tier is limited to 8000 messages per day. With the MXChip sending telemetry every 5 seconds, in waves of several messages (one for temperature, one for humidity, etc.) we can hit the limit pretty fast. Look into improving firmware (group messages), or ask people to provision S1 -- former solution being better than later :)

Failed to get interface model definition

When I go to IoT Plug and Play components in IoT Explorer, I get the following error:

Failed to get interface model definition urn:contosoartshipping:asset_tracker:1 from any of the sources configured

Time Series Data not visualized during step004

Description
When finalizing the map visualization and running the test application no data is being displayed. The reason for this is that the current implementation is unable to find the correct Time Series instance.
This is probably related due to the fact that in the current implementation no specific AAD is specified.

404 Resource Not Found

Fix

Change the following implementation inside webapp/auth.js

authContext = new AuthenticationContext(authContextProperties);

to

authContext = new AuthenticationContext({
        authContextProperties, 
        cacheLocation: 'localStorage',
        tenant: '<your tenant ID>',
        clientId: '120d688d-1518-4cf7-bd38-182f158850b6'
    });

This implementation adds the specific tenantID and the clientID to the AuthenticationContext.
After this implementation make sure to a proper logout and log in as I noticed that in some cases the AuthenticationContext is cached, might be browser-related!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.