「媒體動作」動態饋給是包含一組實體的 JSON 物件。實體是 schema.org 物件,代表目錄中的項目:電視劇集、電視影集、電影、歌曲、專輯等。
![](https://developers.google.cn/actions/media/images/image-media-actions-29.jpg?authuser=9&hl=zh-tw)
動態饋給結構
觀看動作和收聽行動有不同的資訊提供結構。
觀看動作的階層如下: |
監聽動作具有下列階層: |
資料動態饋給信封
資料動態饋給信封是媒體動作動態饋給中的頂層物件。物件包含內容標記物件 (實體) 陣列,代表目錄中所有的內容。
資料動態饋給信封支援下列屬性:
屬性 | 類型 | 說明 |
---|---|---|
@context |
網址 | 必要 - 設為 http://schema.org |
@type |
文字 | 必要 - 設為 DataFeed 。 |
dateModified |
DateTime | 必要:動態饋給上次修改的日期和時間,採用 ISO 8601 格式 (包括時區)。 |
dataFeedElement |
Thing 的子類型 | 必要 - 媒體目錄的實體。 |
資料動態饋給信封範本
{
"@context": "http://schema.org",
"@type": "DataFeed",
"dateModified": "2018-07-20T00:44:51Z",
"dataFeedElement": [
{ <CONTENT MARKUP OBJECT 01> },
{ <CONTENT MARKUP OBJECT 02> },
{ <CONTENT MARKUP OBJECT 03> },
...
]
}
內容標記
內容標記物件代表目錄中的單一實體:電影、電視劇集、電視影集、歌曲、專輯、廣播電台等。這個物件包含內容的ID 和標準網址,且有助於透過中繼資料描述內容。
內容標記範本
內容標記物件可以具有 Action 標記物件的陣列,讓內容與多個「動作」標記物件建立關聯。例如,內容在每個地區可以有不同的「動作」標記物件。
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "Movie",
"@id": "http://www.example.com/my_favorite_movie",
"url": "http://www.example.com/my_favorite_movie",
"name": "My Favorite Movie",
"potentialAction": [
{ <ACTION MARKUP OBJECT 01> },
{ <ACTION MARKUP OBJECT 02> }
],
...
}
動作標記
動作標記物件說明瞭可將使用者導向內容的深層連結,以及內容所需的存取層級。這個物件是內容標記物件的屬性 (potentialAction
)。
有兩種方法可以指定存取限制:
動作標記範本
如果內容有多個深層連結,動作標記物件就會包含多個目標物件。舉例來說,內容在 iOS 和 Android 的深層連結可能不同。此外,如果根據地區和時間範圍有不同的存取限制,單一動作標記物件可能會有多個 Action 存取規格物件或優惠物件,如以下範本所示。
觀看動作的動作標記物件範本:
"potentialAction": {
"@type": "WatchAction",
"target": [
{ <TARGET OBJECT 01> },
{ <TARGET OBJECT 02> }
],
"actionAccessibilityRequirement": [
{ <ACTION ACCESSIBILITY OBJECT 01> },
{ <ACTION ACCESSIBILITY OBJECT 02> }
]
}
監聽動作的動作標記物件範本:
"potentialAction": {
"@type": "ListenAction",
"target": [
{ <TARGET OBJECT 01> },
{ <TARGET OBJECT 02> }
],
"expectsAcceptanceOf": [
{ <OFFER OBJECT 01> },
{ <OFFER OBJECT 02> }
]
}
目標
目標物件提供與各種 Google 平台的深層連結對應。這個物件是 Action 標記物件的屬性 (target
)。
目標範例
如果內容根據平台有多個深層連結,請建立多個目標物件來提供不同的對應。舉例來說,該內容在 Chromecast 上的深層連結可能與其他平台不同深層連結,如下方範例所示。
目標物件 (基本) 範例:
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.org/IOSPlatform",
"http://schema.googleapis.com/GoogleVideoCast"
]
}
含有兩個深層連結的目標物件範例:
"target": [
{
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.org/IOSPlatform"
]
},
{
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/cast/my_favorite_movie?autoplay=true",
"actionPlatform": [
"http://schema.googleapis.com/GoogleVideoCast"
]
}
]
動作存取權規格
動作存取規格物件說明瞭
提供相關內容物件是屬性
actionAccessibilityRequirement
,或
動作標記物件。
物件的 category
可以是下列任一項目:
nologinrequired
free
subscription
externalsubscription
rental
使用 offer 物件來指定價格。
purchase
使用 offer 物件來指定價格。
媒體訂閱
媒體訂閱物件會詳細說明所需的訂閱項目
內容。物件是 requiresSubscription
的屬性
動作存取規格物件。這是
如果 actionAccessibilityRequirement.category
為 subscription
或
externalSubscription
,您的訂閱方案包含多項
方案、級別或附加支援如果您的
訂閱方案採單層式訂閱,可讓使用者存取你目錄中的所有內容,
媒體訂閱範例
媒體訂閱物件範例:
"requiresSubscription": {
"@type": "MediaSubscription",
"@id": "http://www.example.com/premium_subscription",
"name": "Example Premium",
"sameAs": "http://www.example.com/premium_subscription"
}
優惠
優惠物件會說明與內容相關聯的價格。這個物件是以下物件的屬性 (expectsAcceptanceOf
):
優惠範例
觀看動作會指定 expectsAcceptanceOf
屬性的
動作存取規格物件:
"potentialAction":{
"@type":"WatchAction",
"target":{
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/my_favorite_movie?autoplay=true",
"actionPlatform":[ "http://schema.org/DesktopWebPlatform" ]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "purchase",
"availabilityStarts": "2019-01-01T00:00Z",
"availabilityEnds": "2019-12-31T00:00Z",
"eligibleRegion": {
"@type": "Country",
"name": "US"
},
"expectsAcceptanceOf": {
"@type": "Offer",
"price": 7.99,
"priceCurrency": "USD",
"seller": {
"@type": "Organization",
"name": "My example seller"
}
}
}
}
監聽動作可直接在 Action 標記物件中指定 expectsAcceptanceOf
屬性:
"potentialAction":{
"@type":"ListenAction",
"target":{
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/playlist/top_pop_songs?autoplay=true",
"actionPlatform":[ "http://schema.org/DesktopWebPlatform" ]
},
"expectsAcceptanceOf":{
"@type": "Offer",
"eligibleRegion": {
"@type":"Country",
"name":"US"
},
"category": "subscription",
"name": "Example Music",
"price": 9.99,
"priceCurrency": "USD",
"seller": {
"@type": "Organization",
"name": "My example seller",
"sameAs": "http://www.example.com"
}
}
}
圖片
圖片物件是指與內容相關聯的圖片。
圖片規定如下:
- 針對觀看動作,請提供高解析度 (至少 140x210 像素) 且長寬比為 2:3 的高解析度圖片。
- 圖片必須採用
.jpg
或.png
格式。
- 圖片必須採用
- 針對收聽動作,請提供高解析度 (至少 300x300 像素) 且長寬比為 1x1 的高解析度圖片。
- 建議採用 600x600 像素或更高像素。
- 圖片必須採用
.jpg
、.png
或.gif
格式。
- 圖片網址必須可供檢索和建立索引。
- 您必須擁有圖片的使用權利,並允許圖片顯示在 Google 裝置和資源上。
- 圖片不得包含下列內容:
- 模糊、像素化、旋轉或品質不佳的圖片。
- 未經授權或圖庫相片。
- 裸露。
- 非法內容。
- 更新
MusicPlaylist
時,請更新映像檔以反映新內容。
圖片範例
"image": {
"@type": "ImageObject",
"contentUrl" : "http://www.example.com/artist/my_favorite_artist/1x1/photo1.jpg",
"dateModified" : "2019-01-05T22:11:33+00:00",
"regionsAllowed" : ["US","UK","MX"]
}
動態饋給範例
以下示例顯示了動態饋給結構 觀看動作和收聽動作。
觀看動作範例
{
"@context": "http://schema.org",
"@type": "DataFeed",
"dateModified": "2018-07-20T00:44:51Z",
"dataFeedElement": [
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "Movie",
"@id": "http://www.example.com/my_favorite_movie",
"url": "http://www.example.com/my_favorite_movie",
"name": "My Favorite Movie",
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
"inLanguage": "en",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.org/IOSPlatform",
"http://schema.googleapis.com/GoogleVideoCast"
]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "subscription",
"availabilityStarts": "2018-07-21T10:35:29Z",
"availabilityEnds": "2019-10-21T10:35:29Z",
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
},
{
"@type": "Country",
"name": "CA"
}
],
}
},
"sameAs": "https://en.wikipedia.org/wiki/my_favorite_movie",
"releasedEvent": {
"@type": "PublicationEvent",
"startDate": "2008-01-20",
"location": {
"@type": "Country",
"name": "US"
}
},
"description": "This is my favorite movie.",
"actor": [
{
"@type": "Person",
"name": "John Doe",
"sameAs": "https://en.wikipedia.org/wiki/John_Doe"
},
{
"@type": "Person",
"name": "Jane Doe",
"sameAs": "https://en.wikipedia.org/wiki/Jane_Doe"
}
],
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "IMDB_ID",
"value": "tt0123456"
}
]
}
]
}
「收聽動作」範例
{
"@context": "http://schema.org",
"@type": "DataFeed",
"dateModified": "2018-07-20T00:44:51Z",
"dataFeedElement": [
{
"@context":"http://schema.googleapis.com/",
"@type":"MusicGroup",
"@id":"http://www.example.com/artist/my_favorite_artist/",
"url":"http://www.example.com/artist/my_favorite_artist/",
"name":"My Favorite Artist",
"sameAs":"https://en.wikipedia.org/wiki/my_favorite_artist",
"description":"This is my favorite pop music artist.",
"potentialAction": {
"@type":"ListenAction",
"target": {
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/artist/my_favorite_artist?autoplay=true",
"actionPlatform":[
"http://schema.org/DesktopWebPlatform",
"http://schema.org/IOSPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.googleapis.com/GoogleAudioCast",
"http://schema.googleapis.com/GoogleVideoCast"
]
},
"expectsAcceptanceOf":{
"@type":"Offer",
"category":"subscription",
"eligibleRegion": {
"@type":"Country",
"name":"US"
},
"price": 8.99,
"priceCurrency": "USD"
}
},
"subjectOf": {
"@type":"MusicPlaylist",
"@id":"http://www.example.com/artist_mix/my_favorite_artist/",
"url":"http://www.example.com/artist_mix/my_favorite_artist/",
"name":"My Favorite Artist Mix",
"description":"A mix of music similar to My Favorite Artist",
"potentialAction":{
"@type":"ListenAction",
"target": {
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/artist_mix/my_favorite_artist?autoplay=true",
"actionPlatform":[
"http://schema.org/DesktopWebPlatform",
"http://schema.org/IOSPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.googleapis.com/GoogleAudioCast",
"http://schema.googleapis.com/GoogleVideoCast"
]
},
"expectsAcceptanceOf":{
"@type":"Offer",
"category":"free",
"eligibleRegion": {
"@type":"Country",
"name":"US"
}
}
}
}
}
]
}