Azure IoT Hub SDK の概要と使用方法Understand and use Azure IoT Hub SDKs

IoT Hub を使用する場合、以下の 2 つのカテゴリのソフトウェア開発キット (SDK) があります。There are two categories of software development kits (SDKs) for working with IoT Hub:

  • IoT Hub Device SDK では、デバイス クライアントまたはモジュール クライアントを使用して、ご利用の IoT デバイス上で実行するアプリを構築できます。IoT Hub Device SDKs enable you to build apps that run on your IoT devices using device client or module client. これらのアプリは IoT Hub にテレメトリを送信し、必要に応じて IoT Hub からメッセージ、ジョブ、メソッド、ツインの更新プログラムを受信します。These apps send telemetry to your IoT hub, and optionally receive messages, job, method, or twin updates from your IoT hub. また、モジュール クライアントを使用して、Azure IoT Edge ランタイム用のモジュールを作成することもできます。You can also use module client to author modules for Azure IoT Edge runtime.

  • IoT Hub Service SDK を使用すると、ご利用の IoT ハブを管理するバックエンド アプリケーションを構築できます。また、必要に応じてメッセージを送信し、ジョブのスケジュールを設定し、ダイレクト メソッドを呼び出し、ご利用の IoT デバイスまたはモジュールに必要なプロパティの更新情報を送信することができます。IoT Hub Service SDKs enable you to build backend applications to manage your IoT hub, and optionally send messages, schedule jobs, invoke direct methods, or send desired property updates to your IoT devices or modules.

また、デバイス プロビジョニング サービスを操作するための一連の SDK も利用できます。In addition, we also provide a set of SDKs for working with the Device Provisioning Service.

  • Device SDK をプロビジョニングすると、IoT デバイス上で動作して、デバイス プロビジョニング サービスと通信するアプリを構築できます。Provisioning Device SDKs enable you to build apps that run on your IoT devices to communicate with the Device Provisioning Service.

  • Service SDK をプロビジョニングすると、デバイス プロビジョニング サービスで自分の登録を管理するバックエンド アプリケーションを構築できます。Provisioning Service SDKs enable you to build backend applications to manage your enrollments in the Device Provisioning Service.

Azure IoT SDK を使用した開発の利点について、詳細を説明します。Learn about the benefits of developing using Azure IoT SDKs.

注意

この記事で言及されている一部の機能 (cloud-to-device メッセージ、デバイス ツイン、デバイス管理など) は、IoT ハブの Standard レベルだけで使用することができます。Some of the features mentioned in this article, like cloud-to-device messaging, device twins, and device management, are only available in the standard tier of IoT hub. IoT Hub の Basic レベルおよび Standard レベルの詳細については、適切な IoT Hub レベルの選び方に関するページを参照してください。For more information about the basic and standard IoT Hub tiers, see How to choose the right IoT Hub tier.

OS プラットフォームとハードウェアの互換性OS platform and hardware compatibility

SDK でサポートされるプラットフォームは、「Azure IoT SDK プラットフォームのサポート」で確認できます。Supported platforms for the SDKs can be found in Azure IoT SDKs Platform Support.

特定のハードウェア デバイスとの SDK の互換性の詳細については、Azure Certified for IoT デバイス カタログまたは個々のリポジトリを参照してください。For more information about SDK compatibility with specific hardware devices, see the Azure Certified for IoT device catalog or individual repository.

Azure IoT Hub デバイス SDKAzure IoT Hub Device SDKs

Microsoft Azure IoT device SDK には、Azure IoT Hub サービスに接続および管理されるアプリケーションの構築を容易にするコードが含まれています。The Microsoft Azure IoT device SDKs contain code that facilitates building applications that connect to and are managed by Azure IoT Hub services.

.NET 用 Azure IoT Hub デバイス SDK:Azure IoT Hub device SDK for .NET:

C 用 Azure IoT Hub デバイス SDK (ANSI C - C99):Azure IoT Hub device SDK for C (ANSI C - C99):

