

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ロケーション
<a name="location-rule-action"></a>

Location (`location`) アクションによって、地理的位置データを [Amazon Location Service](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html) に送信します。

## 要件
<a name="location-rule-action-requirements"></a>

このルールアクションには、以下の要件があります。
+ オペレーションを実行するために が引き受け AWS IoT ることができる IAM ロール`geo:BatchUpdateDevicePosition`。詳細については、「[必要なアクセスを AWS IoT ルールに付与する](iot-create-role.md)」を参照してください。

   AWS IoT コンソールでは、このルールアクションを実行することを に許可 AWS IoT するロールを選択または作成できます。

## パラメータ
<a name="location-rule-action-parameters"></a>

このアクションを使用して AWS IoT ルールを作成するときは、次の情報を指定する必要があります。

`deviceId`  
位置データを提供するデバイスの一意の ID。詳細については、*「Amazon Location Service API リファレンス」*の「[https://docs.aws.amazon.com//location/latest/APIReference/API_DevicePositionUpdate.html](https://docs.aws.amazon.com//location/latest/APIReference/API_DevicePositionUpdate.html)」を参照してください。  
[置換テンプレート](iot-substitution-templates.md)をサポート: はい

`latitude`  
デバイスの位置の緯度を表す double 値として評価される文字列。  
[置換テンプレート](iot-substitution-templates.md)をサポート: はい

`longitude`  
デバイスの位置の経度を表す double 値として評価される文字列。  
[置換テンプレート](iot-substitution-templates.md)をサポート: はい

`roleArn`  
Amazon Location Service ドメインへのアクセスを許可する IAM ロール。詳細については、「[要件](#location-rule-action-requirements)」を参照してください。

`timestamp`  
位置データがサンプリングされた時刻。デフォルト値は MQTT メッセージが処理された時間です。  
`timestamp` 値は、次の 2 つの値で構成されます。  
+ `value`: 長いエポック時間の値を返す式。[time\$1to\$1epoch(String, String)](iot-sql-functions.md#iot-sql-function-time-to-epoch) 関数を使用して、メッセージペイロードで渡される日付または時刻の値から有効なタイムスタンプを作成できます。[置換テンプレート](iot-substitution-templates.md)のサポート: はい
+ `unit` (オプション): `value` で説明されている式の結果として生じるタイムスタンプ値の精度。有効な値: `SECONDS` \$1 `MILLISECONDS` \$1 `MICROSECONDS` \$1 `NANOSECONDS`。デフォルトは`MILLISECONDS`です。[置換テンプレート](iot-substitution-templates.md)をサポート: API および AWS CLI のみ。

`trackerName`  
Location が更新される Amazon Location トラッカーリソースの名前。詳細については、「*Amazon Location Service デベロッパーガイド*」の「[トラッカー](https://docs.aws.amazon.com//location/latest/developerguide/geofence-tracker-concepts.html#tracking-overview)」を参照してください。  
[置換テンプレート](iot-substitution-templates.md)をサポート: API および AWS CLI のみ

## 例
<a name="location-rule-action-examples"></a>

次の JSON の例では、 AWS IoT ルールで Location アクションを定義します。

```
{
	"topicRulePayload": {
		"sql": "SELECT * FROM 'some/topic'",
		"ruleDisabled": false,
		"awsIotSqlVersion": "2016-03-23",
		"actions": [
			{
				"location": {
					"roleArn": "arn:aws:iam::123454962127:role/service-role/ExampleRole",
					"trackerName": "MyTracker",
					"deviceId": "001",
					"sampleTime": {
						"value": "${timestamp()}",
						"unit": "MILLISECONDS"
					},
					"latitude": "-12.3456",
					"longitude": "65.4321"
				}
			}
		]
	}
}
```

次の JSON の例では、 AWS IoT ルールで置換テンプレートを使用して Location アクションを定義します。

```
{
	"topicRulePayload": {
		"sql": "SELECT * FROM 'some/topic'",
		"ruleDisabled": false,
		"awsIotSqlVersion": "2016-03-23",
		"actions": [
			{
				"location": {
					"roleArn": "arn:aws:iam::123456789012:role/service-role/ExampleRole",
					"trackerName": "${TrackerName}",
					"deviceId": "${DeviceID}",
					"timestamp": {
						"value": "${timestamp()}",
						"unit": "MILLISECONDS"
					},
					"latitude": "${get(position, 0)}",
					"longitude": "${get(position, 1)}"
				}
			}
		]
	}
}
```

次の MQTT ペイロードの例では、上記の例の置換テンプレートがデータにアクセスする方法を示しています。[https://docs.aws.amazon.com/cli/latest/reference/location/get-device-position-history.html](https://docs.aws.amazon.com/cli/latest/reference/location/get-device-position-history.html) CLI コマンドを使用して、MQTT ペイロードデータがロケーショントラッカーに配信されていることを確認できます。

```
{
	"TrackerName": "mytracker",
	"DeviceID": "001",
	"position": [
		"-12.3456",
		"65.4321"
	]
}
```

```
aws location get-device-position-history --device-id 001 --tracker-name mytracker
```

```
{
	"DevicePositions": [
		{
			"DeviceId": "001",
			"Position": [
				-12.3456,
				65.4321
			],
			"ReceivedTime": "2022-11-11T01:31:54.464000+00:00",
			"SampleTime": "2022-11-11T01:31:54.308000+00:00"
		}
	]
}
```

## 関連情報
<a name="location-rule-action-see-also"></a>
+ *Amazon Location Service デベロッパーガイド*の「[Amazon Location Service とは?](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html)」