SDK de dispositivo y servicio de Azure IoT

En esta referencia se enumeran los Azure SDKs que puede usar para crear soluciones de IoT, incluidos los SDK de dispositivo, servicio y administración para IoT Hub y Device Provisioning Service (DPS), sdk de versión preliminar para la administración de certificados y vínculos a Azure Digital Twins API de plano de control y plano de datos.

SDK de dispositivo

Los SDK de dispositivo de Microsoft Azure IoT contienen código que facilita la creación de aplicaciones que se conectan y se administran mediante servicios de Azure IoT Hub. Estos SDK se pueden ejecutar en un dispositivo informático general basado en MPU, como un PC, una tablet, un smartphone o una Raspberry Pi. Los SDK admiten el desarrollo en C y en lenguajes administrados modernos, incluidos C#, Node.js, Python y Java.

Los SDK están disponibles en varios idiomas, lo que proporciona flexibilidad para elegir cuál se adapta mejor a su equipo y escenario.

Language Package Fuente Inicio rápido Muestras Referencia
.NET NuGet GitHub Connect to IoT Hub Samples Referencia
Python pip GitHub Connect to IoT Hub Samples Referencia
Node.js npm  GitHub Connect to IoT Hub Samples Referencia
Java Maven GitHub Connect to IoT Hub Samples Referencia
C packages GitHub Connect to IoT Hub Samples Referencia

El SDK de dispositivo Java incluye samples para Android.

El SDK de dispositivo C incluye samples para iOS que usan CocoaPods.

Advertencia

El SDK Azure IoT C no es adecuado para las aplicaciones insertadas debido a su modelo de administración y subprocesos de memoria. Para conocer las opciones de SDK de dispositivos insertados, consulte los SDK de dispositivos insertados.

Use los SDK de dispositivo para desarrollar código para ejecutarse en dispositivos IoT que se conectan a IoT Hub o IoT Central.

SDK de dispositivos insertados

Estos SDK se han diseñado y creado para ejecutarse en dispositivos con recursos limitados de proceso y memoria, y se implementan con el lenguaje C.

Los SDK de dispositivos insertados están disponibles para varios sistemas operativos, lo que proporciona flexibilidad al elegir cuál se adapta mejor a su escenario.

RTOS SDK Fuente Muestras Referencia
Eclipse ThreadX Middleware de Azure RTOS GitHub Guías de inicio rápido Referencia
FreeRTOS FreeRTOS Middleware GitHub Samples Referencia
Bare Metal Azure SDK para C insertado GitHub Samples Referencia

Use los SDK de dispositivo insertados para desarrollar código para ejecutarse en dispositivos IoT que se conectan a IoT Hub o IoT Central.

Para más información sobre cuándo usar los SDK de dispositivos insertados, consulte Escenarios de uso del SDK de C y SDK de C insertado.

Ciclo de vida y soporte técnico de SDK del dispositivo

En esta sección se resume el ciclo de vida y la directiva de soporte técnico del SDK de dispositivos de Azure IoT. Para obtener más información, consulte Azure SDK Ciclo de vida y directiva de soporte técnico.

Ciclo de vida del paquete

Los paquetes se publican en las siguientes categorías. Cada categoría tiene una estructura de compatibilidad definida.

  1. Beta: También conocido como versión preliminar o versión candidata para lanzamiento. Disponible para fines de acceso anticipado y comentarios. Su uso en producción no es recomendable. La compatibilidad con la versión preliminar está limitada a GitHub problemas. Las versiones preliminares suelen estar activas durante menos de seis meses, después de las cuales están en desuso o se publican como activas.

  2. Activa: Generalmente disponible y totalmente compatible, recibe nuevas actualizaciones de características, así como correcciones de errores y de seguridad. Use la versión más reciente porque esa versión recibe correcciones y actualizaciones.

  3. En desuso: Reemplazada por una versión más reciente. La desuso se produce al mismo tiempo que la nueva versión se activa. Las versiones en desuso abordan las correcciones de errores más críticas y las correcciones de seguridad de otros 12 meses.

Obtener soporte técnico

Si experimenta problemas al usar los SDK de Azure IoT, busque soporte técnico a través de las siguientes opciones:

  • Informe de errores: todos los clientes pueden notificar errores en la página de problemas del repositorio de GitHub asociado al SDK correspondiente.

  • Microsoft equipo de soporte técnico al cliente: los usuarios que tienen un plan de support pueden interactuar con el equipo de soporte técnico de Microsoft mediante la creación de una incidencia de soporte técnico directamente desde el portal de Azure.

