All Projects → keesschollaart81 → ServerlessDeviceOfflineDetection

keesschollaart81 / ServerlessDeviceOfflineDetection

Licence: GPL-3.0 License
How to detect device status with Azure Durable Entities

Programming Languages

C#
18002 projects
HTML
75241 projects

Projects that are alternatives of or similar to ServerlessDeviceOfflineDetection

Vscode Azurefunctions
Azure Functions extension for VS Code
Stars: ✭ 191 (+809.52%)
Mutual labels:  azure, functions
Serverlesslibrary
Source code for the Azure Serverless Community Library
Stars: ✭ 119 (+466.67%)
Mutual labels:  azure, functions
effepi
Fun functional programming with pipelinable functions
Stars: ✭ 13 (-38.1%)
Mutual labels:  functions
serverless-recipes
Compendium of Serverless samples with Azure Cosmos DB
Stars: ✭ 30 (+42.86%)
Mutual labels:  azure
ctxutil
utils for Go context
Stars: ✭ 18 (-14.29%)
Mutual labels:  functions
gcf-packs
Library packs for google cloud functions
Stars: ✭ 48 (+128.57%)
Mutual labels:  functions
learning R
List of resources for learning R
Stars: ✭ 32 (+52.38%)
Mutual labels:  functions
openfaas-rstats-templates
OpenFaaS templates for R
Stars: ✭ 17 (-19.05%)
Mutual labels:  functions
log2oms
A super tiny agent (binary 5MB, container 12MB) that pushs app logs to Azure Log Analytics (OMS)
Stars: ✭ 17 (-19.05%)
Mutual labels:  azure
Data-Science-Tutorials
Python Tutorials for Data Science
Stars: ✭ 104 (+395.24%)
Mutual labels:  functions
azure
VM-Series ARM Templates for Microsoft Azure
Stars: ✭ 87 (+314.29%)
Mutual labels:  azure
fnmate
A function definition generator.
Stars: ✭ 74 (+252.38%)
Mutual labels:  functions
messaging
Conveniently issue messages, warnings, and errors
Stars: ✭ 12 (-42.86%)
Mutual labels:  functions
returnof
TypeScript typeof function return helper
Stars: ✭ 16 (-23.81%)
Mutual labels:  functions
rudash
Rudash - Lodash for Ruby Apps
Stars: ✭ 27 (+28.57%)
Mutual labels:  functions
AnyStatus
A remote control for your CI/CD pipelines and more
Stars: ✭ 38 (+80.95%)
Mutual labels:  azure
fqn-check
Checks source trees for not fully qualified function calls.
Stars: ✭ 15 (-28.57%)
Mutual labels:  functions
openwhisk-runtime-dotnet
Apache OpenWhisk Runtime .Net supports Apache OpenWhisk functions written in .Net languages
Stars: ✭ 23 (+9.52%)
Mutual labels:  functions
AzureFunctions-Workshop
Multi-language Azure Functions Workshop
Stars: ✭ 20 (-4.76%)
Mutual labels:  functions
vbl
A collection of useful Bash modules to simplify everyday programming
Stars: ✭ 15 (-28.57%)
Mutual labels:  functions

Device Offline Detection with Durable Entities

This is the companion repository for this blogpost:

http://case.schollaart.net/2019/10/31/device-offline-detection-with-durable-entities.html

Run it yourself

You have 2 options:

  1. Create infrastructure with ARM Template and then 'Right Click Deploy' the Function App to it
  2. Fork the repository, use the Azure Pipelines YAML to do all the work

Deployment option 1

  1. Click the Button below to create the infrastructure in your Azure Subscription

    Deploy to Azure

  2. Clone this repository to your machine

  3. Right Click Deploy via an IDE with Azure Functions Tooling installed a. VS Code with read more (screenshot) b. Visual Studio 2019 read more (screenshot)

  4. Continue reading 'Running it'

Deployment option 2 (via Azure Pipelines)

  • Fork the repository and clone it to your machine
  • Go to (or create) an Azure DevOps project where you want the pipline to live
  • Make sure you have a Service Connection to an Azure Subscription read here how to create one
    • Remember the exact name of this Service Connection
  • Create the pipeline in Azure DevOps based on azure-pipelines.yaml. Read how here how to 'Get your first run'
    • Step by Step screenshots 1, 2, 3, 4, 5
    • Update the variables in the azure-pipelines.yaml, there will be a screen to do that during the Azure DevOps pipeline creation wizard (screenshot 5)
      • azureSubscription: The name of the Service Connection
      • functionAppName: the name of your test project, make it lowercase no special characters and it has to be globally unique
      • resourceGroupName: the resource group to deploy to
    • Make sure the build and deploy were succesfull (screenshot)

Running it

  • Go to https://{functionAppName}.azurewebsites.net/api/dashboard, here you should see a Header called 'Devices'
  • Update the ConnectionString to the Storage Queue in the TestDevice project
    • Go to the Azure Portal and go to the {functionAppName}st Storage Account resource (dont mistake it for the storage account ending op dst)
    • Click on 'Access Keys' and copy the Connection String
    • Open this cloned repository/solution on your machine with VS Code or Visual Studio and go to the TestDevice project
    • Edit the appsettings.json and update the StorageConnectionString
  • Run the TestDevice console app [src/TestDevice] (dotnet run) and observe the status in the dashboard, for example, start with 200 devices and then change it to 100
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].