Amazon Location Service 事件 EventBridge - Amazon Location Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon Location Service 事件 EventBridge

亞馬遜 EventBridge 是一種無伺服器事件匯流排,可使用來自的資料,有效地將應用程式連接AWS亞馬遜位置等服務。 EventBridge 從亞馬遜位置接收地理圍欄事件,並將數據路由到類似的目標AWS Lambda。您可設定路由規則來決定要將資料送往何處,以便建立即時做出反應的應用程式架構。

如需詳細資訊,請參閱「」事件和事件模式Amazon EventBridge 使用者指南

為亞馬遜地點創建事件規則

您可以建立每個活動匯流排最多 300 個規則在 EventBridge 設定針對 Amazon 位置事件所採取的動作。

例如,您可以為地理圍欄事件建立規則,當在地理圍欄邊界內偵測到電話時,將傳送推播通知。

建立 Amazon Location Service 事件的規則

使用下列數值,建立 EventBridge 規則根據亞馬遜位置事件:

  • 針對 Rule type (規則類型) 選擇 Rule with an event pattern (具有事件模式的規則)。

  • 在 中事件模式」方塊中,加入下列模式:

    { "source": ["aws.geo"], "detail-type": ["Location Geofence Event"] }

    您可以選擇性地指定ENTER或者EXIT事件:新增detail標籤:

    { "source": ["aws.geo"], "detail-type": ["Location Geofence Event"], "detail": { "EventType": ["ENTER"] } }
  • 適用於選取目標中,選擇從 Amazon Location Service 收到地理圍欄事件時,要採取的目標動作。

    例如,使用 Amazon Simple Notification Service (SNS) 主題,在事件發生時,傳送電子郵件或文字訊息。您首先需要使用 Amazon SNS 主控台建立 Amazon SNS 主題。如需詳細資訊,請參閱「」使用 Amazon SNS 傳送使用者通知

警告

最佳做法是確認事件規則已成功套用,或您的自動化動作可能無法如預期般啟動。若要驗證您的事件規則,請啟動事件規則的條件。例如,模擬進入地理圍欄區域的設備。

您還可以從亞馬遜位置捕獲所有事件,只需排除detail-type區段。例如:

{ "source": [ "aws.geo" ] }
注意

同一個事件可以傳遞一次以上。您可以使用事件 ID 來刪除接收到的事件的重複資料。

亞馬遜 EventBridge Amazon Location Service 的事件範例

以下是對發出輸入呼叫起始之地理圍欄的事件的範例BatchUpdateDevicePosition

{ "version": "0", "id": "aa11aa22-33a-4a4a-aaa5-example", "detail-type": "Location Geofence Event", "source": "aws.geo", "account": "636103698109", "time": "2020-11-10T23:43:37Z", "region": "eu-west-1", "resources": [ "arn:aws:geo:eu-west-1:0123456789101:geofence-collection/GeofenceEvents-GeofenceCollection_EXAMPLE", "arn:aws:geo:eu-west-1:0123456789101:tracker/Tracker_EXAMPLE" ], "detail": { "EventType": "ENTER", "GeofenceId": "polygon_14", "DeviceId": "Device1-EXAMPLE", "SampleTime": "2020-11-10T23:43:37.531Z", "Position": [ -123.12390073297821, 49.23433613216247 ], "Accuracy": { "Horizontal": 15.3 }, "PositionProperties": { "ExampleKey": "ExampleField" } } }

以下是對發出退出由呼叫起始之地理圍欄的事件的範例BatchUpdateDevicePosition

{ "version": "0", "id": "aa11aa22-33a-4a4a-aaa5-example", "detail-type": "Location Geofence Event", "source": "aws.geo", "account": "123456789012", "time": "2020-11-10T23:41:44Z", "region": "eu-west-1", "resources": [ "arn:aws:geo:eu-west-1:0123456789101:geofence-collection/GeofenceEvents-GeofenceCollection_EXAMPLE", "arn:aws:geo:eu-west-1:0123456789101:tracker/Tracker_EXAMPLE" ], "detail": { "EventType": "EXIT", "GeofenceId": "polygon_10", "DeviceId": "Device1-EXAMPLE", "SampleTime": "2020-11-10T23:41:43.826Z", "Position": [ -123.08569321875426, 49.23766166742559 ], "Accuracy": { "Horizontal": 15.3 }, "PositionProperties": { "ExampleKey": "ExampleField" } } }