システムデザイン

SlackとGoogleAppsScriptを組み合わせて社内業務報告を効率化する~Slack/GAS接続編~

*本記事は旧TechblogからCOLORSに統合した記事です。

初めまして、新卒のYです。
近年、チームのコミュニケーションツールとしてSlackを良く見かけますよね?
使ってると徐々に、「Slackは、コミュニケーションを取るだけのツール」だけではないという事に気づく人も多いと思います。

たとえば…

  • BOTを導入して毎朝天気を教えてくれる。
  • Slackから送信したスケジュールを自動的にGoogleカレンダーに追加。
  • 本日のゴミ出し当番をSlackがランダムに選出してくれる。etc..

少し調べただけでも上記のようなことを導入することができ、工夫次第では色々なことを効率化できるようになります。
つまり、Slackは何でも屋の素質があるのです。
記念すべき第1回目は、SlackとGoogleAppsScript(以下、GAS)の接続編です。

早速準備に取り掛かりましょう。

目次

  1. 目的
  2. 準備するもの
  3. 接続方法
  4. 次回

1.目的

さて、この連載では「何でも屋のSlackをより活用して社内の業務報告を効率化する」ことが目的です。

業務報告を忘れてしまったり、送信フォームが入力しづらかったりしている現在の状況を、slackと GASと連携させてることで作業効率化を図ります。
(GASを使用する理由としては、連携するslack、Gメール、Googleカレンダー、Googleフォームなど誰でも無料で簡単に始める事が出来るから)

2.準備するもの

・Slack (無料)
・Googleアカウント (無料)
以上!!

3.接続方法

SlackとGas(Google Apps Script)の連携イメージ図

上の図は簡単な全体の流れになります。
今回は赤枠で囲んだSlackとGASのやり取りを行う接続を解説します。

1. はじめに、GASの作成ですが、Googleドライブの「+新規」からGoogle Apps Scriptを選択します。
※一覧にないときは「アプリを追加」で探してください。

Gas(Google Apps Script)の新規作成

まず、こちらのサンプルソースを使ってSlackの接続から行っていきます。
今回は、「’/test’」と入力したら、「”test成功”」と返すところまでやってみましょう。

function doPost(e) {
  if (e.parameter.command == '/test'){
    return ContentService.createTextOutput(JSON.stringify({"text": "test成功。"})).setMimeType(ContentService.MimeType.JSON);
  }
}

GASは、Googleが提供している JavaScript ベースのスクリプト言語です、JavaScriptに似てるから扱いやすいですよね~。

2. 先程のソースをウェブアプリケーションとして保存と公開をします。
公開から「ウェブアプリケーションとして導入」を選択。

Gas(Google Apps Script)をウェブアプリケーションとして導入

アプリケーションにアクセスできるユーザーを「全員」にしておきます。

Gas(Google Apps Script)をウェブアプリケーションとして導入
プロジェクトバージョンに記載をする事で、間違えたときに戻すことも可能

「導入」をクリックすることで、URLを発行してくれました。
このURLは後に必要になってくるので、コピーしておきましょう。

ウェブアプリケーションURL

3. 次に、Slack側でプロジェクトをスラッシュコマンドとして認識させます。
Slackのワークスペース名から「Slackをカスタマイズ」を選択。

左側のアカウント欄に 「API」の項目があるので選択します。

Slackの設定

APIの総合ページに遷移するので、
画面中央の「Start Building」をクリックします。

Slackの設定

ここではAPP(アプリ)の概要を入力します。
「App Name」
→追加するアプリの名前を入力。
「Development slack Workspace」
→追加するAPPをどのワークスペースに追加するか指定。
最後に「Create App」をクリックします。

SlackApp作成

今回はスラッシュコマンドで認識させるので「Slash Commands」を選択します。
表示された画面で「Create New Command」をクリック。

Slack_スラッシュコマンド登録

登録するコマンドに対する中身の記載をしていきます。

Slack_スラッシュコマンド登録

「Save」を押して、successが出ればスラシュコマンドを作成できました。

4. 最後に、「Install App」を選択し、ワークスペースに作ったAppをインストールします!

SlackとGasの紐づけ

このような画面が表示されるので「Install App to Workspace」をクリック。

SlackとGasの紐づけ

遷移先で連携するチャンネルを選択しましょう。
選択後は下のようにアクセストークンが発行されるはずです。
※アクセストークンについては次回以降でお話します。

SlackとGasの紐づけ
アクセストークン

では、実際に打ち込んで見ましょう!

Slackコマンドを用いたGasとの連携

ちゃんと追加したコマンドが認識されてますね。

送信してみましょう。

Slackコマンドを用いたGasとの連携、成功


ちゃんとソースの返り値の”テスト成功”が返ってきました。
そして、無事にGASとSlackの接続をすることができました。
長かった接続編ですが、これにて終了です。

4.次回

次回はソース編。
今回は接続させる為、doPostだけでした。
実際の業務報告の処理の中身を説明していきます。乞うご期待!

This website stores cookies on your computer. These cookies are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to to opt-out of any future tracking, a cookie will be setup in your browser to remember this choice for one year.

Accept or Deny