GoogleフォームをGoogleスプレッドシートに接続して、
フォームへの入力やスプレッドシートの変更があるたびにslackに内容を投稿するモノを作っています。
がうまくいきません。
エラーは出ていないのですが、肝心のslackへの投稿ができていない感じです。
ご教授お願いいたします。
GAS
1function myFunction(){ 2 3var postText; 4 5//GoogleSpreadSheetの変更をSlackに通知する関数 6 7function postSheetChange(){ 8 9//自作の関数:slackに通知する文字列を作成 10createSendMessage(); 11//slackに通知する文字列を設定 12var postText = this.postText; 13//自作の関数: textをslackに通知する関数を呼び出す 14postSlack(postText) 15} 16 17function createSendMessage(){ 18var time = new Date(); 19var month = time.getMonth() + 1; 20var day = time.getDate(); 21var today = month + '月'+ day + '日'; 22var postText; 23var notifySheet = SpreadsheetApp.getActiveSpreadsheet(); 24 25function postSlack(text){ 26var url = 'WEB hook URL'; 27var options = { 28'method' : 'POST', 29'headers': {'Content-type': 'application/json'}, 30'payload' : JSON.stringify({ 31 'channel' : '#予約状況', 32 'text' : text, 33 }) 34}; 35UrlFetchApp.fetch(url, options); 36} 37 38//アクティブセルを取得する 39var myCell = notifySheet.getActiveCell(); 40 41//アクティブセルがD列の場合(仕事の進捗)のみ通知する 42if(myCell.getColumn() == 2,3,4,5,6,7,8){ 43var rowNum = myCell.getRow(); 44 45//slackへの投稿文章 46this.postText = 47'(' + today + ')ご予約が入りました\n' + 48'お名前 :' + notifySheet.getRange('C' + rowNum).getValue() + '\n' + 49'利用するお部屋 :' + notifySheet.getRange('D' + rowNum).getValue() + '\n' + 50'利用日時:' + notifySheet.getRange('E' + rowNum).getValue() + '\n' + 51'退室予定:' + notifySheet.getRange('F' + rowNum).getValue() + '\n' + 52'利用人数:' + notifySheet.getRange('G' + rowNum).getValue() + '\n' + 53'備考:' + notifySheet.getRange('H' + rowNum).getValue() + '\n'; 54} 55} 56} 57
回答1件
あなたの回答
tips
プレビュー