Skip to content

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を作成する

  1. Zendesk開発者コンソールで、webhookにアクセスします:https://{{url}}.zendesk.com/admin/apps-integrations/webhooks/webhooks
  2. Create Webhookで、Trigger or automationを選択します。
  3. Endpoint URLに、/campaign/trigger/sendエンドポイントを追加します。
  4. AuthenticationBearer tokenを選択し、campaigns.trigger.send 権限を持つBraze REST APIキーを追加します。

Zendesk Webhookの例。

ステップ2:アウトバウンドSMS Campaignを作成する

次に、ZendeskからのWebhookをリッスンし、顧客にカスタムSMSレスポンスを送信するSMS Campaignを作成します。

ステップ2.1:メッセージを作成する

ZendeskがAPIを介してメッセージのコンテンツを送信する場合、次の形式になります:

1
**----------------------------------------------\n\n{Replier Name}, {Replier Date}\n\n{Message}**

そのため、メッセージ内に表示させたい詳細をこの文字列から抽出する必要があります。そうしないと、ユーザーにすべての詳細が表示されてしまいます。

フォーマットなしのSMSの例。

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!

フォーマット付きSMSの例。

ステップ2.2:配信をスケジュールする

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

API Triggered delivery

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

「Delivery Controls」で再適格性が有効になっている。

ステップ3:Zendeskでエージェントの返信をBrazeに転送するトリガーを作成する

Objects and rules > Business rules > Triggersに移動します。

  1. 新しいカテゴリを作成します(例:Trigger a message)。
  2. 新しいトリガーを作成します(例:Respond via SMS Braze)。
  3. Conditionsで以下を選択します:
    • Ticket > CommentPresent and requester can see commentを選択すると、新しいパブリックコメントがチケット更新に含まれるたびにメッセージがトリガーされます。
    • Ticket > UpdateWeb service (API)該当しないを選択すると、ユーザーがBrazeからメッセージを送信しても携帯電話に転送されません。Zendeskからのメッセージのみが転送されます。

Respond via SMS Braze。

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

Respond via SMS Braze JSON本文。

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に変更します。

Zendeskで設定された解決済みチケット。

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

解決済みチケットのJSON本文。

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 キーワードが検出されたときに送信されるメッセージ(例:「カスタマーサービス担当者がまもなくご連絡します。」)。

BrazeのSMSキーワードカテゴリの例。

ステップ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"
  }
}

2つの必須ヘッダーを含むリクエストの例。

ステップ6.3:最初の配信をスケジュールする

Schedule DeliveryAction-Based Deliveryを選択し、トリガータイプとしてSend an SMS Inbound Messageを選択します。また、以前に設定したSMSサブスクリプショングループとキーワードカテゴリも追加します。

最初のWebhook Campaignの「Schedule Delivery」ページ。

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

最初のWebhook Campaignの「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_opentrueであること)。
New Stuff!