SDK de servicio de IoT Hub

Los SDK de servicio Azure IoT contienen código para facilitar la creación de aplicaciones que interactúan directamente con IoT Hub para administrar dispositivos y seguridad.

Plataforma Package Repositorio de código Muestras Referencia
.NET NuGet GitHub Samples Referencia
Java Maven GitHub Samples Referencia
Nodo npm GitHub Samples Referencia
Python pip GitHub Samples Referencia

Para más información sobre el uso de los SDK de servicio para interactuar con dispositivos a través de un centro de IoT, consulte IoT Plug and Play guía para desarrolladores de servicios.

SDK de administración de IoT Hub

Los SDK de administración de IoT Hub ayudan a crear aplicaciones de back-end que administran los centros de IoT en la suscripción de Azure.

Plataforma Package Repositorio de código Referencia
.NET NuGet GitHub Referencia
Java Maven GitHub Referencia
Node.js. npm GitHub Referencia
Python pip GitHub Referencia

Entre las alternativas a los SDK de administración se incluyen Azure CLI, PowerShell y REST API.

SDK de dispositivos DPS

Los SDK de dispositivo DPS proporcionan implementaciones de la API de Registrar y otras que los dispositivos llaman a aprovisionar a través de DPS. Estos SDK de dispositivo se pueden ejecutar en dispositivos informáticos generales basados en MPU, como PC, tabletas, smartphones o Raspberry Pi. Los SDK admiten el desarrollo en C y en lenguajes administrados modernos, incluidos C#, Node.js, Python y Java.

En la tabla siguiente se enumeran los SDK de dispositivo disponibles para cada idioma admitido.

Plataforma Package Repositorio de código Muestras Inicio rápido Referencia
.NET NuGet GitHub Samples Inicio rápido Referencia
C apt-get, MBED, Arduino IDE o iOS GitHub Samples Inicio rápido Referencia
Java Maven GitHub Samples Inicio rápido Referencia
Node.js. npm GitHub Samples Inicio rápido Referencia
Python pip GitHub Samples Inicio rápido Referencia

Advertencia

El SDK de C mencionado anteriormente no es adecuado para las aplicaciones insertadas debido a su modelo de administración de memoria y subprocesos. Para los dispositivos insertados, consulte SDK de dispositivos insertados.

SDK de dispositivos insertados de DPS

Estos SDK se han diseñado y creado para ejecutarse en dispositivos con recursos limitados de proceso y memoria, y se implementan con el lenguaje C.

RTOS SDK Fuente Muestras Referencia
Eclipse ThreadX Middleware de Azure RTOS GitHub Guías de inicio rápido Referencia
FreeRTOS FreeRTOS Middleware GitHub Samples Referencia
Bare Metal Azure SDK para C insertado GitHub Samples Referencia

Obtenga más información sobre los SDK de dispositivo y de dispositivo insertado en SDK de IoT.

SDK del servicio DPS

Los SDK del servicio DPS le ayudan a compilar aplicaciones de back-end para administrar inscripciones y registros de registro en instancias de DPS.

Plataforma Package Repositorio de código Muestras Inicio rápido Referencia
.NET NuGet GitHub Samples Inicio rápido Referencia
Java Maven GitHub Samples Inicio rápido Referencia
Node.js. npm GitHub Samples Inicio rápido Referencia

SDK de administración de DPS

Los SDK de administración de DPS le ayudan a crear aplicaciones de back-end que administran las instancias de DPS y sus metadatos en la suscripción de Azure.

Plataforma Package Repositorio de código Referencia
.NET NuGet GitHub Referencia
Java Maven GitHub Referencia
Node.js. npm GitHub Referencia
Python pip GitHub Referencia

SDK de administración de certificados (versión preliminar)

Para los SDK que admiten la administración de certificados X.509 respaldados por Microsoft en versión preliminar, use las instrucciones y ejemplos siguientes. Para usar los SDK de administración de certificados en versión preliminar, debe usar Azure IoT Hub con una instancia de DPS vinculada y los dispositivos deben aprovisionar a través de DPS.

SDK de dispositivos de administración de certificados (versión preliminar)

