update.はじめにSlack導入したのでせっかくだからBOT作ってみた。辞書が簡単に編集できるといいなーということでスプレッドシートに。Scriptからスプレッドシート開いてその内容と発言のテキスト照合して以下云々する感じ。GASながらかなりお手軽に作成できたので、引っ張ってきた情報や若干引っかかった点などをまとめ。いえばHelloWorldGoogleドライブ→マイドライブから新規作成。選ぶと新しいプロジェクトができるので適当に名前をつけよう。いい感じのライブラリがあるのでいい感じに感謝しつついい感じに使う。Qiitaあたりを参考に、リソース→ライブラリ→ライブラリの検索に以下を入力。M3W5Ut3Q39AaIwLquryEPMwV62A3znfOOバージョンに最新を選んで保存するとこのライブラリが使えるようになる。tokenボタンを押すだけ。トークンなどの定数はスクリプトプロパティに入れておくとよい。環境によってコード変える必要なくなるし。値:さっきのをペーストで登録する。Methodボタンを押すと、そのTeam内のチャンネル一覧が出るので、ポストしたいチャンネルのnameに対応するIDをコピー。これも例によってスクリプトプロパティへ。値:さっきのをペーストあとはポストするユーザー名を適当に決める。値:適当に決めるこれで準備は完了。null;}GASの特徴として、実行時はエディタで関数を選んで実行するというものがある。このコードの中には関数を呼び出す部分は特に記載していない。関数名のdoPost(e)については後ほどBOT化させるのに必要なのでこのようにしている。これで実行すると指定したチャンネルにポストされる。ポストに反応させてみるそんなわけで次はポストに反応させてみよう。先ほどのスクリプトを外から叩けるように公開する。バージョン:新規コメント:編集内容を適当にメモアプリケーションにアクセスできるユーザー:全員(匿名ユーザーを含む)これらを指定して登録すると、外部アクセス用のURLが出てくる。このURLを叩くとこのスクリプトが実行されるというわけだ。先ほどの関数はdoPostになっていて、GETメソッドのURL直打ちでは実行されない。WebHooks」というAppを探して導入する。これを導入すると、特定の語で始まるポストが送られたときに指定したURLを叩かせることができる。いくつかの参考資料ではこのAppがGETで叩いているらしく先ほどのスクリプトの関数名がdoGet(e)となっていたが、筆者の環境ではdoPost(e)でしか動かなかったので、バージョン差などがあるかもしれない。設定方法についてはこんな感じ。Channel:監視したいチャンネルを選択。Word(s):反応する文字列。ポストがこの語で始まったらURLを叩く。チャンネルにAllを指定している場合は必須。区切りで複数指定可能。(誤記があったので修正)URL(s):先ほどのURL。Token:POSTの検証用。