KARTEのWebhookテンプレートを使うことで、特定セグメントのユーザーに特定イベントが発生したことを、Slackなどのチャットツールに通知することができます。

ここでは、「ロイヤルユーザーのWebサイト来訪時にSlackに通知する」というシナリオで設定してみましょう。

[KARTE] 事前準備

  1. 「ロイヤルユーザー」を特定するためのセグメントを作成します
    • Slackの通知件数を抑えるために、ごく一部のユーザーのみが該当するようなセグメント条件を設定します

※もちろん、既存のセグメントを使っても構いません
※すぐに決められない場合は、代わりに「テスト用セグメント」を使いましょう

[Slack] Incoming Webhookを追加する

  1. Slackに通知用のChannelを追加します
  2. SlackのApp ディレクトリからIncoming Webhookを新しく追加し、作成したChannelを選択します
  3. 生成されたWebhook URLをコピーします
    • 例: https://hooks.slack.com/services/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

[KARTE] Webhookテンプレートを使った接客アクションの設定をする

  1. 接客サービスを新規作成します
  2. [アクションを追加]をクリックします
  3. [テンプレートを選ぶ > やりたいことから探す > 他サービスにデータを連携する]をクリックします
  4. [Slackへのユーザー行動通知]というテンプレートを選択します

null

  1. 次のように設定します
    • [target_url]
      • 先ほどSlackの管理画面でコピーしたWebhook URLを貼り付けます
    • [KARTEのプロジェクトID]
      • KARTEのユーザーストーリー画面URLに含まれる24桁のプロジェクトIDを指定します
        • https://admin.karte.io/p/(ここに表示されている24桁)/user
      • 指定することで、該当ユーザーのKARTEユーザーストーリー画面へのリンクをSlack通知に含めることができます
    • [Slack通知文言に含むメッセージ]
      • ここでは、「ロイヤルユーザーが来訪しました」と入力します

null

  1. アクションを保存します

[KARTE] Webhook接客サービスの残りの配信設定をする

アクション

  • 配信率
    • 先ほど設定したWebhookアクションを100%で配信します

対象ユーザー

  • ディメンション
    • 全員
  • セグメント
    • 「ロイヤルユーザー」

※セグメントの用意がない場合は一時的に「テスト用セグメント」を使っても構いません

対象イベント

  • 配信トリガー
    • 「全てのページ」
  • 配信頻度
    • 「セッション毎」

※特定ページの閲覧など、トリガー条件を絞り込んでも構いません

スケジュール

  • 設定なし

オプション

  • 同時配信
    • OK

[Slack] 通知を確認する

  1. 接客サービスの設定が完了したら、接客サービスを公開します
    • ※公開後に発生したSlackへの通知件数が多すぎた場合は、接客サービスを停止してください
  2. しばらく待ち、セグメント条件に合致するユーザーが来訪したタイミングでSlackに通知されることを確認します
    • テストセグメントを指定している場合は、ご自身のブラウザを使ってテストセグメントに入るようにWebサイトを閲覧してください

null

[KARTE] 通知をカスタマイズする

※ここから先は、簡単なJSONの知識が必要になります。

  1. 接客サービス内に設定したWebhookアクションの編集画面を再度開きます

  2. [カスタマイズ]タブを開きます

  3. 変数bodyを編集することで、Webhookで送信するHTTPリクエストのbodyを直接記述することができます
    null

  4. ユーザー情報変数を追加することで、KARTEに連携されたユーザー毎のデータを通知に含めることができます

    • 次の例では、ユーザーの名前を参照するためのユーザー情報変数nameを追加し、それを通知に含めています
    • ユーザー情報変数で参照している値が連携されてないユーザーは、デフォルトでは接客サービスが実行されません。回避したい場合は、ユーザー情報変数の[デフォルト値]を適当な値で設定してください
      null
{
    "attachments": [
        {
            "color": "#{color}",
            "text": "ロイヤルユーザーの#{name}さんが来訪しました\n<https://admin.karte.io/p/#{project_id}/user/#{user_id}|KARTEでユーザーストーリーをみる>"
        }
    ]
}

参考事例

最後に、KARTEからのSlack通知を実際に使っている事例を紹介します。