En la tabla siguiente se enumeran los SDK de plataforma que actualmente admiten la administración de certificados X.509 respaldados por Microsoft en versión preliminar.

Language Package Origen o rama Muestras
.NET NuGet Azure/azure-iot-sdk-csharp en feature/iot-csr-preview CertificateSigningRequestSample
Python pip Azure/azure-iot-sdk-python en feature/iot-csr-preview muestras de cert-mgmt
Node.js. npm No disponible No disponible
Java Maven Azure/azure-iot-sdk-java en feature/csr certificate-signing-sample
C packages Azure/azure-iot-sdk-c en feature/dps-csr-preview iothub_ll_client_sample_certificate_signing_request

SDK de dispositivos insertados de administración de certificados (versión preliminar)

En la tabla siguiente se enumeran los SDK incrustados que actualmente admiten la administración de certificados X.509 respaldados por Microsoft en versión preliminar.

RTOS SDK Fuente Muestras
FreeRTOS FreeRTOS Middleware Azure/azure-iot-middleware-freertos en feature/dps-csr-preview No disponible
Bare Metal Azure SDK para C insertado Azure/azure-sdk-for-c en feature/dps-csr-preview paho_iot_hub_csr_sample.c

API del plano de control de Azure Digital Twins

Las API del plano de control se ARM API que se usan para administrar la instancia de Azure Digital Twins en su conjunto, por lo que abarcan operaciones como crear o eliminar toda la instancia. También usará estas API para crear y eliminar puntos de conexión.

Para llamar directamente a las API, haga referencia a la carpeta Swagger más reciente en el repositorio swagger del plano control. Esta carpeta también incluye una carpeta de ejemplos que muestran el uso.

Estos son los SDK disponibles actualmente para las API del plano de control de Azure Digital Twins.

Lenguaje de SDK Vínculo de paquete Documentación de referencia Código fuente
.NET (C#) Azure. ResourceManager.DigitalTwins en NuGet Reference para Azure SDK de DigitalTwins para .NET Microsoft Azure Digital Twins management client library for .NET on GitHub
Java azure-resourcemanager-digitaltwins en Maven Referencia de administración de recursos: Digital Twins Azure Resource Manager biblioteca cliente de AzureDigitalTwins para Java en GitHub
JavaScript Biblioteca cliente AzureDigitalTwinsManagement para JavaScript en npm Biblioteca clienteAzureDigitalTwinsManagement para JavaScript en GitHub
Python azure-mgmt-digitaltwins en PyPI Microsoft Azure SDK para Python en GitHub
Go azure-sdk-for-go/services/digitaltwins/mgmt Azure SDK para Go on GitHub

API del plano de datos de Azure Digital Twins

Las API del plano de datos son las API de Azure Digital Twins que se usan para administrar los elementos de la instancia de Azure Digital Twins. Incluyen operaciones como la creación de rutas, la carga de modelos, la creación de relaciones y la administración de gemelos, y se pueden dividir ampliamente en las categorías siguientes:

Para llamar directamente a las API, haga referencia a la carpeta Swagger más reciente en el repositorio swagger del plano data. Esta carpeta también incluye una carpeta de ejemplos que muestran el uso. También puede consultar la documentación de referencia de API del plano de datos.

Estos son los SDK disponibles actualmente para las API del plano de datos de Azure Digital Twins.

Lenguaje de SDK Vínculo de paquete Documentación de referencia Código fuente
.NET (C#) Azure. DigitalTwins.Core en NuGet Reference para Azure IoT biblioteca cliente de Digital Twins para .NET Azure IoT biblioteca cliente de Digital Twins para .NET en GitHub
Java com.azure:azure-digitaltwins-core en Maven Reference para Azure Digital Twins SDK para Java Azure IoT biblioteca cliente de Digital Twins para Java en GitHub
JavaScript biblioteca cliente de Azure Azure Digital Twins Core para JavaScript en npm Reference for @azure/digital-twins-core biblioteca cliente de Azure Azure Digital Twins Core para JavaScript en GitHub
Python biblioteca cliente de Azure Azure Digital Twins Core para Python en PyPI Referencia de azure-digitaltwins-core biblioteca cliente de Azure Azure Digital Twins Core para Python en GitHub

Pasos siguientes

Entre los siguientes pasos sugeridos, se incluyen: