Edited at

TENKitとGoogle Apps Scriptの連携(条件分岐編)

本記事は、TENKit の応用的な利用について説明いたします。

事前に基礎編「 TENKitとGoogleスプレッドシートの連携(簡単記録編)」をご確認いただきますようお願いします。

TENKit (テンキット)は「テンキー」を「IoT」化するキットです。

TENKit では、テンキーで入力された「数字」と、Googleスプレッドシートなどクラウド上のサービスを簡単に結びつけることができます。

ここでは、TENKit の応用的な利用として、テンキーから入力された値に基づき、条件分岐して別の異なる処理を行う方法について説明します。

具体的には、テンキーからの入力に「*」が含まれている場合と含まれていない場合とで、それぞれ異なるシートに値を記録する方法について記載します。



これにより、テンキーからの入力を工夫することによって、1つのTENKit を複数の用途に利用することが可能になります。


設定前の準備

条件分岐編の連携を設定する前に、以下の項目を確認してください。

1. 基礎編をマスター

事前に基礎編「 TENKitとGoogleスプレッドシートの連携(簡単記録編)」をご確認いただき、TENKitの基本的な利用方法についてマスターしていただくようお願いします。

2. Googleスレプッドシートを開く

Googleスレプッドシート にアクセスし、新しいスプレッドシートを作成して、名前を「TENKit分岐」として保存します。

3. 「メイン」シートを用意

作成したGoogleスプレッドシート「TENKit分岐」の下部のシート部分で、シート名を「シート1」から「メイン」に変更します。

3. 「サブ」シートを作成

続いて、横の「+」ボタンを押し、シートを追加します。

追加したシート名を「サブ」に変更してください。


連携の設定

コードを作成し、公開してWebhook URLを取得後、TENKitに登録します。


コードの作成

上部の「ツール」メニューより「スクリプトエディタ」を選択し、Google Apps Scriptの編集画面を開きます。

スプレッドシートと同じく、名前(プロジェクト名)を「TENKit分岐」に設定します。



元のコードを全て削除し、「コード.gs」に下記のコードを記載します。

// POSTリクエストに対する処理

function doPost(e) {
// TENKitから送信された情報の取得
// message : 送信された内容
// created_at : 送信された時間
var contents = JSON.parse(e.postData.contents);
var message = contents.message;
var created_at = contents.created_at;

// スプレッドシートの取得
var ss = SpreadsheetApp.getActive();
//「*」が含まれていない場合
if(message.indexOf("*") == -1){
// シート(メイン)を取得
// 取得した情報を追加(appendRow)
var main_sheet = ss.getSheetByName('メイン');
main_sheet.appendRow([created_at, message]);

// 「*」が含まれている場合
} else {
// シート(サブ)を取得
// 取得した情報を追加(appendRow)
var sub_sheet = ss.getSheetByName('サブ');
sub_sheet.appendRow([created_at, message]);
}
}

「message」に「*」が含まれているかどうかを確認し、メインまたはサブのどちらのシートに書き込むか、処理を振り分けています。

ここで、一旦、実行ボタン

を押してコードの承認手続きを行ってください。

「このアプリは確認されていません」というアラートが表示された場合は、左下の「詳細」をクリックし、次に「TENKit分岐(安全でないページ)に移動」をクリックして承認手続きを実行してください。

承認手順実行後に、「postDataを読み取れません」というエラーが発生しますが、問題ありませんので、そのまま次の手順に進んでください。


コードの公開

コードを公開し、Webhook用のURLを作成します。

Google Apps Scriptの編集画面の「公開」メニューより「ウェブアプリケーションとして導入」を選択します。



以下の画面が表示されるので、「アプリケーションにアクセスできるユーザー」に「全員(匿名ユーザー含む)」を選択して「導入」ボタンを押してください。



その後、以下の画面が表示されれば成功です。



最後に「ウェブアプリケーションのURL」を以下専用の設定ページで登録します。


テンキーから入力

最後に、TENKitに接続されたテンキーを入力します。

以下のように、スプレッドシートに入力内容が記録されれば成功です。

・「」が含まれていない場合




・「
」が含まれている場合



ここで何らかのエラーが発生した際は、スマホアプリの履歴にエラー内容が表示されますので、ご確認ください。


最後に

本手順では、TENKit の応用的な利用として、テンキーから入力された値に基づく条件分岐について説明しました。

これにより、TENKit を複数の用途で利用することが可能になります。

どのように利用するはかアイデア次第です。面白い使い方を是非発見してください。