The IOT Proof of Concept project implements a small-scale Internet of Things (IoT) platform to demonstrate the feasibility and value of using a centralized system to manage the collection, storage, and sharing of sensor data. The project will pilot the use of Azure Cloud services as the IoT platform to evaluate the vendor's capabilities, better understand what functionality is required, learn what practices to apply, and gain insights on how end-to-end business solutions can be implemented in the Ministry using IoT Cloud services. The application is being developed as an open source solution.
- .Net 5 or 6 SDK
- Microsoft Azure subscription
- NA
- camera: The iot edge solution to communicate MoTI ONVIF cameras
- weather: The iot edge solution to communicate MoTI weather sensors
- MotiCameraApp: The client web applicaion for displaying camera images/videos
- iotFunctions: Azure function project to resize/watermark images and provide APIs for external consumers
This application is meant to be deployed to Microsoft Azure platform. The full application will require sufficient permission to work with Azure resources.
DevOps
CI/CD pipelines are not set up currently.
camera
- Azure iot edge module that runs on a virtual machine that used as an iot edge device to communicate with ONVIF cameras and Azure iot central.
weather
- Azure iot edge module that runs on a virtual machine that used as an iot edge device to communicate with MoTI weather sensors and Azure iot central.
MotiCameraApp
This application is a basic .NET core web application to display images/videos captured from the MoTI ONVIF cameras.
iotFunctions
-
This project is based on .NET 6, so be sure to have the right .NET version during the development.
-
Use the following urls for testing the API endpoints provided by Azure functions Get weather telemetry
Get camera telemetry
Get image
Get property
Please report any issues.
Pull requests are always welcome.
If you would like to contribute, please see our contributing guidelines.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Copyright 2017 Province of British Columbia
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
This repository is maintained by BC Ministry of Transportation. Click here for a complete list of our repositories on GitHub.