azure-iot-sdk-python

A Python SDK for connecting devices to Microsoft Azure IoT services

MIT License

Downloads
233.5K
Stars
422
Committers
25

Bot releases are hidden (Show)

azure-iot-sdk-python - Azure IoT Hub Library for Python v2.2.2

Published by olivakar about 4 years ago

Hub Library Change Log

Fixes

  • Use different API version for service to ensure functionality across all HUBs in all regions.
azure-iot-sdk-python - Azure IoT Device Library for Python v2.2.0

Published by olivakar about 4 years ago

Device Library Change Log

Features

  • add user configurable keep alive

Fixes

  • minor changes to error messages
azure-iot-sdk-python - Azure IoT Device Library for Python v2.1.4

Published by olivakar over 4 years ago

Device Library Change Log

  • rename digital-twin-model-id to modelId in mqtt
azure-iot-sdk-python - Azure IoT Device Library for Python v2.1.3

Published by BertKleewein over 4 years ago

Device Library Change Log

Authentication changes (#583, #555)

This includes architectural and testing changes that should not be visible to clients. The purpose of this change is to increase stability maintainability.

Sample updates (#571, #578)

Update code samples for clarity

Model ID updates (#582)

Enhancement to enable creation of PnP compatible devices.

script for certificate creation using cryptography as library (#574)

Bug fix: removed dependence of certificate creation script on openssl.

Add 'sastoken_ttl' kwarg option to factory methods (#579)

This allows clients to specify the token renewal interal when using symmetric key authentication.

stability updates: fix race condition inside sas token renewal (#576)

This fixes a was a race condition which would cause the client to stop functioning if the client was communicating with IoT Hub when a SAS renewal event took place, which happens every 50 minutes by default.

behavior updates: reconnect improvements (#576)

This fixes some overly-aggressive reconnect logic which would cause the client to reconnect with IoTHub after the disconnect method was called. Depending on the behavior of the customer's code, this could cause multiple client instances to be active and to contend for resources (including the single network connection that is allowed by the hub). More details are on the common pitfalls page

update the iothub api version to the latest (#589)

Enables Device Twin array support

Known issues in this release

The common pitfalls page has information on some known issues and common problems.

azure-iot-sdk-python - Azure IoT Device Library for Python v2.1.2 and Azure IoT Hub Library for Python v2.2.1

Published by olivakar over 4 years ago

Device Library Change Log

Fixes

  • Gets updated twin on reconnection
  • Allow for direct method calls only after subscription succeeds.
  • Improve garbage collection to avoid an orphaned paho client
  • Lock janus to 0.4.0
  • Minor fixes for generation of docs
  • Minor fixes to links and markdown files

Samples

  • Added sample sending messages from a downstream or 'leaf' device to IoT Edge

Hub Library Change Log

Feature

  • Added a job manager

Fixes

  • Added user id for messages

Samples

  • Improve the upload to blob sample code

Code Examples

Device

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

Hub

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Hub Library for Python v2.2.0

Published by cartertinney over 4 years ago

Changelog

Features

  • Added support for adding properties to C2D messages
  • Added support for creating Edge devices

Fixes

  • Fixed a bug where method payload could not be empty when using .invoke_device_method() and .invoke_device_module_method()

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.1.1

Published by cartertinney over 4 years ago

Device Library Changelog

Fixes

  • Fixed a bug where messages could not be sent if properties contained whitespace characters
  • Fixed a bug where connections could hang
  • Fixed a bug where a dropped connection caused operations to not complete successfully
  • Fixed a bug where cipher suites were not used for file upload operations
  • Fixed a bug where package filesize was inflated due to inclusion of unnecessary files
  • Fixed several bugs where connections could enter undesirable states due to race conditions

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

azure-iot-sdk-python - (LIMITED AVAILABILITY RELEASE) Azure IoT Hub Library for Python v2.2.0-limited

Published by cartertinney over 4 years ago

NOTE WELL: This LIMITED AVAILABILITY RELEASE is only compatible with the following Azure regions: East US, South Central US, and West US 2

Features

  • Added Job Manager client
  • HTTP Runtime Manager client
  • Added support for virtual networks, please see this page for more information.

Installation

This is a LIMITED AVAILABILITY RELEASE and is not being distributed via the Python Package Index (PyPI).

Instead, please install by downloading the attached .whl file under the "assets" header of this release. Once you have downloaded the release file (azure_iot_hub-2.2.0_limited-py2.py3-none-any.whl), open command line and navigate to the folder with the downloaded file. Run pip install ./azure_iot_hub-2.2.0_limited-py2.py3-none-any.whl to install this version of the Azure IoT Hub Library.

A future mainline release of the Azure IoT Hub Library will include these features once support for VNETs is widely available on all Azure regions.

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.1.0 and Azure IoT Hub Library for Python v2.1.0

Published by olivakar over 4 years ago

Device Library Changelog

Fixes

  • Content type and content encoding are NOT defaulted on messages
  • Reconnect and retry stage changed to resolve some reconnect bugs.
  • Lower logging level for unexpected disconnections/connections to reduce severity of handled failures
  • Stop retrying on SSL errors from TLS exchanges
  • User agent to identify usage of SDK

Feature

  • Support proxy via MQTT

Hub Library Changelog

Feature

  • c2d supported using amqp

Code Examples

Device

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

Hub

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.0.1 and Azure IoT Hub Library for Python v2.0.2

Published by olivakar over 4 years ago

Device Library Changelog

Fixes

  • Message size limited to 256 KB
  • Change logging level for unexpected disconnections
  • SAS Token renewal in HTTP

Feature

  • Add connected property to clients

Hub Library Changelog

Fixes

  • Update query API for continuation tokens.

Code Examples

Device

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

Hub

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Hub Library for Python v2.0.1

Published by cartertinney almost 5 years ago

Changelog

  • fix: Added 'models' module to the API

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.0.0

Published by cartertinney almost 5 years ago

Library Features

Device & Module clients

  • Authentication using
    • Connection String
    • X509
    • Edge Environment
    • Symmetric Key
  • Send Messages/Telemetry
  • C2D messages
  • Input/output messages for IoT Edge
  • Direct Methods
  • Twins
  • File Upload
  • Invoke Method

Provisioning client

  • Register a device on the Device Provisioning Service
  • Authentication using:
    • Symmetric Key
    • X509 Certificate

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.0.0-preview.13

Published by cartertinney almost 5 years ago

Changelog

  • feat: Support for websockets over MQTT for ProvisioningDeviceClient
  • feat: Support for custom payload for registration is ProvisioningDeviceClient
  • feat: Support for custom user agent in IoTHubDeviceClient and IoTHubModuleClient
  • feat: Simple timeout detection and Retry for basic scenarios (IoTHubDeviceClient and IoTHubModuleClient only)
  • feat: Support for Python 3.8
  • bugfix: Fixed spurious "Out of Memory" errors

Current Library features

Device & Module clients

  • Authentication using
    • SAS token
    • Connection String
    • X509
    • Edge Environment
  • Send Messages/Telemetry
  • C2D messages
  • Input/output for IoT Edge
  • Direct Methods
  • Twins
  • Edge local debugging capability using the vs code extension
  • MQTT Websocket support
  • Custom User-Agent

Provisioning client

  • Register a device on the Device Provisioning Service
  • Custom payloads for registration
  • Authentication using:
    • Symmetric Key
    • X509 Certificate
  • MQTT Websocket support

Features still in development

  • File Upload (IoTHubDeviceClient & IoTHubModuleClient)
  • Invoke Method (IoTHubDeviceClient & IoTHubModuleClient)
  • Operation Retry (All clients)

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.0.0-preview.12

Published by cartertinney about 5 years ago

Changelog

  • feat: Support for websockets over MQTT added (IoTHubDeviceClient and IoTHubModuleClient only)
  • feat: Added support for a custom provisioning payload
  • fix: improved error surfacing in IoTHubDeviceClient and IoTHubModuleClient
  • fix: MQTT memory leak
  • doc: more robust docstrings for APIs

Current Library features

  • Device & Module clients (including IoT Edge support)
    *Authentication using
    • SAS token
    • Connection String
    • X509
    • Edge Environment
  • Send Messages/Telemetry
  • C2D messages
  • Input/output for IoT Edge
  • Direct Methods
  • Twins
  • Edge local debugging capability using the vs code extension
  • Websocket support

Features still in development

  • File Upload
  • Invoke Method
  • Operation Retry

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

azure-iot-sdk-python - Azure IoT Hub Library for Python v2.0.0-preview.2

Published by cartertinney about 5 years ago

Changelog

  • Added initial version of IoTHubRegistryManager

Current Library Features

  • CRUD operations for IoTHub with IoTHubRegistryManager

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples

azure-iot-sdk-python - Azure IoT Device Library for Python v2.0.0-preview.11

Published by cartertinney about 5 years ago

Changelog

  • [FEATURE] Began surfacing errors correctly to users
  • [BUGFIX] Added default values for content type and content encoding on messages
  • [INFRASTRUCTURE] Improved logging
  • [INFRASTRUCTURE] Support for latest version of requests library

Current Library features

  • Device & Module clients (including IoT Edge support)
    *Authentication using
    • SAS token
    • Connection String
    • X509
    • Edge Environment
  • Send Messages/Telemetry
  • C2D messages
  • Input/output for IoT Edge
  • Direct Methods
  • Twins
  • Edge local debugging capability using the vs code extension

Features still in development

  • File Upload
  • Invoke Method
  • Operation Retry

Code Examples

https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-device/samples

azure-iot-sdk-python - Azure IoT SDKs for Devices v1.4.6

Published by pierreca almost 6 years ago

azure-iot-sdk-python - Azure IoT SDKs for Devices v1.4.5

Published by pierreca almost 6 years ago

  • Snapped to the latest C SDK features described here
    • notable additions:
      • Support for symmetric keys in the DPS device SDK
      • Support for certificate verification on windows
  • Fix for https://github.com/Azure/azure-iot-sdk-python/issues/230
  • New Device Provisioning Service SDK with Symmetric Key attestation support, custom allocation policies, and other features of the anniversary update (see details here)
azure-iot-sdk-python - Azure IoT SDKs for Devices v1.4.4

Published by pierreca almost 6 years ago

We are snapping to the latest LTS (Long-Term Support) version of the C SDK and therefore declaring our 1.4.x series of update the LTS branch.

We will be publishing new features under the 1.5.x denomination in the future.

This is also a good time to let everybody know that we've seen and heard the feedback loud and clear about the many pains caused by having to wrap the C SDK using Boost (and the ensuing platform incompatibilities). At that point we've started a complete re-write of the SDK in pure, cross platform python.

As soon as we have a partial-feature SDK preview ready we will communicate this in the readme and start redirecting new users to the preview of the v2 SDK.

azure-iot-sdk-python - Azure IoT SDKs for Devices v1.4.3

Published by pierreca about 6 years ago

Fixes:

  • #179
  • #174
  • Snap to latest C SDK which includes: Update security issue detailed in CVE-2018-8479