Zendesk Chat
Zendesk Chatは、各プラットフォームのWebhookを使用して双方向のSMS会話を設定します。ユーザーがサポートをリクエストすると、Zendeskにチケットが作成されます。エージェントの応答はAPIトリガーのSMS Campaignを通じてBrazeに転送され、ユーザーの返信はZendeskに送り返されます。
前提条件
| 要件 | 説明 |
|---|---|
| Zendeskアカウント | このパートナーシップを利用するには、Zendeskアカウントが必要です。 |
| Zendesk Basic認証トークン | Zendesk Basic認証トークンは、BrazeからZendeskへのアウトバウンドWebhookリクエストに使用されます。 |
| Braze REST APIキー | campaigns.trigger.send 権限を持つBraze REST APIキー。これはBrazeダッシュボードの設定 > APIキーから作成できます。 |
ユースケース
Braze SMS機能とZendeskライブエージェントの応答を組み合わせることで、カスタマーサポートの効率を高め、ユーザーからの問い合わせに迅速に人的サポートで対応します。
Zendesk Chatを統合する
ステップ1:ZendeskでWebhookを作成する
- Zendesk開発者コンソールで、webhookにアクセスします:
https://{{url}}.zendesk.com/admin/apps-integrations/webhooks/webhooks - Create Webhookで、Trigger or automationを選択します。
- Endpoint URLに、/campaign/trigger/sendエンドポイントを追加します。
- AuthenticationでBearer tokenを選択し、
campaigns.trigger.send権限を持つBraze REST APIキーを追加します。

ステップ2:アウトバウンドSMS Campaignを作成する
次に、ZendeskからのWebhookをリッスンし、顧客にカスタムSMSレスポンスを送信するSMS Campaignを作成します。
ステップ2.1:メッセージを作成する
ZendeskがAPIを介してメッセージのコンテンツを送信する場合、次の形式になります:
1
**----------------------------------------------\n\n{Replier Name}, {Replier Date}\n\n{Message}**
そのため、メッセージ内に表示させたい詳細をこの文字列から抽出する必要があります。そうしないと、ユーザーにすべての詳細が表示されてしまいます。

Messageテキストボックスに、次のLiquidコードとオプトアウト言語またはその他の静的コンテンツを追加します:
1
2
3
4
5
6
7
{% assign body = {{api_trigger_properties.${msg_body}}} %}
{% assign msg = body | split: "
" %}
New message from Zendesk:
{{msg[2]}}
Feel free to respond directly to this number!

ステップ2.2:配信をスケジュールする
配信タイプはAPI-Triggered deliveryを選択し、次のステップで使用するCampaign IDをコピーします。

最後に、Delivery Controlsで再適格性をオンにします。

ステップ3:Zendeskでエージェントの返信をBrazeに転送するトリガーを作成する
Objects and rules > Business rules > Triggersに移動します。
- 新しいカテゴリを作成します(例:Trigger a message)。
- 新しいトリガーを作成します(例:Respond via SMS Braze)。
- Conditionsで以下を選択します:
- Ticket > CommentがPresent and requester can see commentを選択すると、新しいパブリックコメントがチケット更新に含まれるたびにメッセージがトリガーされます。
- Ticket > UpdateがWeb service (API)該当しないを選択すると、ユーザーがBrazeからメッセージを送信しても携帯電話に転送されません。Zendeskからのメッセージのみが転送されます。

ActionsでNotify by Webhookを選択し、ステップ1で作成したエンドポイントを選択します。次に、API呼び出しのボディを指定します。ステップ2.2のcampaign_idをリクエスト本文に入力します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"campaign_id": "{{YOUR_CAMPAIGN_ID}}",
"recipients": [
{
"external_user_id": "{{ticket.requester.custom_fields.braze_external_id}}",
"trigger_properties": {
"msg_body": "{{ticket.latest_public_comment_html}}"
},
"attributes": {
"zendesk_ticket" : "{{ticket.id}}",
"zendesk_ticket_open" : "true"
}
}
]
}
ステップ4:チケットのクローズ時にユーザーを更新するトリガーをZendeskに作成する
チケットがクローズされたことをユーザーに通知したい場合は、テンプレート化されたレスポンスボディを使ってBrazeで新しいCampaignを作成します。

