アクションを投稿するには、アプリケーションにアクションを登録する必要があります。dev appのOpen Graphタブから登録可能です。


Define Actions

アクションを生成するには、Dashboardの"Create New Action"ボタンをクリックし、ユーザがアプリケーション上で行うことができる"動詞"を登録します。


attachment

ダイアログに動詞を入力します。


attachment2


Configuring Actions

アクション名を入力すると、アクションプロパティの設定ができるようになります。


attachment3

  1. Basic information:
    1. Nameフィールドは最初のステップで入力した動詞で補完されています。例えば、read, bake, runなどです。
    2. Connected Objectsは、このアクションの対象となるオブジェクトタイプを示します。アプリケーションにオブジェクトタイプが登録済みであれば、それをここに足すことができます。また、ビルトインのオブジェクトタイプを足すことも可能です。
  2. Action Instance Properties: これらはインスタンス毎にアクションに指定することができるプロパティです。以下のフィールドを用いてサンプルデータを入力し、プレビュー表示できます。アクションにカスタムプロパティを追加するには、例えばレシピの点数であれば、Action APIに従ってアクションを生成します。
    1. Start Timeフィールドはサンプルアクションの開始時刻を指定できます。これはNews Feed投稿で動詞の時制を制御するのに使われます。これはISO-8601 date-time形式に則ります。
    2. Expires in(秒数)フィールドは、サンプルアクションが終了するまでの期間を指定するのに使います。これはNews Feed投稿で動詞の時制を制御するのに使われます。
    3. End Timeフィールドはサンプルアクションの終了時刻を表すのに使います。これはNews Feed投稿で動詞の時制を制御するのに使われます。これはISO-8601 date-time形式に則ります。
    4. Placeフィールドにはサンプルアクションの位置情報を指定できます。これはNews Feed投稿に位置情報を追加するときに使います。入力される情報はFacebook Place IDと一致する必要があります。
    5. Tagsフィールドは一人以上のFacebookユーザをサンプルアクションにタグ付けするのに使います。News Feed投稿にタグ情報を追加することができます。カンマ区切りのFacebookユーザIDを入力してください。
    6. Imageフィールドはサンプルアクションの画像を指定するとき使います。News Feed投稿に紐づけられる画像を制御することができます。画像が指定されていない場合、オブジェクトに対応する画像が表示されます。
    7. Referenceフィールドにはサンプルアクションの参照を指定します。このパラメータはサンプルアクションと紐づけられ、App Insightsで統計情報を追うときに利用できます。
    8. User Messageフィールドは、アクションのNews Feed投稿に表示されるメッセージを指定できます。
    9. 必要に応じてCustom Action Instance Propertiesを追加してください。これにより、追加のアクションタイププロパティを追加し、プロパティタイプやプロパティのルール(News Feedには表示されない必須項目。配列。)とサンプル値を指定できます。
  3. 動詞の過去形設定:投稿がどのようにNews Feed上に表示されるかを設定します。デフォルトでは、現在形で表示する期間が指定されていない限り、全アクションは過去形で表示されます。
    1. Past Tenseフィールドはアクションタイプに指定した動詞の過去形が補完されていて、編集することができます。また、前置詞を編集してNews Feed上での表示を変えることもできます。One Line Previewボックスでそれら変更のプレビューを見ることができます。
    2. Plural Past Tenseフィールドは、アクションタイプに指定した動詞の、一人以上の友だちが含まれる場合の過去形が補完されています。Past Tenseフィールドと同様、編集し、In News Feedボックスを用いてプレビューできます。
    3. One Line PreviewボックスはNews Feed投稿のプレビューを表示し、動詞の過去形を定義する手助けとなります。
  4. 動詞の現在形設定:投稿がどのようにNews Feed上に表示されるかを設定します。デフォルトでは、現在形で表示する期間が指定されていない限り、全アクションは過去形で表示されます。
    1. Present Tenseフィールドはアクションタイプに指定した動詞の現在形が補完されていて、編集できます。また、前置詞を編集してNews Feed上での表示を変えることもできます。One Line Previewボックスでそれら変更のプレビューを見ることができます。
    2. Plural Presnet Tenseフィールドは、アクションタイプに指定した動詞の、一人以上の友だちが含まれる場合の現在形が補完されています。Past Tenseフィールドと同様、編集し、In News Feedボックスを用いてプレビューできます。
    3. One Line PreviewボックスはNews Feed投稿のプレビューを表示し、動詞の現在形を定義する手助けとなります。
  5. Layout Style: アクションの不可情報がNews Feed, Ticker(Tciker上でユーザがクリックしたとき), Timelineで表示される時の表示を設定します。
    1. Item: 画像の横にキャプションを表示するオプション
    2. 数字の下にキャプションを表示するオプション 
    3. アクションをマップ表示するオプション
  6. Template Text: テキストと{...}、アクション/オブジェクトのプロパティを用いて投稿のキャプションを生成します。詳細はcaptionをご覧ください。[user] [action][object]は自動的に各投稿に足されますので、それを繰り返すのは避けてください。
  7. Attachment Preview:  News FeedとTimeline上でどのように投稿が表示されるかを確認できます。
  8. Advanced:
    1. Graph API URLフィールドは、アクションを呼び出すのに利用するURLのエンドポイントを指定できます。このURLのactionの部分は一度しか変更できないので気をつけてください。最初に設定された動詞で補完されています
    2. Unique Actionフィールドは、ユニークなアクションのみをサポートするか否か設定します。デフォルトでは複数アクションをサポートしています。一つのアク ション+オブジェクトに対して一つのインスタンスのみ許可する場合にこれを選択してください。例えば、一つの記事に対して一度しか投票できない場合などで す。
    3. Publish Requires App Access Tokenフィールドは、アクティビティ投稿の際にアプリケーションのシークレットキーを必須とするか指定します。たとえば、ゲームのscoreや achieveはアプリケーションのサーバからのみ書き込み可能で、通常のアクセストークンでgraphに対して書き込みさせたくないような場合です。こ れを行うには、graphへの書き込み時には、/{user-id}/{action}?access_token={token}という形式を取りま す。{token}にはアプリケーションのアクセストークンが入り、user-idにはユーザのIDが入ります。デフォルトでは、アプリケーションのアク セストークンは必須ではありません。

アクションタイプの設定が終わったら、次はobject typeを定義するステップです。


Define Custom Action Properties

カスタムプロパティはアクションインスタンスを説明する役割を持つ追加アトリビュートです。デフォルトでは、アクションはユーザの友だちにしか見え ません。アプリケーションでは、より広い(全ユーザ)もしくはより狭い(自分のみ)閲覧権限を設定することが可能です。さらに、ユーザは自分自身のタイム ライン上で個々のアクションの閲覧権限を設定することもできます。より詳細な設定情報はapp permissions and settingsをご覧ください。

アクションには、インスタンスのプロパティとして他のオブジェクトを定義することができます。エディのreviewed a dishでは、"reviewed"がアクションで"dish"がオブジェクトですが、"restaurant"オブジェクトを"review"アクションのカスタムプロパティとして指定できます。

アクションの生成時に画像を指定していれば、News Feedはオブジェクト画像よりもアクション画像を優先して表示します。


Next Steps