📨

Zendesk Explore からのレポート (メール) を Google Apps Script で Slack へ転送する

2023/06/06に公開

作ったきっかけ

Zendesk Explore を使うと、Zendesk のメトリクス (問い合わせ数やバックログ、満足度など) を簡単に可視化できます。加えて、定期的にメールでの通知もできます。しかし、現状 Slack へ通知する方法がないようなので Google Apps Script で作りました。

使用にあたっての前提条件

使用には以下が必要ですので注意して下さい。

  • Zendesk Explore の作成権限がある
  • Gmail を使っている
  • Gmail で Zendesk Explore からのレポートを受信できる
  • Google Apps Script を作成する権限がある
  • Slack App を作成する権限がある

作ったもの

以下がコードの全容です。

https://github.com/nmikuni/gmail-attachment-to-slack/blob/main/gmail-attachment-to-slack.gs

使い方

GitHub の README にも簡単に書いたのですが、備忘のためにもステップバイステップで書いておきます。

Zendesk Explore で Dashboard の作成

適当な Dashboard を作ります。作ったことがなければ、こちらの記事などを参考にしてください。

https://qiita.com/n_mikuni/items/d95a2ddf5f044e2c74ba

Zendesk Explore の Dashboard で Schedule の作成

こちらの記事も参考にしてください。

https://support.zendesk.com/hc/ja/articles/4408843602714-ダッシュボード配信のスケジューリング

Dashboard の Schedule -> New schedule をクリックして、レポートの配信予定を作成します。

配信予定や件名、本文、添付内容を選択して次へ進みます。

最後にメール送信先を自分の Gmail に設定して、Zendesk 側は準備完了です。

Gmail でメールの受信を確認

配信予定タイミングにメールが送られてくることを確認してください。配信には数分程度かかることもあります。

Slack App を作成

  1. https://api.slack.com/apps へアクセスして Create New App > From scratch をクリックします。
  2. 任意のアプリ名を付けて、ファイルを送信するワークスペースへ紐づけます。
  3. OAuth & Permissions タブへアクセスします
  4. 下へスクロールして、Scopes に files:write を追加します
  5. 上へスクロールして、Install to Workspace をクリックします
  6. Bot User OAuth Token を控えます

レポートを送る Slack チャンネルを設定

レポートを送る Slack チャンネルへ、作成した Slack App を招待します。 @[作成した Slack アプリ名] でメンションすると招待できます。

Slack チャンネルの ID を取得

レポートを送る Slack チャンネルの ID を取得します。方法はありますが、Windows のデスクトップアプリの場合、チャンネル名を右クリックすると Copy > Copy link で URL を取得できます。

この URL の文字列は https://{ワークスペース名}.slack.com/archives/{チャンネル ID} という形式です。

Google Apps Script の作成

Google Drive の適当なフォルダから Google Apps Script を新規作成します。

以下のコードをコピーアンドペーストして、保存します。

https://github.com/nmikuni/gmail-attachment-to-slack/blob/main/gmail-attachment-to-slack.gs

以下の 3 箇所を置き換えます。

  • YOUR_TITLE: 「Zendesk Explore の Dashboard で Schedule の作成」で控えた件名
  • YOUR_CHANNEL_ID: 「Slack チャンネルの ID を取得」で控えた ID
  • YOUR_TOKEN: 「Slack App を作成」で控えた Token


画像のハイライト部分に書き換える箇所があります

Google Apps Script の実行

Run アイコンをクリックして実行します。はじめての実行の場合は権限を付与するためのポップアップが表示されるのですべて許可します。

成功していれば、Slack へ画像が送信されます。

おわりに

標準で Slack 連携ができるようになれば楽なのですが、ひとまずこれで Zendesk の活動を Slack で見ることができるようになります。ぜひご活用ください。

Discussion