BAND+GAS

でサークル運営してみる

自己紹介

  • @basictomonokai
  • ただのおじさん(事務職)
  • ノンプログラマー
  • 趣味でBASIC!とHTML、JS、CSS程度
  • 運動のサークル所属

きっかけ

  • サークルの事務担当
  • 今までは投稿するとメールが送れる無料レンタル掲示板で全て連絡・調整をやっていた
  • サークルの新年会で変えた方がいいと言われた
  • 面倒くさいが仕方なく探し始めた

見つけたもの

  • BAND

 サークル運営管理アプリ

 有名なLINEの姉妹アプリ

 機能

  カレンダーの予定登録

  出欠確認、掲示板、トーク 

なかなか良いが通知が弱い

  • 現在までメールがイベントのトリガー
  • おじさん、おばさんばかりなのですぐ忘れる
  • 事前に何回か通知する必要がある
  • スマホに慣れていないのでプッシュ通知はダメ
  • 体にガタがきているのでドタキャンやドタ参加多い
  • 緊急な連絡ほどメールでないと伝わらない

必要と考えた機能

  • イベント当日、2、7、10日前のメール通知+掲示板投稿
  • 緊急連絡(メール+掲示板用)の専用WEB画面

しつこいまでの通知機能と緊急時にオロオロ

しない超簡単な専用画面

 

実現方式(イメージ)

BANDとGASを連携

実現方式1(内容)

  • BANDのOpen APIを使いGASが掲示板へアクセス
function sendHttpPost(message){
   var payload =
   {
     "access_token" : "xxxxx",
     "band_key" : "yyyyy",
     "content" : message,
     "do_push" : ccc
   };
   var options =
   {
     "method" : "post",
     "payload" : payload
   };

   var response = UrlFetchApp.fetch("https://openapi.band.us/v2.2/band/post/create", options);
   Logger.log(response)
}

実現方式2(内容)

  • BANDのカレンダーをGASがGet
    var response = UrlFetchApp.fetch("https://api.band.us/ical?token=aaaaaa");
  • GASのトリガーで自動実行

実現方式3(内容)

  • 臨時投稿用のWEBアプリ画面
  MailApp.sendEmail('','サークルのメール', 'サークルです。\n投稿お知らせ\n\n'+honbun,
     { name: 'サークル投稿ツール',
       bcc: 'aaa1@bbb.cc,aaa2@bbb.cc,aaa3@bbb.cc,
     });
  • GASからメール通知

実現方式4(さらに追加)

  • サークルLINEグループに通知するWEB画面も追加

GASでやってみて(1)

 

  • Pros

◆ネット上にGASの情報多い
 ⇒Qiitaやそれ以外のサイトでも記事は多い
 ⇒社内自動化の記事など
GASはJSなのでJSの情報も役に立った
 ⇒JSで動けば大体動く印象
ブラウザーだけで作れるので楽
 ⇒Androidタブレットでも一応作れた

GASでやってみて(2)

 

  • Cons

◆BANDとGASの連携情報はゼロ
 ⇒SLACK、ChatWork、Fitbit等の連携記事を参考
◆BANDとGoogleのカレンダーの連携は出来ず
 ⇒BANDのカレンダーはなぜかUTC(9時間ずれる)
 ⇒Googleカレンダーと連携せず、iCALを直読みした
◆GASでのWebアプリのコンテンツは特殊
 ⇒GASでは「.gs」と「.html」しか作れない
 ⇒「index.js」→「index.js.html」の形で登録
◆BANDのバグ?
 ⇒カレンダーを変更するとTZがTokyo→Seoulに

苦労したけどなんとかできた

でもこれからが大変

おじさん、おばさん達との最終テストが

待っている

カットオーバーはもうすぐ…

 

- EOF -

BAND+GAS

By basictomonokai

BAND+GAS

  • 1,511