

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

# トラッカーをデバイスの位置で更新する
<a name="send-location-updates"></a>

デバイスを追跡するには、デバイスの位置の更新をトラッカーに送信します。これらのデバイス位置やデバイス位置履歴は、後でトラッカーリソースから取得できます。

位置の更新には、デバイス ID、タイムスタンプ、位置が含まれている必要があります。他にも、精度や、キーと値がペアとなったメタデータを最大 3 つまで含めることもできます。

トラッカーが 1 つ以上のジオフェンスコレクションにリンクされている場合、(トラッカーに指定したフィルタリングルールに従って) それらのジオフェンスに対して更新が評価されます。デバイスがジオフェンスエリアに出入りした際は、EventBridge でイベントを受信します。これらの `ENTER` や `EXIT` のイベントには、デバイス ID、タイムスタンプ、関連するメタデータなどの位置の更新詳細が含まれます。

**注記**  
位置フィルターの詳細については、「[トラッカーを作成する](start-create-tracker.md)」を参照してください。  
ジオフェンスイベントの詳細については、「[Amazon EventBridge を使用して Amazon Location Service イベントに対応する](location-events.md)」を参照してください。

デバイスの更新を送信するには、以下のいずれかの方法を使用してください。
+ [MQTT 更新](tracking-using-mqtt.md)を AWS IoT Core リソースに送信し、トラッカーリソースにリンクします。
+ Amazon Location Trackers API、 AWS CLI、または Amazon Location API を使用して位置情報の更新を送信する。[AWS SDK](dev-sdks.md) を使用して、iOS または Android アプリケーションから API を呼び出すことができます。

------
#### [ API ]

**Amazon Location API を使用して位置更新を送信するには**

Amazon Location Trackers API の `[BatchUpdateDevicePosition](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointTracking_BatchUpdateDevicePosition.html)` オペレーションを使用してください。

次の例では、API リクエストを使用して *ExampleDevice *のデバイス位置更新を、*ExampleTracker* というトラッカーに送信します。

```
POST /tracking/v0/trackers/ExampleTracker/positions
Content-type: application/json
{
 "Updates": [
    {
    "DeviceId": "1",
    "Position": [
   -123.12245146162303, 49.27521118043802
    ],
    "SampleTime": "2022-10-24T19:09:07.327Z",
     "PositionProperties": { 
            "name" : "device1" 
         },
         "Accuracy": { 
            "Horizontal": 10
         }
    },

    {
    "DeviceId": "2",
    "Position": [
   -123.1230104928471, 49.27752402723152
    ],
    "SampleTime": "2022-10-02T19:09:07.327Z"
    },
    {
    "DeviceId": "3",
    "Position": [
    -123.12325592118916, 49.27340530543111
    ],
    "SampleTime": "2022-10-02T19:09:07.327Z"
    },
    {
    "DeviceId": "4",
    "Position": [
    -123.11958813096311, 49.27774641063121
    ],
    "SampleTime": "2022-10-02T19:09:07.327Z"
    },
    {
    "DeviceId": "5",
    "Position": [
    -123.1277418058896, 49.2765989015285
    ],
    "SampleTime": "2022-10-02T19:09:07.327Z"
    },
    {
    "DeviceId": "6",
    "Position": [
   -123.11964267059481, 49.274188155916534
    ],
    "SampleTime": "2022-10-02T19:09:07.327Z"
    }
    ]
}
```

------
#### [ AWS CLI ]

** AWS CLI コマンドを使用して位置更新を送信するには**

`[batch-update-device-position](https://docs.aws.amazon.com/cli/latest/reference/location/batch-update-device-position.html)` コマンドを使用します。

次の例では AWS CLI 、 を使用して *ExampleDevice-1* と *ExampleDevice-2* のデバイス位置の更新をトラッカー *ExampleTracker* に投稿します。

```
aws location batch-update-device-position \
--tracker-name ExampleTracker \
--updates '[{"DeviceId":"ExampleDevice-1","Position":[-123.123,47.123],"SampleTime":"2021-11-30T21:47:25.149Z"},{"DeviceId":"ExampleDevice-2","Position":[-123.123,47.123],"SampleTime":"2021-11-30T21:47:25.149Z","Accuracy":{"Horizontal":10.30},"PositionProperties":{"field1":"value1","field2":"value2"}}]'
```

------