プロアクティブイベントのスキーマ

プロアクティブイベントのスキーマ

プロアクティブイベントAPIは、以下で説明するイベントスキーマをサポートしています。プロアクティブイベントを使うようスキルサービスを設定する方法については、ProactiveEvents APIを参照してください。

イベントの命名規則とテンプレート

すべてのプロアクティブイベントスキーマでは、同じ形式が使用されます。イベント名はすべてAMAZON.というプレフィックスで始まります。これは名前空間名とそれに続くピリオド(.)です。名前の2番目の部分はイベントのタイプを表します。キャメルケースが使用され、その後にピリオド(.)が続きます。名前の3番目の部分はイベントの状態を表します。以下は、プロアクティブイベントのテンプレートの例です。

{
  "event": {
    "name": "AMAZON.EventNamePartOne.EventNamePartTwo",
    "payload": {
      "sampleAttribute": {
        "nestedStringAttribute": "sampleValue"
      },
      "anotherSampleAttribute": {
        "nestedIntegerAttribute": 1,
        "nestedFloatAttribute": 10.5
      }
    }
  }
}

イベントカタログ

次の表に、スキルで使用できるプロアクティブイベントタイプのリストを示します。AMAZON.OrderStatus.Updated、AMAZON.SocialGameInviteはen-USロケールのみサポートしています。

イベントの説明 通知の例 イベント名
天気の注意報や警報 お住まいの地域で大雪特別警報が発表されました。天気予報チャンネルからの通知です AMAZON.WeatherAlert.Activated
スポーツの試合速報 フルーツリーグのアップデート、オレンジズ1点、アップルズ2点 AMAZON.SportsEvent.Updated
メッセージのリマインダー 山田太郎からのメッセージが5件あります AMAZON.MessageAlert.Activated
注文の最新ステータス Your preorder from Amazon has been received.
Your order from Amazon has been received.
Your order from Amazon is being prepared.
Your order from Amazon has been shipped and will arrive by May 18, 2019.
Your order from Amazon is out for delivery and will arrive by May 20, 2019.
Your order from Amazon was delivered on May 2, 2019.
Your order from Amazon has been delivered.
AMAZON.OrderStatus.Updated
予約の確認 2019年5月10日のXYZ歯科での根管治療に関する予約は確認済みとなっています AMAZON.Occasion.Updated
ごみ収集のリマインダー 火曜日のゴミ収集は、びん、缶、ガラスです AMAZON.TrashCollectionAlert.Activated
メディアコンテンツの利用状況通知 「お宝ハンター」は、
2019年1月3日にAmazon Videoで放送されます
AMAZON.MediaContent.Available
ソーシャルゲームの招待の通知 Your friend John Stiles has invited you to a game of chess. AMAZON.SocialGameInvite.Available

AMAZON.WeatherAlert.Activated

目的: 天気の注意報や警報です。

ユーザー通知: "お住まいの地域で<weatherAlert.alertType>が発表されました。<weatherAlert.source>からの通知です"

ソースを指定しない場合、Alexaサービスによって「<weatherAlert.source>からの通知です」という文が省略されます。

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
weatherAlert 〇 WeatherAlert なし 天気の注意報や警報の情報を格納するオブジェクトです。
weatherAlert.source ✕ 文字列 ◯ 天気の注意報や警報情報のソースです。
weatherAlert.alertType 〇 WeatherAlertType なし 次のいずれかになります。 TORNADO、HURRICANE、SNOW_STORM、THUNDER_STORM

localizedAttributesのパラメーター

パラメーターは、localizedAttributes配列の各項目に使われます。各項目にはlocaleとsourceが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。ロケール固有の値を用意したlocalizedAttrributesのみが文字列になります。列挙値は自動的にローカライズされます。

名前 必須 型 説明
locale ◯ 列挙 サポートされるロケール(現在はen-USのみ)。
source 〇 文字列 情報発信者です。

例

