11.4. IM-Notice¶
11.4.1. 概要¶
11.4.2. 通知機能全般¶
通知機能全般を使用するための設定を行います。
11.4.2.2. IM-Notice 設定ファイルの編集¶
IM-Juggling の <(プロジェクト名)/conf> 配下に出力されたim-notice-config.xmlを開き、以下の設定を行ってください。
<base-url>
- ベースURLを設定してください。この設定はショートカットURLの作成に使用されます。未設定の場合、server-context-config.xml で指定したベースURLが使用されます。
<base-url>http://example.org/imart</base-url>
<short-cut-duration-minutes>
- ショートカットURLの有効期間を設定してください。単位は分です。「0」を設定した場合、ショートカットURLは作成されません。デフォルトでは43200分=30日が設定されています。
<short-cut-duration-minutes>43200</short-cut-duration-minutes>
11.4.2.3. ベースURLの設定¶
IM-Noticeへのメッセージ配信処理をジョブ経由で行う場合は、ベースURLの設定が必要です。 「ベースURL」または、「テナント環境情報 」から設定を行ってください。
注意
ベースURLを指定しない場合、以下のエラーが発生します。jp.co.intra_mart.system.notice.exception.NoticeRuntimeException: [E.NOTICE.CORE.00016] ベースURLを解決できませんでした。
11.4.3. デスクトップ通知機能¶
11.4.3.1. スタンドアローン構成の場合¶
11.4.3.1.1. IM-Notice MQ設定ファイルの編集¶
- <address>
デスクトップ通知で使用するポート番号を設定してください。デフォルトでは40608ポートを使用する設定です。クライアントからサーバまでのネットワーク機器などに対して、ここで指定したポートを開放してください。<address bind="true">tcp://*:40608</address>
- <ping>
ping機能の設定をします。有効にするには、enable属性に「true」を設定してください。 interval-seconds属性で、クライアントにpingを流す間隔を設定します。単位は秒です。 time-to-live-seconds属性で、クライアントがサーバに再接続を行うまでの時間を設定します。単位は秒です。設定した秒数だけサーバから応答がなければ、クライアントはサーバに再接続を行います。<ping enable="true" interval-seconds="270" time-to-live-seconds="300" />コラム
環境により、一定時間データが流れないソケットは切断されてしまう場合があります。そのような環境では、数分間隔でpingを流し続けることで自動切断を避けることが出来ます。(Microsoft AzureやAmazon Elastic Compute Cloudなど)
- <endpoint>
クライアントの接続先を設定します。<address>で設定したポート番号を指定してください。<endpoints> <endpoint>tcp://example.org:40608</endpoint> </endpoints>
11.4.3.2. 分散構成やWeb Serverを利用している構成の場合¶
11.4.3.2.1. IM-Notice MQ設定ファイルの編集¶
IM-Juggling で出力されたim-notice-mq-config.xmlを編集してください。
- <address>
bind属性にfalseを指定してください。<address bind="false">tcp://{ブローカーを実行しているサーバのホストまたはIPアドレス}:{ブローカーのバックエンドポート番号}</address> <ping enable="true" interval-seconds="270" time-to-live-seconds="300" /> <endpoints> <endpoint>tcp://{ブローカーを実行しているサーバのホストまたはIPアドレス}:{ブローカーのフロントエンドポート番号}</endpoint> </endpoints>コラム
IM-Notice MQ設定ファイルのその他の項目については IM-Notice MQ設定ファイルの編集 を参照してください。
11.4.3.2.2. ブローカーサービス実行ファイルの取得¶
11.4.3.2.3. IM-Notice MQブローカー設定ファイルの編集¶
- <frontend>
デスクトップ通知アプリケーションとの通信を行うポート番号を設定してください。デフォルトでは40608ポートを使用する設定です。クライアントからブローカーまでのネットワーク機器などに対して、ここで指定したポートを開放してください。<frontend bind="true">tcp://*:40608</frontend>
- <backend>
Web Application Server との通信を行うポート番号を設定してください。デフォルトでは40609ポートを使用する設定です。ブローカーからサーバまでのネットワーク機器などに対して、ここで指定したポートを開放してください。<backend bind="true">tcp://*:40609</backend>コラム
IM-Notice MQブローカー設定ファイルのその他の項目は IM-Notice ブローカー設定ファイルと同様です。IM-Notice ブローカー設定ファイルについては IM-Notice MQ設定ファイルの編集 を参照してください。
11.4.3.2.4. ブローカーサービスの実行¶
フォアグラウンドで動作させる場合(例)
java -jar im_notice_mq_broker-8.0.0.jar
nohup java -jar im_notice_mq_broker-8.0.0.jar > stdout.log 2>stderr.log &コラム
実行したブローカーサービスを停止する場合は、実行方法に応じた停止を行ってください。上記実行例に対する停止方法は以下です。
- フォアグラウンドでjavaコマンドを実行した場合、Ctrl-C で終了。
- バックグラウンドでjavaコマンドを実行した場合、プロセスIDを調べてkillコマンドで終了。
11.4.4. モバイル通知機能(iOS版)¶
モバイル通知機能を使用するための設定を行います。 iOSへの通知を行うには、Amazon SNSを使用します。
11.4.4.1. P12証明書ファイルの取得¶
11.4.4.2. Amazon SNSの設定¶
Amazon SNSの設定を行います。
Amazon SNS にサインインしてください。 リージョンを選択してください。 「Create and Add」から「Add a New App」を選択してください。 フォームに以下の内容を入力し、「Add New App」をクリックしてください。 「Apps」にアプリケーションが追加されました。 「Application ARN」を確認することができます。設定ファイルを編集する際に必要な文字列ですので、控えておいてください。
11.4.4.3. IM-Notice Mobile設定ファイルの編集¶
<proxy>
Amazon SNSへ接続するためにプロキシを使用する場合、設定を行ってください。
<proxy enable="true"> <host></host> <port xsi:nil="true"></port> <!-- ポート番号を指定する場合は xsi:nil="true" を削除してください。 --> <username></username> <password></password> <workstation></workstation> <domain></domain> </proxy>
<asns>
<asns>のname属性に任意の名前を設定してください。
<asns name="asns-apns">
<endpoint>
- Amazon SNSのリージョンに対応するEndpointを設定してください。
<endpoint>sns.ap-northeast-1.amazonaws.com</endpoint>
コラム
Endpointは AWS documentation - Regions and Endpoints で確認できます。リージョンが「Asia Pacific (Tokyo)」の場合、Endpoint は「sns.ap-northeast-1.amazonaws.com」です。
<platform-application-arn>
- Amazon SNSの設定 で確認したApplication ARNを設定してください。
<platform-application-arn>arn:aws:sns:ap-northeast-1:XXXXXXXXXXXX:app/APNS/IM-Notice_APNS</platform-application-arn>
<access-key>
- アクセスキーを設定してください。
<secret-key>
- シークレットキーを設定してください。
<push type=”ios” />
engine属性に、<asns>のname属性に設定した名前を指定してください。
<push type="ios" engine="asns-apns" />
11.4.4.4. P12証明書ファイルの更新¶
P12証明書ファイル(IM-Notice Push Notifications Production.p12)の有効期限が切れてしまった、または新しいP12証明書ファイルが公開された場合、更新を行います。 有効期限が過ぎてしまったP12証明書ファイルを利用した場合、通知が届かなくなるため、有効期限が切れる前に新しいP12証明書ファイルに更新してください。
弊社サイトのダウンロード ライブラリから最新のP12証明書ファイルを取得してください。
Amazon SNSにサインインしてください。 アプリケーションを選択し、「Actions」-「Update Credentials」を選択してください。 フォームに以下の内容を入力し、「Update credentials」をクリックしてください。
11.4.5. モバイル通知機能(Android版)¶
モバイル通知機能を使用するための設定を行います。 Androidへの通知を行うには、以下の3種類の構成が利用できます。
GCMA を使用する場合の設定方法は、 GCMAを使用する場合 を参照してください。 GCMA+Amazon SNSを使用する場合の設定方法は、 GCMA+Amazon SNSを使用する場合 を参照してください。 Baidu+Amazon SNSを使用する場合の設定方法は、 Baidu+Amazon SNSを使用する場合 を参照してください。コラム
Amazon SNSを組み合わせて使用することで、Push通知対象となっているデバイスのトークンリストや、その状態(有効または無効)をAmazon SNSで一覧することができます。また、AndroidとiOSを併用する場合、Amazon SNSで一元管理することができます。注意
中国国内ではGCMA(Google Cloud Messaging for Android)を利用できません。中国国内で通知機能を利用したい場合Baiduをご利用ください。
11.4.5.1. GCMAを使用する場合¶
GCMAを使用しAndroidへの通知を行う場合、以下の設定を行ってください。
11.4.5.1.1. GCMAの設定¶
GCMAの設定を行います。
Google Play Developer Console にログインしてください。 プロジェクトを作成します。 フォームに以下の内容を入力し、「作成」をクリックしてください。 プロジェクトの概要から「プロジェクト番号」を確認することができます。設定ファイルを編集する際に必要な文字列ですので、控えておいてください。 「Google Cloud Messaging for Android」を有効にします。 サーバーアプリケーションのキーを作成します。「新しいキーを作成」をクリックします。「サーバーキー」を選択し、キーを作成してください。 「APIキー」を確認することができます。設定ファイルを編集する際に必要な文字列ですので、控えておいてください。
11.4.5.1.2. IM-Notice Mobile設定ファイルの編集¶
<proxy>
Google Cloud Messaging for Androidへ接続するためにプロキシを使用する場合、設定を行ってください。
<proxy enable="true"> <host></host> <port xsi:nil="true"></port> <!-- ポート番号を指定する場合は xsi:nil="true" を削除してください。 --> <username></username> <password></password> <workstation></workstation> <domain></domain> </proxy>
<gcma>
<gcma>のname属性に任意の名前を設定してください。
<gcma name="gcma">
<api-key>
- APIキーを設定してください。
<project-number>
- プロジェクト番号を設定してください。
コラム
APIキーおよびプロジェクト番号の確認方法は、 GCMAの設定 を参照してください。
<push type=”android” />
- engine属性に、<gcma>のname属性に設定した名前を指定してください。
<push type="android" engine="gcma" />
<max-push-subject-length>
- Push通知受信時に表示するタイトルの最大文字数を設定してください。
<max-push-subject-length>30</max-push-subject-length>
<max-push-body-length>
- Push通知受信時に表示する本文の最長文字数を設定してください。
<max-push-body-length>70</max-push-body-length>
11.4.5.2. GCMA+Amazon SNSを使用する場合¶
GCMAとAmazon SNSを使用しAndroidへの通知を行う場合、以下の設定を行ってください。
11.4.5.2.2. Amazon SNS の設定¶
Amazon SNSの設定を行います。
Amazon SNS にサインインしてください。 リージョンを選択してください。 「Create and Add」から「Add a New App」を選択してください。 フォームに以下の内容を入力し、「Add New App」をクリックしてください。
項目 説明 Application Name 任意の名前を入力します。 Push Platform 「Google Cloud Messaging(GCM)」を選択します。 API Key GCMA の設定 で作成したAPIキーを入力します。 「Apps」にアプリケーションが追加されました。 「Application ARN」を確認することができます。設定ファイルを編集する際に必要な文字列ですので、控えておいてください。
11.4.5.2.3. IM-Notice Mobile設定ファイルの編集¶
<proxy>
Google Cloud Messaging for AndroidやAmazon SNSへ接続するためにプロキシを使用する場合、設定を行ってください。
<proxy enable="true"> <host></host> <port xsi:nil="true"></port> <!-- ポート番号を指定する場合は xsi:nil="true" を削除してください。 --> <username></username> <password></password> <workstation></workstation> <domain></domain> </proxy>
<asns>
<asns>のname属性に任意の名前を設定してください。
<asns name="asns-gcm">
<endpoint>
- Amazon SNSのリージョンに対応するEndpointを設定してください。
<endpoint>sns.ap-northeast-1.amazonaws.com</endpoint>
コラム
Endpointは AWS documentation - Regions and Endpoints で確認できます。リージョンが「Asia Pacific (Tokyo)」の場合、Endpointは「sns.ap-northeast-1.amazonaws.com」です。
<platform-application-arn>
- Application ARNを設定してください。
コラム
Application ARNの確認方法は、 Amazon SNS の設定 を参照してください。
<access-key>
- アクセスキーを設定してください。
<secret-key>
- シークレットキーを設定してください。
<gcma-project-number>
- プロジェクト番号を設定してください。
コラム
プロジェクト番号の確認方法は、 GCMAの設定 を参照してください。
<push type=”android” />
engine属性に、<asns>のname属性に設定した名前を指定してください。
<push type="android" engine="asns-gcm" />
<max-push-subject-length>
- Push通知受信時に表示するタイトルの最大文字数を設定してください。
<max-push-subject-length>30</max-push-subject-length>
<max-push-body-length>
- Push通知受信時に表示する本文の最長文字数を設定してください。
<max-push-body-length>70</max-push-body-length>
11.4.5.3. Baidu+Amazon SNSを使用する場合¶
BaiduとAmazon SNSを使用しAndroidへの通知を行う場合、以下の設定を行ってください。
11.4.5.3.1. Baidu の設定¶
Baiduの設定を行います。
11.4.5.3.1.1. Baiduアカウントを作成します。¶
Baiduポータルの「登录」をクリックします。 「立即注册」をクリックします。 「手机/邮箱(電話、電子メール アドレス)」「密码(パスワード)」「验证码(検証コード)」を入力し「注册」をクリックします。 入力した電子メールに、Baiduアカウントをアクティブ化するためのリンクが送信されたことを知らせる次のようなページが表示されます。 受信した電子メールよりBaiduライセンス認証のメールを開き、ライセンス認証リンクをクリックして、Baiduアカウントをアクティブ化します。
11.4.5.3.1.2. Baidu開発者として登録します。¶
Baiduポータルにログインしてください。 「更多>>」をクリックします。 「站长与开发者服务」にある「百度开放服务平台」をクリックします。 右上のメニューから「注册开发者」をクリックします。 「开发者姓名(名前)」、「开发者简介(説明)」、「手机号(電話番号)」を入力し「发送验证码(確認コードを送信する)」をクリックします。国際電話番号では、国コードを含める必要があります。例えば日本の電話番号では(81)1234567890です。 次のような確認コードを受信します。 「验证码」に受信した確認コードを入力し「提交」をクリックします。
11.4.5.3.2. Amazon SNS の設定¶
Amazon SNSの設定を行います。
Amazon SNSにサインインしてください。 リージョンを選択してください。 「Applications」から「Create Platform Application」を選択してください。 フォームに以下の内容を入力し、「Create Platform Application」をクリックしてください。 「Applications」にアプリケーションが追加されました。 「Application ARN」を確認することができます。設定ファイルを編集する際に必要な文字列ですので、控えておいてください。
11.4.5.3.3. IM-Notice Mobile設定ファイルの編集¶
<proxy>
Amazon SNSへ接続するためにプロキシを使用する場合、設定を行ってください。
<proxy enable="true"> <host></host> <port xsi:nil="true"></port> <!-- ポート番号を指定する場合は xsi:nil="true" を削除してください。 --> <username></username> <password></password> <workstation></workstation> <domain></domain> </proxy>
<asns>
<asns>のname属性に任意の名前を設定してください。
<asns name="asns-baidu">
<endpoint>
- Amazon SNSのリージョンに対応するEndpointを設定してください。
<endpoint>sns.ap-northeast-1.amazonaws.com</endpoint>
コラム
Endpointは AWS documentation - Regions and Endpoints で確認できます。リージョンが「Asia Pacific (Tokyo)」の場合、Endpointは「sns.ap-northeast-1.amazonaws.com」です。
<platform-application-arn>
- Application ARNを設定してください。
コラム
Application ARNの確認方法は、Amazon SNS の設定を参照してください。
<access-key>
- アクセスキーを設定してください。
<secret-key>
- シークレットキーを設定してください。
<baidu-api-key>
- Baidu API Keyを設定してください。
コラム
Baidu API Keyの確認方法は、Baidu の設定を参照してください。
<push type=”android” />
engine属性に、<asns>のname属性に設定した名前を指定してください。
<push type="android" engine="asns-baidu" />
<max-push-subject-length>
- Push通知受信時に表示するタイトルの最大文字数を設定してください。
<max-push-subject-length>30</max-push-subject-length>
<max-push-body-length>
- Push通知受信時に表示する本文の最長文字数を設定してください。
<max-push-body-length>70</max-push-body-length>