Java 用 Azure IoT Hub デバイス SDK:Azure IoT Hub device SDK for Java:

Node.js 用 Azure IoT Hub デバイス SDK:Azure IoT Hub device SDK for Node.js:

Python 用 Azure IoT Hub デバイス SDK:Azure IoT Hub device SDK for Python:

iOS 用 Azure IoT Hub デバイス SDK:Azure IoT Hub device SDK for iOS:

Azure IoT Hub サービス SDKAzure IoT Hub Service SDKs

Azure IoT サービス SDK には、IoT Hub と直接やりとりしてデバイスやセキュリティを管理するアプリケーションの作成を容易にするコードが含まれています。The Azure IoT service SDKs contain code to facilitate building applications that interact directly with IoT Hub to manage devices and security.

.NET 用 Azure IoT Hub サービス SDK:Azure IoT Hub service SDK for .NET:

  • NuGet からダウンロードします。Download from Nuget. 名前空間は、IoT Hub サービス クライアント (RegistryManager、ServiceClients) を含む Microsoft.Azure.Devices です。The namespace is Microsoft.Azure.Devices, which contains IoT Hub Service Clients (RegistryManager, ServiceClients).
  • ソース コードSource code
  • API リファレンスAPI reference

Java 用 Azure IoT Hub サービス SDK:Azure IoT Hub service SDK for Java:

Node.js 用 Azure IoT Hub サービス SDK:Azure IoT Hub service SDK for Node.js:

Python 用 Azure IoT Hub サービス SDK:Azure IoT Hub service SDK for Python:

C 用 Azure IoT Hub サービス SDK:Azure IoT Hub service SDK for C:

iOS 用 Azure IoT Hub サービス SDK:Azure IoT Hub service SDK for iOS:

注意

言語およびプラットフォームに固有のパッケージ マネージャーを使用して、バイナリと依存関係を開発用コンピューターにインストールする方法については、GitHub リポジトリの readme ファイルを参照してください。See the readme files in the GitHub repositories for information about using language and platform-specific package managers to install binaries and dependencies on your development machine.

Microsoft Azure Provisioning SDKMicrosoft Azure Provisioning SDKs

Microsoft Azure Provisioning SDK では、デバイス プロビジョニング サービスを使用してデバイスをご利用の IoT Hub にプロビジョニングすることができます。The Microsoft Azure Provisioning SDKs enable you to provision devices to your IoT Hub using the Device Provisioning Service.

C# 用の Azure Provisioning Device SDK および Azure Provisioning Service SDK:Azure Provisioning device and service SDKs for C#:

C 用の Azure Provisioning Device SDK および Azure Provisioning Service SDK:Azure Provisioning device and service SDKs for C:

Java 用の Azure Provisioning Device SDK および Azure Provisioning Service SDK:Azure Provisioning device and service SDKs for Java:

Node.js 用の Azure Provisioning Device SDK および Azure Provisioning Service SDK:Azure Provisioning device and service SDKs for Node.js:

Python 用の Azure Provisioning Device SDK および Azure Provisioning Service SDK:Azure Provisioning device and service SDKs for Python:

次の手順Next steps

Azure IoT SDK では、開発に役立つ一連のツールも提供しています。Azure IoT SDKs also provide a set of tools to help with development:

  • iothub-diagnostics: IoT Hub との接続に関連する問題の診断に役立つ、クロスプラットフォーム コマンド ライン ツール。iothub-diagnostics: a cross-platform command line tool to help diagnose issues related to connection with IoT Hub.
  • device-explorer: IoT Hub に接続するための Windows デスクトップ アプリケーション。device-explorer: a Windows desktop application to connect to your IoT Hub.

Azure IoT SDK を使用した開発に関連するドキュメントRelevant docs related to development using the Azure IoT SDKs:

この IoT Hub 開発者ガイド内の他の参照トピックは次のとおりです。Other reference topics in this IoT Hub developer guide include: