本記事は、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 を複数の用途で利用することが可能になります。
どのように利用するはかアイデア次第です。面白い使い方を是非発見してください。