IoT PlatformはPython用のSDKを提供しています。 このトピックでは、IoT Platform SDK for Pythonをインストールおよび設定する方法について説明します。 このトピックでは、SDKを使用してIoT PlatformのAPI操作を呼び出す方法に関するサンプルコードも提供します。
SDK のインストール
Python開発環境をインストールします。
公式Python WebサイトからPythonインストールパッケージをダウンロードし、Pythonをインストールします。 Python 2.7.xと3.xがサポートされています。
Pythonパッケージの管理に使用されるpipをインストールします。 pipをインストールしている場合は、この手順をスキップします。
公式pip Webサイトからpipインストールパッケージをダウンロードし、pipをインストールします。
管理者として次のコマンドを実行して、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
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クライアント。 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形式で表示できます。