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


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

プロアクティブイベント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 なし 次のいずれかになります。 TORNADOHURRICANESNOW_STORMTHUNDER_STORM

localizedAttributesのパラメーター

パラメーターは、localizedAttributes配列の各項目に使われます。各項目にはlocalesourceが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。ロケール固有の値を用意した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配列の各項目に使われます。各項目にはlocaleeventLeagueNameが含まれます。このため、配列の項目はサポートされるロケールごとに存在します。

名前 必須 説明
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 次のいずれかになります。 UNREADFLAGGED
state.freshness MessageFreshness なし 次のいずれかになります。 NEWOVERDUE
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_RECEIVEDORDER_RECEIVEDORDER_PREPARINGORDER_SHIPPEDORDER_OUT_FOR_DELIVERYORDER_OUT_FOR_DELIVERYORDER_DELIVERED
state.enterTimeStamp dateTime なし イベントの時刻です。値の例: 20190915T182219Z
state.deliveryDetails ParcelDelivery なし 配達の詳細を表すオブジェクトです。
order Order 注文を表すオブジェクトです。
order.seller Seller 注文の販売事業者を表すオブジェクトです。
order.seller.name 文字列 注文の販売事業者の名前です。

localizedAttributesのパラメーター

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

名前 必須 説明
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 次のいずれかになります。 CONFIRMEDCANCELEDRESCHEDULEDREQUESTEDCREATEDUPDATED
occasion Occasion なし 行事を表すオブジェクトです。
occasion.occasionType OccasionType 次のいずれかになります。 RESERVATION_REQUESTRESERVATIONAPPOINTMENT_REQUESTAPPOINTMENT
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です。次の値が想定されます。 BOTTLESBULKYBURNABLECANSCLOTHINGCOMPOSTABLECRUSHABLEGARDEN_WASTEGLASSHAZARDOUSHOME_APPLIANCESKITCHEN_WASTELANDFILLPET_BOTTLESRECYCLABLE_PLASTICSWASTE_PAPER
alert.collectionDayOfWeek DayOfWeek 次のいずれかになります。 MONDAYTUESDAYWEDNESDAYTHURSDAYFRIDAYSATURDAYSUNDAY

イベント

{
  "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 配信方法です。次のいずれかになります。 STREAMAIRRELEASEPREMIEREDROP
content CreativeWork なし 作品に関する情報を含むオブジェクトです。
content.name 文字列 作品名です。
content.contentType MediaTypes 次のいずれかになります。 BOOKEPISODEALBUMSINGLEMOVIEGAME

localizedAttributesのパラメーター

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

名前 必須 説明
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 列挙 次のいずれかになります。 FRIENDCONTACT
invite.inviter.inviteType 列挙 次のいずれかになります。 CHALLENGEINVITE
game Game なし ゲームの情報を含むオブジェクトです。
game.offer OfferType 次のいずれかになります。 MATCHREMATCHGAME
game.name 文字列 ゲームの名前です。

localizedAttributesのパラメーター

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

名前 必須 説明
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"
    }
  ]
}

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