SlackBotを配布するためにはSlackのoauth.accessAPIを叩く必要がありますが、サーバを用意するのも面倒だったため、スパッとGoogle Apps Scriptで書きました。
Google Apps Scriptを新規で作成して、そのファイルのURLをOAuth & PermissionsのRedirect URLsに追加します。
Google Apps Scriptの中身は下記のClientIDとClientSecretを編集したあとコピペしてください。
これでSlackBotを配布する準備ができました。簡単。
var CLIENT_ID = "YOUR CLIENT_ID";
var CLIENT_SECRET = "YOUR CLIENT_SECRET";
function doGet(request) {
try {
var payload = {
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
"code": request.parameter.code
};
UrlFetchApp.fetch("https://slack.com/api/oauth.access", {
"method": "post",
"contentType": "application/x-www-form-urlencoded",
"payload": payload
});
return HtmlService.createTemplateFromFile("result").evaluate();
} catch(error) {
// error handling
}
}
result.html(oauth認証成功後に表示させるHTML)
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
認証が成功しました。
</body>
</html>