カスタムトピックのデータを時系列データストレージに書き込みます。
使用方法
WriteDevicesHotStorageData 操作は、Standard 版および Exclusive 版の Enterprise Edition インスタンスでのみ使用できます。
制限
この操作を呼び出すことによって Enterprise Edition インスタンスの時系列データストレージに毎秒書き込むことができるデータ量は、インスタンスを購入したときに 時系列データストレージ IOPS パラメーターに指定した値によって異なります。 詳細については、「Enterprise Edition インスタンスを購入する」をご参照ください。
デバッグ
リクエストパラメーター
パラメーター | タイプ | 必須 | 例 | 説明 |
Action | String | はい | WriteDevicesHotStorageData | 実行する操作。 値を WriteDevicesHotStorageData に設定します。 |
IotInstanceId | String | はい | iot-2w**** | インスタンス ID。 IoT Platform コンソールの 概要 ページで インスタンス ID を表示できます。 |
Items | String | はい | { "Power": { "value": "on", "time": 1524448722000 }, "WF": { "value": 23.6, "time": 1524448722000 } } | 書き込むデータ。 JSON オブジェクトで値を指定します。
|
UserTopic | String | はい | user/a***/b*** | カスタムトピックの名前。 詳細については、「カスタムトピックを使用する」をご参照ください。 |
ProductKey | String | いいえ | a1BwAGV**** | デバイスが属するプロダクトの ProductKey。 重要 このパラメーターを指定する場合は、DeviceName も指定する必要があります。 |
DeviceName | String | いいえ | device1 | デバイスの DeviceName。 重要 このパラメーターを指定する場合は、ProductKey も指定する必要があります。 |
IotId | String | いいえ | y4u2weAI********HMle1234 | デバイス ID。 重要 IotId は、デバイスの GUID を指定します。 IotId の値は、ProductKey と DeviceName の値の組み合わせと同じです。 このパラメーターを指定する場合は、ProductKey または DeviceName を指定する必要はありません。 IotId、ProductKey、DeviceName を指定した場合、IotId の値が優先されます。 |
上記の操作固有のリクエストパラメーターに加えて、この操作を呼び出すときは、共通のリクエストパラメーターを指定する必要があります。 詳細については、「共通パラメーター」をご参照ください。
レスポンスパラメーター
パラメーター | タイプ | 例 | 説明 |
Code | String | iot.system.SystemException | リクエストが失敗した場合に返されるエラーコード。 詳細については、このトピックの エラーコード セクションをご参照ください。 |
ErrorMessage | String | システム例外が発生しました。 | リクエストが失敗した場合に返されるエラーメッセージ。 |
RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 | リクエスト ID。 |
Success | Boolean | true | リクエストが成功したかどうかを示します。 有効な値:
|
例
リクエストの例
http(s)://iot.cn-shanghai.aliyuncs.com/?Action=WriteDevicesHotStorageData
&IotInstanceId=iot-2w****
&Items={ "Power": { "value": "on", "time": 1524448722000 }, "WF": { "value": 23.6, "time": 1524448722000 } }
&UserTopic=user/a***/b***
$ProductKey=a1BwAGV****
$DeviceName=device1
&<共通リクエストパラメーター>
成功レスポンスの例
XML
形式
<WriteDevicesHotStorageDataResponse>
<RequestId>E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565</RequestId>
<Success>true</Success>
</WriteDevicesHotStorageDataResponse>
JSON
形式
{
"RequestId": "E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565",
"Success": true
}
エラーコード
HTTP ステータスコード | エラーコード | エラーメッセージ | 説明 |
400 | iot.device.InvalidFormattedDeviceName | DeviceName の形式が無効です。 | DeviceName の形式が無効です。 |
400 | iot.device.NullDeviceName | DeviceName パラメーターは空にできません。 | DeviceName が指定されていません。 |
400 | iot.device.SetDevicePropertyFailed | デバイスのプロパティの設定中にエラーが発生しました。 | デバイスのプロパティの設定に失敗しました。 |
400 | iot.prod.InvalidFormattedProductkey | ProductKey の形式が無効です。 | ProductKey の形式が無効です。 |
400 | iot.prod.NotExistedProduct | 指定されたプロダクトは存在しません。 | 指定したプロダクトは存在しません。 |
400 | iot.prod.NullProductKey | ProductKey パラメーターは空にできません。 | ProductKey が指定されていません。 |
400 | iot.check.InvalidFormattedParameter | パラメーターの形式が無効です。 | 1 つ以上のパラメーターの形式が無効です。 |
400 | iot.messagebroker.HALFCONN | 指定された操作は失敗しました。デバイスは非アクティブ状態です。 | デバイスが非アクティブなときに、ハートビートが検出されませんでした。 |
400 | iot.messagebroker.OFFLINE | 指定された操作は失敗しました。デバイスはオフラインです。 | デバイスがオフラインの場合、システムはデバイスを IoT Platform に接続できませんでした。 |
400 | iot.prod.QueryProductAbilitiesFailed | 製品機能のクエリ中にエラーが発生しました。 | システムは製品の機能を取得できませんでした。 |
400 | iot.system.IllegalRequest | リクエストパラメータが無効です。 | 1 つ以上のリクエストパラメータが無効です。 |
400 | iot.dataalgo.ScriptMethodNotFound | スクリプトにメソッドが見つかりません。 | スクリプトにメソッドが存在しません。 |
400 | iot.dataalgo.ScriptExecutionTimeout | スクリプト実行タイムアウト。 | スクリプトの実行中にタイムアウトエラーが発生しました。 |
400 | iot.dataalgo.ScriptExecutionOomException | スクリプトの実行でメモリ不足が発生しました。 | スクリプトの実行中に、メモリ使用量の上限を超えました。 |
400 | Iot.Device.NotExistedDevice | デバイスが存在しません。 | デバイスが存在しないか、アクティブ化されていません。 |
400 | iot.device.InvalidIoTId | 指定されたデバイス ID が無効です。 | デバイス ID が無効です。 |
400 | iot.dataalgo.ScriptExecutionException | スクリプト実行例外。 | スクリプトの実行中に例外が発生しました。 |
400 | iot.prod.QueryPropertyNotFound | クエリ プロパティが見つかりません。 | クエリしたプロパティは存在しません。 |
400 | iot.dataalgo.ScriptDataFormatException | スクリプト関数の結果フォーマットが正しくありません。 | スクリプト フォーマットが無効です。 |
400 | iot.dataalgo.ScriptRelationNotExist | スクリプト関係が存在しません。 | スクリプト関係が存在しません。 |
400 | iot.tsl.TslParseError | TSLlParseError: %s。 | %s Thing Specification Language(TSL)の解析エラーが発生しました。 |
400 | iot.tsl.InvalidFormattedTslError | TSL フォーマットが無効です。 | TSL データのフォーマットが無効です。 |
400 | iot.tsl.InvalidHistoryTimestampError | 履歴のタイムスタンプが無効です。 | 指定したタイムスタンプが無効です。 |
400 | iot.storage.HotStorageCapacityNotEnough | タイムライン ストレージの容量が不足しています。 | 時系列データ ストレージの容量が不足しています。 |
400 | iot.storage.HotStorageIopsWriteNotEnough | タイムライン ストレージの書き込み IOPS が不足しています。 | 時系列データ ストレージの書き込み IOPS が不足しています。 |
エラーコードのリストについては、「サービス エラーコード」をご参照ください。