{
  "event": {
    "name": "AMAZON.WeatherAlert.Activated",
    "payload": {
      "weatherAlert": {
        "source": "localizedattribute:source",
        "alertType": "TORNADO"
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "source": "Example Weather Corp"
    }
  ]
}

AMAZON.SportsEvent.Updated

目的: サッカーイベントの最新スコア

ユーザー通知:「<sportsEvent.eventLeague.name>のアップデート、<update.teamName>が得点しました。<sportsEvent.awayTeamStatistic.team.name><sportsEvent.awayTeamStatistic.score>点、<sportsEvent.homeTeamStatistic.team.name><sportsEvent.homeTeamStatistic.score>点」

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート
update ✕ Goal なし
update.scoreEarned 〇 整数 なし
update.teamName 〇 文字列 ✕
sportsEvent 〇 SportsEvent なし
sportsEvent.eventLeague 〇 Soccer なし
sportsEvent.eventLeague.name 〇 文字列 ◯
sportsEvent.homeTeamStatistic 〇 GameStatistic なし
sportsEvent.homeTeamStatistic.team 〇 SportsTeam なし
sportsEvent.homeTeamStatistic.team.name 〇 文字列 ✕
sportsEvent.homeTeamStatistic.score 〇 整数 なし
sportsEvent.awayTeamStatistic 〇 GameStatistic なし
sportsEvent.awayTeamStatistic.team 〇 SportsTeam なし
sportsEvent.awayTeamStatistic.team.name 〇 文字列 ✕
sportsEvent.awayTeamStatistic.score 〇 整数 なし

localizedAttributesのパラメーター

パラメーターは、localizedAttributes配列の各項目に使われます。各項目にはlocaleとeventLeagueNameが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。

名前 必須 型 説明
locale ◯ 列挙 サポートされるロケールのいずれかです。例:en-US、ja-JPなど
eventLeagueName 〇 文字列 イベントのリーグの名前です。

例

{
  "event": {
    "name": "AMAZON.SportsEvent.Updated",
    "payload": {
      "update": {
        "scoreEarned": 1,
        "teamName": "アップルズ"
      },
      "sportsEvent": {
        "eventLeague": {
          "name": "localizedattribute:eventLeagueName"
        },
        "homeTeamStatistic": {
          "team": {
            "name": "オレンジズ"
          },
          "score": 1
        },
        "awayTeamStatistic": {
          "team": {
            "name": "アップルズ"
          },
          "score": 2
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "ja-JP",
      "eventLeagueName": "フルーツリーグ"
    }
  ]
}

AMAZON.MessageAlert.Activated

目的: メッセージのリマインダーです。

ユーザー通知: 「<messageGroup.creator.name>からのメッセージが<messageGroup.count>件あります」

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
state 〇 MessageState なし メッセージの状態を表すオブジェクトです。
state.status 〇 MessageStatus ✕ 次のいずれかになります。 UNREAD、FLAGGED
state.freshness ✕ MessageFreshness なし 次のいずれかになります。 NEW、OVERDUE
messageGroup 〇 MessageGroup なし メッセージグループを表すオブジェクトです。
messageGroup.creator 〇 Person なし メッセージグループの作成者を表すオブジェクトです。
messageGroup.creator.name 〇 文字列 ✕ メッセージグループの作成者の名前です。
messageGroup.count 〇 整数 なし グループのメッセージの数です。

例

{
  "event": {
    "name": "AMAZON.MessageAlert.Activated",
    "payload": {
      "state": {
        "status": "UNREAD",
        "freshness": "NEW"
      },
      "messageGroup": {
        "creator": {
          "name": "山田太郎"
        },
        "count": 5
      }
    }
  }
}

AMAZON.OrderStatus.Updated

目的: 注文の最新ステータスです。

ユーザー通知: ユーザーエクスペリエンスはOrderStatusの列挙値によって変わります。

  • PREORDER_RECEIVED: Your preorder from <order.seller.name> has been received.
  • ORDER_RECEIVED: Your order from <order.seller.name> has been received.
  • ORDER_PREPARING: Your order from <order.seller.name> is being prepared.
  • ORDER_SHIPPED: Your order from <order.seller.name> has been shipped and will arrive by <state.deliveryDetails.expectedArrival>.
  • ORDER_OUT_FOR_DELIVERY: Your order from <order.seller.name> is out for delivery and will arrive by <state.deliveryDetails.expectedArrival>.
  • ORDER_DELIVERED: Your order from <order.seller.name> was delivered on <state.deliveredOn>.
  • ORDER_DELIVERED: Your order from <order.seller.name> has been delivered.

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
state 〇 OrderState なし 注文の状態を表すオブジェクトです。
state.status 〇 OrderStatus なし 次のいずれかになります。 PREORDER_RECEIVED、ORDER_RECEIVED、ORDER_PREPARING、ORDER_SHIPPED、ORDER_OUT_FOR_DELIVERY、ORDER_OUT_FOR_DELIVERY、ORDER_DELIVERED
state.enterTimeStamp ✕ dateTime なし イベントの時刻です。値の例: 20190915T182219Z
state.deliveryDetails ✕ ParcelDelivery なし 配達の詳細を表すオブジェクトです。
order 〇 Order ✕ 注文を表すオブジェクトです。
order.seller ◯ Seller ✕ 注文の販売事業者を表すオブジェクトです。
order.seller.name ◯ 文字列 ◯ 注文の販売事業者の名前です。

localizedAttributesのパラメーター

パラメーターは、localizedAttributes配列の各項目に使われます。各項目にはlocaleとsellerNameが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。

名前 必須 型 説明
locale ◯ 列挙 サポートされるロケール(現在はen-USのみ)。
sellerName ◯ 文字列 販売事業者の名前です。

例

Your preorder from <order.seller.name> has been received:

{
  "event": {
    "name": "AMAZON.OrderStatus.Updated",
    "payload": {
      "state": {
        "status": "PREORDER_RECEIVED"
      },
      "order": {
        "seller": {
          "name": "localizedattribute:sellerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "sellerName": "Amazon"
    }
  ]
}

Your order from <order.seller.name> has been received:

{
  "event": {
    "name": "AMAZON.OrderStatus.Updated",
    "payload": {
      "state": {
        "status": "ORDER_RECEIVED"
      },
      "order": {
        "seller": {
          "name": "localizedattribute:sellerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "sellerName": "Amazon"
    }
  ]
}

Your order from <order.seller.name> has been shipped and will arrive <date>:

{
  "event": {
    "name": "AMAZON.OrderStatus.Updated",
    "payload": {
      "state": {
        "status": "ORDER_SHIPPED",
        "deliveryDetails": {
          "expectedArrival": "2018-11-23T18:25:43.511Z"
        }
      },
      "order": {
        "seller": {
          "name": "localizedattribute:sellerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "sellerName": "Amazon"
    }
  ]
}

Your order from <order.seller.name> is out for delivery, and will arrive by <datetime>:

{
  "event": {
    "name": "AMAZON.OrderStatus.Updated",
    "payload": {
      "state": {
        "status": "ORDER_OUT_FOR_DELIVERY",
        "deliveryDetails": {
          "expectedArrival": "2018-11-23T18:25:43.511Z"
        }
      },
      "order": {
        "seller": {
          "name": "localizedattribute:sellerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "sellerName": "Amazon"
    }
  ]
}

Your order from <order.seller.name> was delivered <date>:

{
  "event": {
    "name": "AMAZON.OrderStatus.Updated",
    "payload": {
      "state": {
        "status": "ORDER_DELIVERED",
        "deliveredOn": "2018-11-23T18:25:43.511Z"
      },
      "order": {
        "seller": {
          "name": "localizedattribute:sellerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "sellerName": "Amazon"
    }
  ]
}

Your order from <order.seller.name> has been delivered:

{
  "event": {
    "name": "AMAZON.OrderStatus.Updated",
    "payload": {
      "state": {
        "status": "ORDER_DELIVERED"
      },
      "order": {
        "seller": {
          "name": "localizedattribute:sellerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "sellerName": "Amazon"
    }
  ]
}

AMAZON.Occasion.Updated

目的: 予約の確認です。

ユーザー通知: 「<occasion.bookingTime>の<occasion.provider.name>での<occasion.subject>に関する<occasion.occasionType>は<state.confirmationStatus>となっています。

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
state ◯ ConfirmationState なし 注文の状態を表すオブジェクトです。
state.confirmationStatus ◯ ConfirmationStatus ✕ 次のいずれかになります。 CONFIRMED、CANCELED、RESCHEDULED、REQUESTED、CREATED、UPDATED
occasion ◯ Occasion なし 行事を表すオブジェクトです。
occasion.occasionType ◯ OccasionType ✕ 次のいずれかになります。 RESERVATION_REQUEST、RESERVATION、APPOINTMENT_REQUEST、APPOINTMENT
occasion.subject ◯ 文字列 ◯ 行事のタイトルです。
occasion.provider ◯ Organization なし 行事の提供者を表すオブジェクトです。
occasion.provider.name ◯ 文字列 ◯ 行事の提供者の名前です。
occasion.bookingTime ◯ dateTime ✕ 行事の予約日時です。例: 20190415T162219Z
occasion.broker ✕ Skill なし 行事の仲介者を表すオブジェクトです。
occasion.broker.name ◯ 文字列 ◯ 行事の仲介者の名前です。

localizedAttributesのパラメーター

パラメーターは、localizedAttributes配列の各項目に使われます。配列の項目はサポートされるロケールごとに存在します。

名前 必須 型 説明
locale ◯ 列挙 サポートされるロケールのいずれかです。例:en-US、ja-JPなど
subject ◯ 文字列 予約の説明(「根管治療」など)です。
providerName ◯ 文字列 提供者の名前(医師名やレストラン名など)です。
brokerName ◯ 文字列 仲介者の名前です。providerNameと同じ場合または第三者の場合があります。

例

{
  "event": {
    "name": "AMAZON.Occasion.Updated",
    "payload": {
      "state": {
        "confirmationStatus": "CONFIRMED"
      },
      "occasion": {
        "occasionType": "APPOINTMENT",
        "subject": "localizedattribute:subject",
        "provider": {
          "name": "localizedattribute:providerName"
        },
        "bookingTime": "2018-11-20T19:16:31Z",
        "broker": {
          "name": "localizedattribute:brokerName"
        }
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "ja-JP",
      "subject": "根管治療",
      "providerName": "XYZ歯科",
      "brokerName": "XYZ歯科"
    }
  ]
}

AMAZON.TrashCollectionAlert.Activated

目的: ごみ収集のリマインダーです。

ユーザー通知: 「<alert.collectionDayOfWeek>のゴミ収集は<alert.garbageTypes*>です」

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
alert ◯ TrashCollectionAlert なし ごみ収集のアラートを表すオブジェクトです。
alert.garbageTypes ◯ GarbageType[] ✕ GarbageType値のリストです。配列サイズは1~5です。次の値が想定されます。 BOTTLES、BULKY、BURNABLE、CANS、CLOTHING、COMPOSTABLE、CRUSHABLE、GARDEN_WASTE、GLASS、HAZARDOUS、HOME_APPLIANCES、KITCHEN_WASTE、LANDFILL、PET_BOTTLES、RECYCLABLE_PLASTICS、WASTE_PAPER
alert.collectionDayOfWeek ◯ DayOfWeek ✕ 次のいずれかになります。 MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY、SUNDAY

イベント

{
  "event": {
    "name": "AMAZON.TrashCollectionAlert.Activated",
    "payload": {
      "alert": {
        "garbageTypes": [
          "COMPOSTABLE",
          "RECYCLABLE_PLASTICS"
        ],
        "collectionDayOfWeek": "TUESDAY"
      }
    }
  }
}

AMAZON.MediaContent.Available

目的: 特定の作品が利用可能になる日時と、そのプロバイダーに関する情報を提供します。

ユーザー通知:「<content.name>は、<availability.startTime>に<availability.provider.name>で<availability.method>されます」

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
availability ◯ Availability なし 利用可能状況に関する情報を提供するオブジェクトです。
availability.startTime ◯ dateTime ✕ 利用可能開始日です。例: 2020-11-20T21:00:00Z
availability.provider ✕ Thing なし プロバイダー情報を表すオブジェクトです。
availability.provider.name ◯ 文字列 ◯ プロバイダー名です。
availability.method ◯ DistributionMethod 配信方法です。次のいずれかになります。 STREAM、AIR、RELEASE、PREMIERE、DROP
content ◯ CreativeWork なし 作品に関する情報を含むオブジェクトです。
content.name ◯ 文字列 ◯ 作品名です。
content.contentType ◯ MediaTypes ✕ 次のいずれかになります。 BOOK、EPISODE、ALBUM、SINGLE、MOVIE、GAME

localizedAttributesのパラメーター

これらのパラメーターは、localizedAttributes配列の各項目に使われます。各項目にはlocale、providerName、contentNameが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。

名前 必須 型 説明
locale ◯ 列挙 サポートされるロケールのいずれかです。例:en-US、ja-JPなど
providerName ◯ 文字列 コンテンツプロバイダー名(「Amazon Video」など)です。
contentName ◯ 文字列 コンテンツの名前(「お宝ハンター」など)です。

イベント

{
  "event": {
    "name": "AMAZON.MediaContent.Available",
    "payload": {
      "availability": {
        "startTime": "2028-11-20T21:00:00Z",
        "provider": {
          "name": "localizedattribute:providerName"
        },
        "method": "AIR"
      },
      "content": {
        "name": "localizedattribute:contentName"
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "ja-JP",
      "providerName": "Amazon Video",
      "contentName": "お宝ハンター"
    }
  ]
}

AMAZON.SocialGameInvite.Available

目的: ゲームへの招待の通知を送信します。

ユーザー通知: 「Your <invite.inviter.relationshipToInvitee> <invite.inviter.name> has <invite.inviteType> you to a <game.offer> of <game.name>.」

payloadのパラメーター

payloadオブジェクトのパラメーターです。

名前 必須 型 複数ロケールのサポート 説明
invite ◯ GameInvite なし 招待の情報を含むオブジェクトです。
invite.inviter ◯ Person なし 招待者に関する情報を含むオブジェクトです。
invite.inviter.name ◯ 文字列 ✕ 招待者の名前です。
invite.inviter.relationshipToInvitee ◯ 列挙 ✕ 次のいずれかになります。 FRIEND、CONTACT
invite.inviter.inviteType ◯ 列挙 ✕ 次のいずれかになります。 CHALLENGE、INVITE
game ◯ Game なし ゲームの情報を含むオブジェクトです。
game.offer ◯ OfferType ✕ 次のいずれかになります。 MATCH、REMATCH、GAME
game.name ◯ 文字列 ◯ ゲームの名前です。

localizedAttributesのパラメーター

これらのパラメーターは、localizedAttributes配列の各項目に使われます。各項目にはlocaleとgameNameが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。

名前 必須 型 説明
locale ◯ 列挙 サポートされるロケール(現在はen-USのみ)。
gameName ◯ 文字列 ゲーム名です(ロケールごとに異なる名前を指定できます)。

イベント

{
  "event": {
    "name": "AMAZON.SocialGameInvite.Available",
    "payload": {
      "invite": {
        "relationshipToInvitee": "FRIEND",
        "inviter": {
          "name": "Max"
        },
        "inviteType": "CHALLENGE"
      },
      "game": {
        "offer": "GAME",
        "name": "localizedattribute:gameName"
      }
    }
  },
  "localizedAttributes": [
    {
      "locale": "en-US",
      "gameName": "The Red"
    }
  ]
}

このページは役に立ちましたか?