Webhook は、HTTP POST メソッドを使用してメッセージとメッセージステータス通知を受信するために使用されます。
メッセージステータス
メッセージステータス Webhook は、WhatsApp を使用して送信されたメッセージのステータスに関する通知を受信するために使用されます。メッセージのステータスは、削除済み、失敗、送信済み、配信済み、既読のいずれかになります。ステータスは WhatsApp によって提供されます。
注:
メッセージのステータスが変更されると、指定されたコールバック URL に通知が送信されます。
クライアントが 200 OK を返した場合、通知はクライアントに送信されます。それ以外の場合は、再試行が実行されます。
入力パラメーター
| パラメーター | タイプ | 必須 | 例 | 説明 |
| MessageId | String | はい | 123456789 | メッセージの一意の ID。この ID は ChatAPP によって生成されます。 |
| To | String | はい | 123456789 | メッセージを受信するユーザーの ID。 |
| From | String | はい | 123456789 | メッセージを送信するユーザーの ID。 |
| Status | String | はい | sent | メッセージのステータス。 |
| StatusDescription | String | はい | メッセージはチャネルプロバイダーに送信されました。 | ステータスの説明。詳細については、「ステータス」テーブルをご参照ください。 |
| Timestamp | String | はい | 1591861777000 | メッセージが状態になった時刻 (GMT)。 |
| Error | String | いいえ | OUT_OF_SERVICE | 特定のエラーが発生した場合に返されるエラーコード。詳細については、「エラーコード」をご参照ください。 |
| ErrorDescription | String | いいえ | システムはサービス停止中です。 | エラーコードの説明。詳細については、「エラーコード」をご参照ください。 |
| MsgFrameType | String | いいえ | message | メッセージのタイプ。
|
| Type | String | いいえ | image | メッセージに含まれるメディアリソースのタイプ。有効な値:
|
通知の例
[{
"MessageId": "123456789", // メッセージの一意の ID。
"To": "123456789", // メッセージを受信するユーザーの ID。
"From": "123456789", // メッセージを送信するユーザーの ID。
"Status": "sent", // メッセージのステータス。有効な値: sent、delivered、read、failed、deleted。
"StatusDescription": "The message is sent to the channel provider.", // ステータスの説明。
"Timestamp": "1591861777000", // メッセージが状態になった時刻 (GMT)。
"Error": "OUT_OF_SERVICE", // 返されたエラーコード。
"ErrorDescription": "The system is out of service.", // エラーコードの説明。
"MsgFrameType": "template",
"Type": "none"
}]ステータス
| ステータス | 説明 |
| sent | メッセージはチャネルプロバイダーに送信されました。 |
| delivered | メッセージはユーザーのクライアントに送信されました。ユーザーがメッセージを受信した場合、WhatsApp は配信済みではなく既読状態を返す場合があります。これは、ユーザーがメッセージを読んだ場合、メッセージは配信済みである必要があるためです。 |
| read | メッセージはユーザーによって既読になりました。 |
| failed | メッセージの送信に失敗しました。 |
| deleted | メッセージはユーザーによって削除されました。 |
出力パラメーター
| パラメーター | タイプ | 必須 | 説明 |
| code | Number | はい | レスポンスのコード。値は 0 である必要があります。 |
| msg | String | いいえ | レスポンスの説明。 |
レスポンスの例
{
"code" : 0,
"msg" : "Message received."
}受信メッセージ
受信メッセージ Webhook は、WhatsApp を使用して送信されたメッセージを受信するために使用されます。
注:
サポートされているメッセージタイプは、テキスト、位置情報、画像、音声、動画です。システム、ドキュメント、連絡先などの他のタイプはサポートされていません。
グループメッセージはサポートされていません。
クライアントが 200 OK を返した場合、メッセージはクライアントに送信されます。それ以外の場合は、再試行が実行されます。
入力パラメーター
| パラメーター | タイプ | 必須 | 例 | 説明 |
| MessageId | String | はい | 123456789 | メッセージの一意の ID。この ID は ChatAPP によって生成されます。 |
| ChannelType | String | はい | メッセージチャネルのタイプ。例: whatsapp。 | |
| From | String | はい | 86152345434311 | メッセージを送信するユーザーの ID。 |
| To | String | はい | 123456789 | メッセージを受信するユーザーの ID。 |
| Timestamp | String | はい | 1591861777000 | メッセージが送信された時刻 (GMT)。 |
| Type | String | はい | text | メッセージのタイプ。有効な値: text、location、image、audio、video。 |
| Message | String | いいえ | メッセージを受信しました。 | テキストタイプのメッセージの内容。 |
メッセージの例
[{
"MessageId": "123456789", // メッセージの一意の ID。
"ChannelType": "whatsapp",// メッセージチャネルのタイプ。有効な値: whatsapp、messager、viber、line。
"To": "123456789", // メッセージを受信するユーザーの ID。
"From": "86152345434311",// メッセージを送信するユーザーの ID。
"Timestamp": "1591861777000", // メッセージが送信された時刻 (GMT)。
"Type": "text", // メッセージのタイプ。有効な値: text、location、image、audio、video。
"Message": "I received a message.",
}]