LANG SELRCT

コードを書く場所についてはこちら

2017年11月19日日曜日

Slack BOTでGoogle検索のリンクを返す



bot@を入力したときだけ
Google検索のリンクを返す例です


  1. Google Apps Scriptで応答用のアプリケーションを作る
  2. Slack側の設定をする

1, 2の方法は以下の記事に書きました



コード.gsの例です



コード.gs
var TOKEN = "取得したtoken"
var POST_URL = 'https://slack.com/api/chat.postMessage';

function doPost(e) {
  var text = e["parameter"]["text"];
  var value = text.replace("bot@", "");
  value = value.replace(/\s/g, "+");
  var link = "https://www.google.co.jp/search?q=" + value;
  var payload = {
    token: TOKEN,
    channel: '#general',
    text: link,
    icon_emoji: ':sunny:',
    username: 'hello bot'
  };
  var params = {
    'method': 'post',
    'payload': payload
  };
  UrlFetchApp.fetch(POST_URL, params);
}
意訳.gs
取得したtokenを設定する
メッセージを送るurlを設定する

この機能は以下を実行する
送信されたテキストを取得して
"bot@"を削除して
空白(スペース、タブ、改行)をすべて+に置き換えて
Google検索のリンクを作り
payloadのデータを作る
取得したtokenを設定
投稿するchannelを設定
投稿するtextにlinkを設定
アイコンの絵文字を設定
usernameを設定

paramsのデータを作る
methodをpostに設定
payloadのデータを設定

paramsを付けてslackのAPIをたたく