# WhatsApp Messenger App Export Via ADA

WhatsAppは、APAC市場、特にIndonesia、Singapore、Malaysiaなどの国で主要なメッセンジャーツールの1つです。そのため、この製品をよりよくサポートするために、Treasure DataはADA Asiaと提携し、そのAPIを使用してTreasure コンソールからWhatsAppにジョブ結果を送信できるようにしました。

## このインテグレーションでできること

- WhatsAppにメッセージを送信するためのTD workflowを作成する


## 技術的な制限事項

- これは直接的なインテグレーションではありません。
- バッチファイル転送はサポートされていません。一括アップロードと一括送信はADA APIでサポートされていますが、現在Treasure DataのコンソールからJSONファイルを送信するオプションはありません。
- ADAの**Send Text Message** APIには、1秒あたり5メッセージの制限があります。この制限に準拠するには、wait>:オペレーターを設定する必要があります。
- ADAからレポートを取得するためのAPIはありません
  - ADAはパフォーマンスに関するレポートを提供していますが、現在は手動処理のみがサポートされています。


## ビジネス上の制限事項

- Audience Studio
  - クライアントはTD Audience Studio内でセグメントを作成できますが、TD自己環境にエクスポートし、workflowを実行してメッセージを配信する必要があります


# 前提条件

- Treasure Data workflowの基本的な知識
- REST APIの基本的な知識
- ADA Business consoleへのAPIアクセス（ADAとの契約が必要です。）
- ADA Activation keys
- 顧客の電話番号


# Treasure DataのStatic IP Address

Treasure DataのStatic IP Addressは、このインテグレーションの接続ポイントおよびソースです。Static IP Addressを確認するには、Customer Successの担当者またはテクニカルサポートにお問い合わせください。

# ADAからの設定と設定可能なパラメータの取得

1. ADA Business Consoleにログインします。
![Login Page](/assets/ada_login_page.a2f702ef639b94592a732be37f925072153d9b9bb07241d00b3606d80ba01006.7fb6e37c.png)
ログイン後、サービスの概要を示すダッシュボードが表示されます。
![Obtain API Key](/assets/ada_api_key.3374418f82d606816322b5d3f81a42d2d76af6c2a76206baddbcb22326d5a187.7fb6e37c.png)
2. ADA API keyをコピーします
3. **Channel > WhatsApp**に移動してメッセージを作成します。ビジネス側から開始されるメッセージの場合は、テンプレートベースのコミュニケーションを使用する必要があります。
![Create Templates (if needed)](/assets/ada_template.c8a08266887ff494b0bb4061e217e488a5c0ffce72a179cecb2152845f5cdd25.7fb6e37c.png)
4. （オプション）パーソナライズされたコンテンツに変数を使用できる独自のテンプレートを作成します。
5. テンプレートが承認されたら（これには時間がかかる場合があります）、テンプレート名をコピーします。
  1. （オプション）テンプレート名を取得するには、APIを使用してアカウント別にテンプレートを一覧表示することもできます。（ADAが提供するAPIドキュメントを参照してください。）
6. テンプレートの作成が完了したら、Treasure コンソール（またはTreasure CLI）にログインしてworkflowを開発します。


## メッセージ送信のためのTreasure ワークフローの設定

以下のworkflowプロジェクトの例は、APIベースのインテグレーション（つまり、`http>:`でのエクスポート）のみをカバーしています。Treasure Dataは、本番環境での運用において、エラー通知、スパム回避のためのログ記録、ステータスコードの返却などのタスクをTDユーザーが追加することを強く推奨します。本番環境向けのworkflow設計の詳細については、カスタマーサポートチームにお問い合わせください。

電話番号を有効化してWhatsAppアカウントにメッセージを送信する方法は2つあります:

- `http>:`オペレーター
- Custom Script (Python)


この例では、http>:オペレーターをtd_for_each>:オペレーターと組み合わせて使用します

1. WhatsAppでのコミュニケーションに同意したユーザーの電話番号を含むデータセットを準備します。
電話番号には次の形式を使用してください: 国コード + 電話番号。例えば、Japanの電話番号の場合、国コード81に続いて10桁の電話番号を入力します（例: 819012345678）。


![Sample Dataset](/assets/td_sample_dataset.e73e568c9bf55635a0d87793351fdf0738c83bc0eb7a0de34c4d08220a9030b9.7fb6e37c.png)

現在、MetaはAPIユーザーがメッセージを送信することを許可しています。Meta APIを使用して電話番号を送信する場合、それらの電話番号が顧客のWhatsAppアカウントにリンクされていれば、その顧客はあなたのビジネスから開始された（テンプレートベースの）メッセージをWhatsAppで受信します（ただし、受け入れ、ブロック、またはスパム報告のオプションがあります）。

1. workflowを作成します


エンドユーザーに（エンドユーザーが開始したメッセージへの応答として）メッセージを送信する場合は、APIドキュメントの指示に従ってデータペイロードを変更してください。その他の**Send Text Message**オプションについては、次のドキュメントを参照してください: [ADA Business Messeging API V2.1](https://documenter.getpostman.com/view/2751675/UVktoYYF#8a824882-9758-45cd-a003-0f150391d8bc)。

workflowの実行により、メッセージは直ちに顧客のWhatsAppアカウントに送信されることに注意してください。したがって、Treasure Dataは、特定のターゲットオーディエンスに適した実行スケジュールを設計するためにセグメントルールを使用することを推奨します。

![](/assets/message_result.036920ed8db353bd06228618698918266e6cf97b512fdb037e650e84a6d9badf.7fb6e37c.png)

## ユーザーのチャット履歴の確認

ADA Business Consoleでは、**Report > Message Log Record**ページでログを確認できます。ログデータをローカル環境にダウンロードし、それをTreasure Dataにアップロードしてデータを充実させることができます。

![](/assets/ada_user_chat_history.a39e1c7bae7013af95466d90a38d65cefa90fb1736be5551e773ae39f5aa1fb9.7fb6e37c.png)