はじめに
先日Amazonで買い物をしていたら、3000円でスマートウォッチが売っていて衝動買いをしてしまいました。
中国製の奴で正直結構不満点がありますが、私は趣味でたまにランニングをするのでLineや着信通知,走行距離あたりは結構役に立っています。
ただ自分でスマートウォッチ内で扱えるアプリが作れたりできたらもっと理想的な感じはしますね。まあこればっかりは衝動買いしてしまった自分が悪いのですが。
というのはおいておいて、slackもこのスマートウォッチに通知を送りたかったのですがその設定ができないっぽかったです。
ただslackの通知をlineに転送すればスマートウォッチに表示できるのでは?という考えから色々調べたところ、Google Apps Script(GAS)がもしかしたら使えるかもしれないと分かり始めてみました。
前置きが長くなってしまいましたが今回は導入から簡単なスクリプト作成までを紹介したいと思います。
スクリプトの書く準備
まずはGoogle Apps Scriptのスクリプトを書くためのスクリプトエディタを起動するところから始まります。
Googleドライブにログインをします。
スクリプトエディタは各Googleアプリのツールバーのツール -> スクリプトエディタ
から起動することができますが、今回はGoogleスプレッドシートから開きます。
こんな感じの画面がでてくればOKです。
ちなみにその他 -> アプリを追加
からGoogleAppScriptsというアプリを使い、直接起動することもできます。
ちょっとだけ補足
また全てのアプリでは試していませんが、以下のアプリでスクリプトエディタを起動することができました。
- Googleスプレッドシート
- Googleドキュメント
- Googleフォーム
- Googleスライド
- Googleサイト
これらのようになにかのアプリにGASが付いているものはContainer Bound Scriptと呼び、単独で存在するものをStandalone Scriptと呼ぶようです。
この二つにはいくつかできることが異なるところがあるので要注意です。
こちらのサイトで丁寧に説明されていたのでよければチェックしてみてください。
Google Apps Script 入門 - Qiita
簡単なプログラムを作成する
プログラムはJavaScript
にて書きます。また少し手を加えてばTypeScript
も使えるみたいです。
C#
が好きな私にとってはTypeScript
が使えるのはかなりありがたいですね。
最初はログにて定番のハローワールドをしてみます。
function myFunction() { Logger.log('Hello,World!') }
この状態でctrl + Enter
を押してみると、ログに文字が出力されていることが確認できます。
メッセージボックスを使う
ログだけでは少し味気ないので、メッセージボックスにハローワールドしちゃいましょう。
ただここで使う関数はContainer Bound Scriptのみできるということに注意してください。
function myFunction() { Browser.msgBox('Hello,World!'); }
これを実行するときは上のツールバーから実行 -> 関数を実行 -> myFunction
を選択します。
するとセキュリティから許可を求められますが、許可をすると…(詳細のところから実行できます)
無事ハローワールドできました!
さいごに
ひとまずslackからlineへの通知転送を目標にやっていけたらと思います。
もしかしたらできない可能性もありますが…。