All Projects → Azure → Azure Iot Sdk Python

Azure / Azure Iot Sdk Python

Licence: mit
A Python SDK for connecting devices to Microsoft Azure IoT services

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Azure Iot Sdk Python

Azure Iot Sdk C
A C99 SDK for connecting devices to Microsoft Azure IoT services
Stars: ✭ 412 (+57.85%)
Mutual labels:  azure, microsoft, sdk
Mmlspark
Simple and Distributed Machine Learning
Stars: ✭ 2,899 (+1010.73%)
Mutual labels:  azure, microsoft
Azure Sdk For Net
This repository is for active development of the Azure SDK for .NET. For consumers of the SDK we recommend visiting our public developer docs at https://docs.microsoft.com/dotnet/azure/ or our versioned developer docs at https://azure.github.io/azure-sdk-for-net.
Stars: ✭ 3,079 (+1079.69%)
Mutual labels:  azure, microsoft
Azure Devops Python Api
Azure DevOps Python API
Stars: ✭ 257 (-1.53%)
Mutual labels:  azure, microsoft
ipranges
🔨 List all IP ranges from: Google (Cloud & GoogleBot), Bing (Bingbot), Amazon (AWS), Microsoft (Azure), Oracle (Cloud) and DigitalOcean with daily updates.
Stars: ✭ 38 (-85.44%)
Mutual labels:  microsoft, azure
Applicationinsights Java
Application Insights for Java
Stars: ✭ 172 (-34.1%)
Mutual labels:  azure, sdk
Applicationinsights Node.js
Microsoft Application Insights SDK for Node.js
Stars: ✭ 229 (-12.26%)
Mutual labels:  azure, sdk
Applicationinsights Dotnet Server
Microsoft Application Insights for .NET Web Applications
Stars: ✭ 130 (-50.19%)
Mutual labels:  azure, sdk
Api Management Developer Portal
Azure API Management developer portal.
Stars: ✭ 229 (-12.26%)
Mutual labels:  azure, microsoft
Azure Event Hubs
☁️ Cloud-scale telemetry ingestion from any stream of data with Azure Event Hubs
Stars: ✭ 233 (-10.73%)
Mutual labels:  azure, microsoft
Ccodashboard
Welcome to the Continuous Cloud Optimization Power BI Dashboard GitHub Project. In this repository you will find all the guidance and files needed to deploy the Dashboard in your environment to take benefit of a single pane of glass to get insights about your Azure resources and services.
Stars: ✭ 256 (-1.92%)
Mutual labels:  azure, microsoft
Azure Sdk For Python
This repository is for active development of the Azure SDK for Python. For consumers of the SDK we recommend visiting our public developer docs at https://docs.microsoft.com/python/azure/ or our versioned developer docs at https://azure.github.io/azure-sdk-for-python.
Stars: ✭ 2,321 (+789.27%)
Mutual labels:  azure, microsoft
Azure Event Hubs Spark
Enabling Continuous Data Processing with Apache Spark and Azure Event Hubs
Stars: ✭ 140 (-46.36%)
Mutual labels:  azure, microsoft
Aks Secure Baseline
This is the Azure Kubernetes Service (AKS) Baseline Cluster reference implementation as produced by the Microsoft Azure Architecture Center.
Stars: ✭ 188 (-27.97%)
Mutual labels:  azure, microsoft
Oauth2 Azure
Azure AD provider for the OAuth 2.0 Client.
Stars: ✭ 140 (-46.36%)
Mutual labels:  azure, microsoft
Applicationinsights Home
Application Insights main repository for documentation of overall SDK offerings for all platforms.
Stars: ✭ 221 (-15.33%)
Mutual labels:  azure, sdk
iot-curriculum
Hands on labs and content for students and educators to learn and teach the Internet of Things at schools, universities, coding clubs, community colleges and bootcamps
Stars: ✭ 110 (-57.85%)
Mutual labels:  microsoft, azure
Azure Event Hubs For Kafka
Azure Event Hubs for Apache Kafka Ecosystems
Stars: ✭ 124 (-52.49%)
Mutual labels:  azure, microsoft
Spark
.NET for Apache® Spark™ makes Apache Spark™ easily accessible to .NET developers.
Stars: ✭ 1,721 (+559.39%)
Mutual labels:  azure, microsoft
Azure Powershell
Microsoft Azure PowerShell
Stars: ✭ 2,873 (+1000.77%)
Mutual labels:  azure, microsoft

V2 - We are now GA!

Build Status

This repository contains code for the Azure IoT SDKs for Python. This enables python developers to easily create IoT device solutions that seamlessly connect to the Azure IoT Hub ecosystem.

If you're looking for the v1.x.x client library, it is now preserved in the v1-deprecated branch.

Azure IoT SDK for Python

This repository contains the following libraries:

Installing the libraries