API-Triggered deliveryを選択し、Campaign IDをコピーします。
次に、チケットがクローズされたときにBrazeに通知するトリガーを設定します:
- カテゴリー:Trigger a message
- Conditionsで、Ticket > Ticket Statusを選択し、Solvedに変更します。

ActionsでNotify by Webhookを選択し、作成した2番目のエンドポイントを選択します。そこから、API呼び出しの本文を指定する必要があります:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"campaign_id": "{{YOUR_API_KEY}}",
"recipients": [
{
"external_user_id": "{{ticket.requester.custom_fields.braze_external_id}}",
"trigger_properties": {
"msg_body": "Your ticket has been closed"
},
,
"attributes": {
"zendesk_ticket_open" : "false"
}
}
]
}
ステップ5:Zendeskでカスタムユーザーフィールドを追加する
管理センターで、サイドバーのPeopleを選択し、Configuration > User fieldsを選択します。カスタムユーザーフィールドbraze_external_idを追加します。
ステップ6:インバウンドSMS転送を設定する
次に、Brazeで2つの新しいWebhook Campaignを作成します。これにより、顧客からのインバウンドSMSをZendeskの受信トレイに転送できます。
| Campaign | 目的 |
|---|---|
| Webhook Campaign 1 | Zendeskに新しいチケットを作成します。 |
| Webhook Campaign 2 | 顧客からインバウンドで送信されたすべての会話型SMSレスポンスをZendeskに転送します。 |
ステップ6.1:SMSキーワードカテゴリを作成する
Brazeダッシュボードで、Audienceに移動し、SMSサブスクリプショングループを選択して、Add Custom Keywordを選択します。以下のフィールドに入力して、Zendesk専用のSMSキーワードカテゴリを作成します。
| フィールド | 説明 |
|---|---|
| Keyword Category | キーワードカテゴリの名前(例:ZendeskSMS1)。 |
| Keywords | カスタムキーワード(例:SUPPORT)。 |
| Reply Message | キーワードが検出されたときに送信されるメッセージ(例:「カスタマーサービス担当者がまもなくご連絡します。」)。 |

ステップ6.2:最初のWebhook Campaignを作成する
Brazeダッシュボードで、最初のWebhook Campaignを作成します。このメッセージはZendeskにサポートがリクエストされていることを通知します。
Webhookコンポーザーで、以下のフィールドに入力します:
- Webhook URL:https://{{url}}.zendesk.com/api/v2/tickets
- HTTPメソッド:POST
- リクエストヘッダー:
- Content-Type: application/json
- Authorization: Basic
- リクエスト本文:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"ticket": {
"subject": "Action Needed",
"comment": {
"body": "{{sms.${inbound_message_body}}}"
},
"requester":{
"name": "{{${first_name}}} {{${last_name}}}",
"user_fields": {
"braze_external_id": "{{${user_id}}}"
}
},
"priority": "normal",
"type": "problem"
}
}

ステップ6.3:最初の配信をスケジュールする
Schedule DeliveryでAction-Based Deliveryを選択し、トリガータイプとしてSend an SMS Inbound Messageを選択します。また、以前に設定したSMSサブスクリプショングループとキーワードカテゴリも追加します。

Delivery Controlsで再適格性をオンにします。

ステップ6.4:2番目のWebhook Campaignを作成する
ユーザーからの残りのSMSメッセージをZendeskに転送するWebhook Campaignを設定します:
ZendeskはチケットIDを文字列として送信するため、コンテンツブロックを作成して文字列を整数に変換し、ZendeskのWebhookで使用できるようにします。
1
{% assign var = {{custom_attribute.${zendesk_ticket}}} | to_i %}{{var}}
Webhookコンポーザー内で:
- Webhook URL:https://{{url}}.zendesk.com/api/v2/tickets/{{content_blocks.${to_int}}}.json
- リクエスト:PUT
- KVP:
- Content-Type: application/JSON
- Authorization: Basic
本文のサンプル:
1
2
3
4
5
6
7
{
"ticket": {
"comment": {
"body": "Inbound message from {{${first_name}}} {{${last_name}}}: {{sms.${inbound_message_body}}}"
}
}
}
ステップ6.5:2番目のWebhook Campaignのセットアップを完了する
- 「Other」カテゴリでインバウンドメッセージを送信したユーザーに対して、アクションベースのトリガーを設定します。
- 再適格性基準を設定します。
- 該当するオーディエンスを追加します(この場合、カスタム属性zendesk_ticket_openがtrueであること)。