Skip to main content

 

Created for OutSystems 10. Not working on your version? Tell us about it!

 

 

OutSystems

Pushwooshを使用したプッシュ通知

Pushwooshは、デバイスが実行されているプラットフォームなどの情報が要約されたプッシュ通知をデバイスに送信できるサービスです。Pushwooshプラグインにより、OutSystemsアプリケーションはPushwooshを使用してプッシュ通知を送受信できます。

ただし、プッシュ通知を送信するにはPushwooshの有料サブスクリプションが必要です。

手順

通知を受信するには、まずプラグインを使用してPushwooshにデバイスを登録します(1)。Pushwooshは、APNS(Apple Push Notification Service)とGCM(Google Cloud Messaging)にデバイスを登録します(2)。

デバイスが登録されたら、プラグインを使用してメッセージを配信したり、特定のユーザー宛てにメッセージを送信したりすることができます。プラグインによってPushwoosh経由でメッセージが送信されます(3)。Pushwooshは適切なメッセージングサービスに順番に接続します(4)。その後、APNSまたはGCMを利用してデバイスにメッセージを送信します(5)。

Pushwooshプラグインをインストールする

最初に、OutSystems ForgeからPushwooshプラグインをインストールします。これを最速で行うには、開発環境で[OutSystems]タブにアクセスしてそこからインストールします。

Pushwooshを構成する

Pushwooshは、サポートするプラットフォームごとに構成する必要があります。構成が完了すると、プラグインで使用するPushwooshのアプリケーションコードを取得できます。

iOS用

詳細については、「iOS用のPushwooshの構成」をご覧ください。

Android用

詳細については、「Android用のPushwooshの構成」をご覧ください。

Pushwooshプラグインをアプリケーションに追加する

アプリケーションで、[Manage Dependencies…]を使用してPushwooshプラグインへの参照を追加します。

次に、アプリケーションの以下のいずれかのブロックに「PushwooshNotifications」ブロックを追加します。

  • アプリケーションにログインがない場合は「Layout」ブロック
  • アプリケーションにログインがある場合は「LayoutBlank」ブロック

重要な注意事項がもう1つあります。「PushwooshNotifications」ブロックを追加する場合は、プレースホルダ内に配置しないでください。プレースホルダによっては設計時にのみ使用できるものがあり、実行時にPushwooshが機能しないことがあります。

PushwooshNotificationsで以下のパラメータを設定する必要があります。

  • PushwooshApplicationCode: Pushwooshでアプリケーションを作成した後に取得したPushwooshコード。
  • GoogleProjectNumber: Androidの構成中に取得したGoogleプロジェクトコード。アプリケーションがiOS専用の場合、このパラメータは空のままにしておきます。
  • NotificationReceivedEvent: ユーザーがデバイスで通知をクリックした場合、またはアプリケーションが開いているときに通知を受信した場合に呼び出されるイベント。

デバイスでプッシュ通知を受信するには、デバイスを登録する必要があります。ユーザーがアプリケーションを使用するときにログインする必要がある場合は、[Login]画面に移動して「Login」アクションを編集します。

「DoLogin」アクションの後にデバイスを登録するためのコードを追加します。次のようになります。

アプリケーションにログインがない場合は、「PushwooshNotifications」ブロックの「OnInitializeOver」イベントにこのコードを追加できます。

このイベントハンドラで、「RegisterDevice」アクションを呼び出します。

開発者証明書を使用してiOSモバイルアプリを生成する場合は、OutSystemsモジュールのExtensibility Configurationsプロパティに設定を追加する必要があります。

{
    "preferences": {
        "global": [{
            "name":"aps-environment",
            "value":"development"
        }]
    }
}

この設定は資格ファイルに追加されます(資格の詳細については、Apple開発者ドキュメントをご覧ください)。

本番証明書を使用してiOSモバイルアプリを生成する場合は、OutSystemsのaps- environment設定のデフォルト値がproductionであるため、設定を指定する必要はありません。

これでアプリケーションがプッシュ通知を受信できるようになりました。モバイルアプリを構成・生成し、デバイスにインストールします。 ここで、Pushwooshインターフェイスを使用してアプリに通知を送信し、構成がすべて適切かどうかを確認できます。ただし、アプリが実行中の場合は通知が表示されません。代わりに、NotificationReceivedEventイベントがすぐに発生します。

通知を送信する

通知を送信するには、Pushwoosh APIアクセストークンが必要です。これを作成するには、Pushwooshコンソールにアクセスし、[API Access]に移動して[Generate new access token]をクリックします。

Pushwooshプラグインには、デバイスに通知を送信するためのアクションが含まれています。通知を送信するアプリケーションで、[Manage Dependencies…]を使用してPushwooshプラグインへの参照を追加します。

すべてのデバイスに通知を送信するには、「SendPushNotificationToAll」アクションを使用します。

このアクションには以下のパラメータがあります。

  • PushwooshApplicationCode: Pushwooshでアプリケーションを作成した後に取得したPushwooshコード。
  • ApiAccessToken: 先ほど取得したPushwoosh APIアクセストークン。
  • Message: 送信するメッセージテキスト。
  • Badge: iOSアプリケーションアイコンに表示される数字。
  • Deeplink: 通知で送信するディープリンク。詳細については、ディープリンクの設定をご覧ください。

たとえば、このアクションを使用して「Hello from OutSystems」というメッセージを「PushTest」というアプリケーションに送信すると、iOSでは次のように表示されます。

Pushwooshを使用してプッシュ通知を送信する方法は以上です。

注意事項

  • アプリが実行中の場合、デバイスに通知は表示されません。代わりに、アプリに通知が送信され、NotificationReceivedEventイベントが発生します。この場合のアプリの動作を定義しておく必要があります。
  • プッシュ通知がアクティブになるまでにしばらく時間がかかる場合があります。通知が届かない場合、数分待ってからトラブルシューティングに進んでください。