Pip installs are provided for all of the SDK libraries in this repo:

Device libraries

IoTHub library

Using the libraries

Want to start off on the right foot? Be sure to learn about common pitfalls of using this Python SDK before starting a project.

You can also view samples in each library:

Features

✔️ feature available ✖️ feature planned but not yet supported ➖ no support planned*

*Features that are not planned may be prioritized in a future release, but are not currently planned

This SDK only supports the MQTT protocol.

Device Client Library (azure-iot-device)

IoTHub Device Client

Features Status Description
Authentication ✔️ Connect your device to IoT Hub securely with supported authentication, including symmetric key, X-509 Self Signed, and Certificate Authority (CA) Signed. SASToken authentication is not currently supported.
Send device-to-cloud message ✔️ Send device-to-cloud messages (max 256KB) to IoT Hub with the option to add custom properties.
Receive cloud-to-device messages ✔️ Receive cloud-to-device messages and read associated custom and system properties from IoT Hub, with the option to complete/reject/abandon C2D messages.
Device Twins ✔️ IoT Hub persists a device twin for each device that you connect to IoT Hub. The device can perform operations like get twin tags, subscribe to desired properties.
Direct Methods ✔️ IoT Hub gives you the ability to invoke direct methods on devices from the cloud. The SDK supports handler for method specific and generic operation.
Connection Status and Error reporting ✖️ Error reporting for IoT Hub supported error code. *This SDK supports error reporting on authentication and Device Not Found.
Retry policies ✖️ Operations which fail with a transient error and dropped connections will be retried with a fixed 10 second interval. There is currently no way to change this behavior.
Upload file to Blob ✔️ A device can initiate a file upload and notifies IoT Hub when the upload is complete.

IoTHub Module Client

Note: IoT Edge for Python is scoped to Linux containers & devices only. Learn more about using Linux containers for IoT edge on Windows devices.

Features Status Description
Authentication ✔️ Connect your device to IoT Hub securely with supported authentication, including symmetric key, X-509 Self Signed, and Certificate Authority (CA) Signed. SASToken authentication is not currently supported.
Send device-to-cloud message ✔️ Send device-to-cloud messages (max 256KB) to IoT Hub with the option to add custom properties.
Receive cloud-to-device messages ✔️ Receive cloud-to-device messages and read associated custom and system properties from IoT Hub, with the option to complete/reject/abandon C2D messages.
Device Twins ✔️ IoT Hub persists a device twin for each device that you connect to IoT Hub. The device can perform operations like get twin tags, subscribe to desired properties.
Direct Methods ✔️ IoT Hub gives you the ability to invoke direct methods on devices from the cloud. The SDK supports handler for method specific and generic operation.
Connection Status and Error reporting ✖️ Error reporting for IoT Hub supported error code. *This SDK supports error reporting on authentication and Device Not Found.
Retry policies ✖️ Operations which fail with a transient error and dropped connections will be retried with a fixed 10 second interval. There is currently no way to change this behavior.
Direct Invocation of Method on Modules ✔️ Invoke method calls to another module using using the Edge Gateway.

Provisioning Device Client

Features Status Description
TPM Individual Enrollment Provisioning via Trusted Platform Module.
X.509 Individual Enrollment ✔️ Provisioning via X.509 root certificate. Please review the samples folder and this quickstart on how to create a device client.
X.509 Enrollment Group ✔️ Provisioning via X.509 leaf certificate). Please review the samples folder on how to create a device client.
Symmetric Key Enrollment ✔️ Provisioning via Symmetric key attestation). Please review the samples folder on how to create a device client.

IoTHub Service Library (azure-iot-hub)

Registry Manager

Features Status Description
Identity registry (CRUD) ✔️ Use your backend app to perform CRUD operation for individual device or in bulk.
Cloud-to-device messaging ✔️ Use your backend app to send cloud-to-device messages, and set up cloud-to-device message receivers.
Direct Methods operations ✔️ Use your backend app to invoke direct method on device.
Device Twins operations ✔️ Use your backend app to perform device twin operations. *Twin reported property update callback and replace twin are in progress.
Query ✔️ Use your backend app to perform query for information.
Jobs ✖️ Use your backend app to perform job operation.

IoTHub Provisioning Service Library

Feature is Coming Soon

Features Status Description
CRUD Operation with TPM Individual Enrollment ✖️ Manage device enrollment using TPM with the service SDK.
Bulk CRUD Operation with TPM Individual Enrollment ✖️ Bulk manage device enrollment using TPM with the service SDK.
CRUD Operation with X.509 Individual Enrollment ✖️ Manages device enrollment using X.509 individual enrollment with the service SDK.
CRUD Operation with X.509 Group Enrollment ✖️ Manages device enrollment using X.509 group enrollment with the service SDK.
Query enrollments ✖️ Query registration states with the service SDK.

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.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., label, 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.

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].