Brightcove Media API の find_modified_videos メソッドは、指定した時間以降に作成、更新、削除された動画を検索するのに便利です。返された動画を MRSS 形式で出力すれば、新しいコンテンツをアピールするフィードを作成できます。このメソッドでは、非アクティブな動画、公開期間外の動画、削除された動画を取得することもできます。
Media API リファレンスに、find_modified_videos メソッドで使用されている全パラメータの説明があります。このメソッドのシグネチャは以下のとおりです。
find_modified_videos(token:String, from_date:Integer, filter:List, page_size:Integer, page_number:Integer, sort_by:SortByType, sort_order:SortOrderType, get_item_count:Boolean, video_fields:Set, custom_fields:Set):ItemCollection
読み取りメソッドなので、お持ちのアカウントの Media API 読み取りトークンを使用してください。
from_date プロパティは、返してほしい動画のもっとも古い変更日時です。UNIX エポック(1970 年 1 月 1 日 00:00:00 GMT)からの経過時間を分単位の値で表現します。人が読める日付形式を UNIX 日付形式(秒単位)に変換するユーティリティは、このリンクをクリックしてください(Web には、epochconverter.com など、その他多数のユーティリティがあります)。分単位の値を得るには、この結果を 60 で割る必要があります。
オプションのfilterプロパティでは、返す動画の状態を指定します。返してほしい動画の状態を、カンマ区切りリストで filter プロパティに設定します。各動画は、ある時点では PLAYABLE、INACTIVE、DELETED のうち、いずれか 1 つの状態となります。ただし動画は、上記 3 つのうちいずれかの状態で、なおかつ UNSCHEDULED になることもあります。以前の動画の状態について情報を返しません。そのため動画が INACTIVE、続いて DELETED に設定された場合、INACTIVE ではなく DELETED でフィルタリングすることによってのみ返されます。動画の状態の値は大文字と小文字が区別されません。したがって、PLAYABLE、playable、PlAyAbLe は同じです。filter プロパティとして有効な値は以下のとおりです。
| 値 | 説明 |
|---|---|
| PLAYABLE | 現時点で再生が可能な動画。呼び出しの時点で非アクティブな動画、削除されている動画、有効な公開期間内でない動画は除外されます。filter プロパティの値を指定しない場合は、デフォルトで PLAYABLE になります。 |
| INACTIVE | 非アクティブ状態になっている動画。これらの動画は組み込むことはできますが、プレーヤでは表示されず、再生もされません。 |
| DELETED | 削除状態の動画。Brightcove では、削除された動画を無期限に追跡します。 |
| UNSCHEDULED | この状態には、公開期間が割り当てられているが呼び出し時点では公開期間外だった動画と、公開期間が割り当てられていない動画が含まれます。 |
find_modified_videos メソッドの使用方法の具体例をいくつか示します。
http://api.brightcove.co.jp/services/library?
token=J4JaPuaOCKkGsy-yrLR9ApnSX4u25dw4R2ihzeedEZA.
&command=find_modified_videos&get_item_count=true
&video_fields=name,lastModifiedDate,startDate
&from_date=0&filter=DELETED
from_date を 0 に設定すると、削除されたアイテムをすべて返してほしいという意味になります。
http://api.brightcove.co.jp/services/library?
token=J4JaPuaOCKkGsy-yrLR9ApnSX4u25dw4R2ihzeedEZA.
&command=find_modified_videos&get_item_count=true
&video_fields=name,lastModifiedDate,startDate
&from_date=20380320&filter=UNSCHEDULED