Zendesk Explore からのレポート (メール) を Google Apps Script で Slack へ転送する
作ったきっかけ
Zendesk Explore を使うと、Zendesk のメトリクス (問い合わせ数やバックログ、満足度など) を簡単に可視化できます。加えて、定期的にメールでの通知もできます。しかし、現状 Slack へ通知する方法がないようなので Google Apps Script で作りました。
使用にあたっての前提条件
使用には以下が必要ですので注意して下さい。
- Zendesk Explore の作成権限がある
- Gmail を使っている
- Gmail で Zendesk Explore からのレポートを受信できる
- Google Apps Script を作成する権限がある
- Slack App を作成する権限がある
作ったもの
以下がコードの全容です。
使い方
GitHub の README にも簡単に書いたのですが、備忘のためにもステップバイステップで書いておきます。
Zendesk Explore で Dashboard の作成
適当な Dashboard を作ります。作ったことがなければ、こちらの記事などを参考にしてください。
Zendesk Explore の Dashboard で Schedule の作成
こちらの記事も参考にしてください。
Dashboard の Schedule
-> New schedule
をクリックして、レポートの配信予定を作成します。
配信予定や件名、本文、添付内容を選択して次へ進みます。
最後にメール送信先を自分の Gmail に設定して、Zendesk 側は準備完了です。
Gmail でメールの受信を確認
配信予定タイミングにメールが送られてくることを確認してください。配信には数分程度かかることもあります。
Slack App を作成
-
https://api.slack.com/apps へアクセスして
Create New App
>From scratch
をクリックします。 - 任意のアプリ名を付けて、ファイルを送信するワークスペースへ紐づけます。
-
OAuth & Permissions
タブへアクセスします
- 下へスクロールして、Scopes に
files:write
を追加します
- 上へスクロールして、
Install to Workspace
をクリックします
- 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 を新規作成します。
以下のコードをコピーアンドペーストして、保存します。
以下の 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