第6章 $fh.push

$fh.push(message, options, callback(err, res))

クラウドから登録済みクライアントにプッシュメッセージを送信します。

6.1. 例

関連付けられているプロジェクトの全クライアントアプリにある全デバイスにメッセージをプッシュ

var message = {
  alert: "hello from FH"
}, options = {
    broadcast: true
};

$fh.push(message, options,
  function (err, res) {
    if (err) {
      console.log(err.toString());
    } else {
      console.log("status : " + res.status);
    }
  });

特定のクライアントアプリにある特定 deviceType のメッセージをプッシュ

var message = {
  alert: "hello from FH"
},
  options = {
    apps: ["3uzl1ebi6utciy56majgqlj8"], // list of App IDs
    criteria: {
      deviceType: "android"
    }
  };
$fh.push(message, options,
  function (err, res) {
    if (err) {
      console.log(err.toString());
    } else {
      console.log("status : " + res.status);
    }
  });

6.2. パラメーター

6.2.1. 通知

  • message オブジェクト

    • alert 文字列 — メインのメッセージ
    • sound 文字列 — (iOS のみ) アプリバンドルのサウンドファイルの名前、もしくは default
    • badge 文字列 — アプリアイコンのバッジとして表示される数
    • userData オブジェクト — 渡される追加のユーザーデータ

6.2.2. iOS 固有

  • message.apns オブジェクト — Apple Push Notification Service に固有のオプション

    • title 文字列 — 通知目的を説明した短い文字列
    • action 文字列 — アクションボタンのラベル
    • urlArgs アレイ — (Safari のみ) website.json ファイルの urlFormatString 値内にあるプレースホルダーとペアになる値
    • titleLocKey 文字列 —  (iOS の ) 現行ローカライゼーションの Localizable.strings ファイル内にあるタイトル文字列へのキー
    • titleLocArgs アレイ — (iOS のみ) title-loc-key の形式指定子で表示される各種の文字列の値
    • actionCategory 文字列 — 対話式通知用のアクションカテゴリーの識別子
    • contentAvailable 数値 — (iOS のみ) サイレント通知を送信することで、アプリケーションに新規コンテンツが利用可能になったことを通知。利用可能な値は 1 のみ

6.2.3. Windows 固有

  • message.windows オブジェクト — Windows プラットフォームに固有のオプション (Windows Notification Service および Microsoft Push Notification Service)

    • type 文字列 — 送信するメッセージのタイプ。利用可能な値は、toastrawbadge または tile
    • duration 文字列 — Toast メッセージの表示期間。利用可能な値は、long または short
    • badge 文字列 — 数字の代わりに通知バッジとして使用するグリフ。利用可能な値は、noneactivityalertavailableawaybusynewMessagepausedplayingunavailableerror または attention。バッジタイプの詳細については、official documentation を参照してください。数値には、message.badge パラメーターを使用してください。
    • tileType 文字列 — TileSquareText02TileWideBlockAndText02 などのタイルテンプレート。使用可能な値については、tile template catalog を参照してください。
    • images アレイ — タイルに表示される画像一覧。ローカルファイルのパス (例、Assets/image.png) または URL (例、http://host/image.png) になります。要素数は、選択した tileType で必要とされる画像数と一致する必要があります。
    • textFields アレイ — タイルに表示されるテキスト一覧。要素数は、選択した tileType で必要とされるテキストフィールドの数と一致する必要があります。

6.2.4. 他の設定

  • options オブジェクト
  • options.config オブジェクト

    • ttl 番号 — (APNS および GCM のみ) 秒単位での time to live。

6.2.5. プロジェクトでのクライアントアプリの選択

警告

broadcast または apps のオプションは手動で設定する必要があり、デフォルト値はありません。

  • options.broadcast ブール値 — true に設定すると、送信しているクラウドアプリを含んでいるプロジェクトにある全クライアントアプリに通知が送信されます。
  • options.apps アレイ — 通知の送信先となるクライアントアプリの ID 一覧

6.2.6. 受信者のフィルタリング

  • options.criteria オブジェクト — 通知受信者の選択条件。
    詳細は、通知の送信 を参照してください。

    • alias アレイ — ユーザー固有の識別子一覧
    • categories アレイ — カテゴリー一覧
    • deviceType アレイ — デバイスタイプ一覧
    • variants アレイ — バリアント ID の一覧

6.2.7. 応答処理

  • callback(err, res) 関数 — メッセージが統合プッシュサーバーに送信された後に起動されるコールバック。err に設定されると、エラー応答が含まれます。パラメーター res には通常のサーバー応答が含まれます。