yoshiislandblog.net
元営業の駆け出しアラサーSEが、休日にMACと戯れた際の殴り書きメモ。日々勉強。日々進歩。

この記事は3年以上前に書かれた記事で内容が古い可能性があります

GAS(Google Apps Script)でSlack BotにPostするお話

2019-06-30

GAS(Google Apps Script)を使ってSlack BotにPostするお話

このモチベーションは、GASを使えば簡単に、スクリプトのスケジュール実行ができるので
Botとの相性が良さそうと思ったのがきっかけ

参考:
Google Apps Scriptはスケジューリングできるって

まずはSlackのLibrary Keyを登録
「Resources」>「Libraries」

M3W5Ut3Q39AaIwLquryEPMwV62A3znfOO

バージョンはひとまず最新にしておく

ポストするコードはこんな感じ
myFuncrtionを実行するといける

//========================================
// variables
//========================================

var userProperties = PropertiesService.getUserProperties().getProperties();
var slackAccessToken = userProperties['slackAccessToken'];  
var channelId = userProperties['slack_channel_id'];


//========================================
// post Slack
//========================================

function slackPost(msg) {
  var slackApp = SlackApp.create(slackAccessToken);
  var message = msg;
  var options = {
    as_user: true  // or username: "hogehoge"
  }  
  slackApp.postMessage(channelId, message, options);
}


//++++++++++++++++++++++++++++++++++++++++
// Execution
//++++++++++++++++++++++++++++++++++++++++

function myFuncrtion() {
  msg = 'test'
  slackPost(msg)
  
}

最初は認証やら聞かれるのでOKしておく

Variablesの部分は以下を参考に
GAS(Google Apps Script)の小ネタ〜変数
 
slack botの作り方は以下を参考に
Office365のOutlook APIをpythonで叩いてSlackに本日と翌営業日の予定をPostしようとしてみる(4)Slack Appの作成