Chat App Message Service API 操作を使用してメッセージを送信した後、メッセージ配信ステータスレポートとユーザーの返信を受信できます。この情報は、MNS コンシューマーモードまたは HTTP バッチプッシュモードで受信できます。
注意事項
ネットワークの問題や応答のタイムアウトにより、コールバックメッセージの重複プッシュやメッセージ取得の失敗などの問題が発生する可能性があります。
コールバックメッセージモード
コールバックメッセージを受信するには、MNS コンシューマーモードと HTTP バッチプッシュモードの 2 つのモードがあります。ニーズに最も適したモードを選択してください。
コールバックメッセージはべき等性を保証しません。アプリケーションでべき等性を処理する必要があります。コールバックメッセージを受信した後、データの正確性と一貫性を確保するための対策を実装する必要があります。
MNS コンシューマーモード
MNS コンシューマーモードは、MNS キューモデルを使用して、指定されたリージョンのコールバックメッセージを受信します。Alibaba Cloud Communications からのすべてのサービスメッセージは MNS を介して送信できます。Chat App Message Service コンソールで特定のメッセージタイプ (MessageType) の MNS サブスクリプションを有効にすると、システムは一意のメッセージキューとキュー名 (QueueName) を自動的に作成します。その後、バックエンドサーバーで SDK を使用して、キュー名 (QueueName) とメッセージタイプ (MessageType) を使用してキューからメッセージステータスレポートを取得できます。
HTTP バッチプッシュモード
HTTP バッチプッシュモードでは、メッセージは HTTP POST リクエストを使用して指定された Web URL にプッシュされます。Chat App Message Service コンソールで HTTP Webhook アドレス (callback_url) を設定すると、システムはモバイル発信メッセージやメッセージステータスレポートなどのサービスメッセージをその URL に送信します。これにより、サーバーはメッセージを直接受信できます。
コールバックメッセージのタイプ
コールバックモードを選択した後、シナリオに合わせてメッセージタイプも選択する必要があります。メッセージ配信ステータスレポートの受信やユーザーの返信などのシナリオでは、次のメッセージタイプが利用可能です。必要なメッセージタイプを選択できます。
名前 | 説明 | MNS コンシューマーモード | HTTP バッチプッシュモード |
ChatAppInbound (モバイル発信メッセージ) | モバイル発信メッセージは、エンドユーザーがビジネス番号に送信するメッセージです。ChatAppInbound メッセージをサブスクライブして、エンドユーザーから送信されたメッセージの内容を取得します。 | ||
ChatAppStatus (モバイル着信メッセージステータスレポート) | モバイル着信メッセージは、エンドユーザーが受信するメッセージです。ChatAppStatus レポートをサブスクライブして、各メッセージの配信ステータスを確認し、エンドユーザーに届いたかどうかを確認します。 | ||
ChatAppAudit (テンプレート承認ステータスメッセージ) | CreateChatappTemplate API 操作を使用してテンプレートを作成した後、ChatAppAudit メッセージをサブスクライブして、テンプレートの承認ステータスを取得できます。 |
コールバックメッセージ受信モードの設定
ステータスレポートとモバイル発信メッセージの設定
コールバックメッセージを受信するには、まず Chat App Message Service コンソールでメッセージ受信を有効にする必要があります。
Chat App Message Service コンソールにログインします。
左側のナビゲーションウィンドウで、[Channel Management] を選択し、チャネル ID または [アクション] 列の [Manage] ボタンをクリックします。

チャンネルの [Data Panel] ページで、左側のナビゲーションウィンドウで、チャンネルタイプに対応する機能をクリックします。
WhatsApp チャンネルの場合: 左側のナビゲーションウィンドウで、 を選択します。

Viber チャンネルの場合: 左側のナビゲーションウィンドウで、 を選択します。

Messenger チャンネルの場合: 左側のナビゲーションウィンドウで、 を選択します。

Instagram チャンネルの場合: 左側のナビゲーションウィンドウで、 を選択します。

チャンネルタイプのページで、サブスクライブするメッセージタイプを選択します。
ページ、アカウント、または サービスアカウント が接続されたら、[Set Webhook] をクリックし、サブスクライブするメッセージを選択します。
説明ステータスレポート Webhook アドレス: ChatAppStatus (モバイル着信メッセージステータスレポート) メッセージ用。
モバイル発信メッセージ Webhook アドレス: ChatAppInbound (モバイル発信メッセージ) メッセージ用。

[HTTP Protocol] を選択し、ステータスレポートとモバイル発信メッセージの Webhook アドレスを入力します。例:
説明各メッセージタイプに対して、サーバー上で異なるパス (例:
https://xxxx.com) を設定します。これにより、それらを区別しやすくなります。
すべてのメッセージタイプを同じ URL に指定してから、メッセージ本文を解析してタイプを識別しないでください。[Status Report Webhook Address] には、https://xxxx.com/appstatus と入力します。
[Mobile Originated Message Webhook Address] フィールドに、https://xxxx.com/inbound と入力します。
[MSMQ Monitoring] を選択し、[OK] をクリックします。
もう一度 [Set Webhook] をクリックします。表示されたフォームで、[Status Callback Message Queue] と [Mobile Originated Message Queue] の名前をコピーします。

テンプレート承認ステータスメッセージの設定
現在、テンプレート承認ステータスメッセージの設定をサポートしているのは WhatsApp チャンネルのみです。
Chat App Message Service コンソールにログインします。
左側のナビゲーションウィンドウで、[Channel Management] をクリックし、次にチャネル ID または [アクション] 列の [Manage] ボタンをクリックします。

チャンネルの [Data Panel] ページで、左側のツールバーで をクリックします。

[HTTP Protocol] を選択し、通知 Webhook アドレスを入力します。
[Notification Webhook Address] の例: https://xxxx.com/appaudit
[MNS Monitoring] を選択し、[OK] をクリックします。

もう一度 [Channel Webhook Settings] をクリックします。開いたフォームで、[Notification Queue] 名をコピーします。

MNS SDK のダウンロード
Java SDK パッケージをダウンロードして MNS メッセージをプルします。
Java SDK のダウンロード: Java MNS SDK