すべてのプロダクト
Search
ドキュメントセンター

IoT Platform:IoT Platform SDK for Pythonの使用

最終更新日:Feb 06, 2024

IoT PlatformはPython用のSDKを提供しています。 このトピックでは、IoT Platform SDK for Pythonをインストールおよび設定する方法について説明します。 このトピックでは、SDKを使用してIoT PlatformのAPI操作を呼び出す方法に関するサンプルコードも提供します。

SDK のインストール

  1. Python開発環境をインストールします。

    公式Python WebサイトからPythonインストールパッケージをダウンロードし、Pythonをインストールします。 Python 2.7.xと3.xがサポートされています。

  2. Pythonパッケージの管理に使用されるpipをインストールします。 pipをインストールしている場合は、この手順をスキップします。

    公式pip Webサイトからpipインストールパッケージをダウンロードし、pipをインストールします。

  3. 管理者として次のコマンドを実行して、IoT Platform SDK for Pythonをインストールします。

    IoT Platform SDK For Pythonの詳細については、aliyun-python-sdk-iotをご参照ください。

    sudo pip install aliyun-python-sdk-core
    sudo pip install aliyun-python-sdk-iot 
  4. IoT Platform SDK for Pythonに関連するファイルをPythonファイルにインポートします。

    aliyunsdkcoreインポートクライアントからの
    aliyunsdkiot.request.v20180120からRegisterDeviceRequestをインポート
    aliyunsdkiot.request.v20180120からPubRequestをインポート
    ... 

SDKの初期化

次の例は、IoT Platformサービスが中国 (上海) リージョンにある場合にSDKを初期化する方法を示しています。

client.AcsClient(accessKeyId, accessKeySecret, 'cn-shanghai') メソッドを呼び出して、SDKの初期化情報を読み込みます。

osのインポート
accessKeyId = os.getenv('ACCESS_KEY_ID ')
accessKeySecret = os.getenv('ACCESS_KEY_SECRET ')
clt = client.AcsClient(accessKeyId, accessKeySecret, 'cn-shanghai') 

パラメーター

説明

clt

初期化されたSDKクライアント。 cn-shanghaiは、IoT Platformサービスが存在するリージョンのIDを示します。

IoT Platformコンソールの左上隅にリージョンを表示できます。

リージョンIDの詳細については、「サポートされているリージョン」をご参照ください。

リクエストを開始するInitiate a request

SDKは、API操作ごとにクラスをカプセル化します。 クラス名は ${API操作名} + 「リクエスト」形式です。 このクラスのrequestインスタンスを作成し、"set_" +${request parameter} メソッドを呼び出してリクエストパラメーターを指定できます。 応答を取得するには、cltクライアントのdo_action_with_exception(request) メソッドを呼び出します。

IoT PlatformのAPI操作の詳細については、「関数別の操作のリスト」をご参照ください。 各API操作のrequestおよびresponseパラメーターの詳細については、APIのドキュメントをご参照ください。

次の例は、Pub操作を呼び出してメッセージをトピックに公開する方法を示しています。 リクエストパラメーターの詳細については、「Pub」をご参照ください。

request = PubRequest.PubRequest()
request.set_accept_format('json') # レスポンスが返される形式。 デフォルトでは、XML形式が使用されます。 この例では、JSON形式が使用されています。
request.set_IotInstanceId('iotInstanceId')
request.set_ProductKey('productKey')
request.set_TopicFullName('/productKey/deviceName/get') # メッセージの発行に使用されるトピックの完全な名前。
request.set_MessageContent('aGVsbG8gd29ybGQ=') #hello world Base64文字列
request.set_Qos (0)
result = clt.do_action_with_exception (リクエスト)
プリント ('result : '+ result) 

付録: サンプルコード

のAPI操作のサンプルコードを表示またはダウンロードできます。 IoT Platform SDKサンプルセンター Java、Python、PHPなどのSDKのサンプルコード。NETおよびGoが提供されます。

Alibaba Cloud OpenAPI Explorerは、API操作用のオンラインデバッグツールを提供します。 [APIデバッグ] ページでは、API操作の検索、API操作の呼び出し、およびさまざまなSDKのAPI操作のサンプルコードの生成ができます。 ページの右側で、SDKのサンプルコードを [サンプルコード] タブに表示できます。 [デバッグ結果] タブでは、実際のリクエストURLとレスポンスをJSON形式で表示できます。