Google Spreadsheet との Cast 連携
概要
Actcast の Cast 機能を使用することで、GAS(Google App Script)を介して直接に Google Spreadsheet にデータを書き込むことが可能です。
設定方法
事前に Google アカウントの登録が必要です。登録済みのアカウントがある場合は、新規に登録する必要はありません。
Google Spreadsheet と GAS の設定
1.空のスプレッドシートを作成します。
- 任意のファイル名をつけます。ファイル名は設定後に変更してもアドレスが変わる事はありません。
- URL をコピーします。
- 「拡張機能」から、「Appscript」を開きます。
2. GAS を編集します。
下記を GAS 編集画面に貼り付けます。
3 行目の URL を 1 にてコピーした URL に変更します。 Cast 内容に応じてパラメータ名も変更します。
function doPost(e) {
// スプレッドシートを開く URLは先程作成したスプシのアドレスに変更する。
const url = "https://docs.google.com/spreadsheets/d/1t8se-HM****UdOi-cm1Wg0Mc3g8PonKsevjNCTn4o52E7C*****Q/edit#gid=0";
const ss = SpreadsheetApp.openByUrl(url);
const sheet = ss.getSheets()[0];
// 受け取ったJSONデータをパース
const jsonData = JSON.parse(e.postData.contents);
// JSONデータからパラメータを取得 適宜パラメータ名を変更する。
const params = {
"area_name": jsonData.area_name,
"on": jsonData.on,
"off": jsonData.off
};
// スプレッドシートにデータを追加
sheet.appendRow(Object.values(params));
// 成功メッセージを返す
return ContentService.createTextOutput('success');
}
3. デプロイ
GAS 記述内容をデプロイします。
「デプロイ」を選択し、種類を「ウェブアプリ」に設定します。
次のユーザとして実行は、自分のアカウントを設定します。
アクセスできるユーザは「全員」。許可設定などがでてきたら許可します。
「デプロイ」を押すと、URL が生成されるのでコピーします。
スプレッドシート側の設定は以上です。
Cast 設定
actcast にログイン後、左メニューから任意のアプリケーション > Casts
を選択し、Make New Cast
ボタンをクリックしてください。
まずはトリガーを設定します。 ここでは無条件ですべてのデータを送信させるために、何も設定せずにConfigure Action
をクリックします。
続いてアクションを設定します。
Cast 設定画面にて、URL にデプロイにて生成された URL を貼り付けます。
その他は下記の通りに設定します。ただし Body
のパラメータ名は GAS 側と合わせる必要があります。
Webhook
を選択し、 Webhook 用の設定画面を表示します
URL
には先ほど作成した関数のエンドポイントを入力します
Method
やHeaders
、Body
に関しては、関数内で実装した内容に応じて設定します
Finish
をクリックすると Cast が作成されます。
以上で連携作業は完了となります。
Castについて詳しい設定や仕様が知りたい場合には、Cast の項目をご確認ください。
rate limit について
アクションが Webhook である Cast はレート制限の設定を持ちます。 レート制限の設定値とは Cast の URL が指す Cast 対象サービスに対して一定期間内に送出できるリクエストの回数の上限を表します。 Act に登録されているデバイスたちがこの上限以上の Act Log を送出しようとした場合、Actcast は上限を超える分を Cast 対象サービスにリクエストすることなく破棄します。 レート制限やその解除方法についてはCast のレート制限に関する項目をご参照ください
免責
当社は、当社以外の第三者により管理・運営されるサービス(以下「第三者サービス」といいます。「Google Spreadsheet」および、「Google App Script」はこれに該当します。)と当社サービスを Cast を用いて連携させる機能を提供していますが、その連携や連携の継続を保証するものではありません。
当社は、当社サービスと連携またはリンクされている第三者サービスの正確性、信頼性、完全性、有用性およびセキュリティにつき、いかなる保証もいたしません。第三者サービスの詳細や仕様、最新の情報については、第三者サービスの管理・運営者の公式サイト等を参照し、最新の情報を確認いただくことを強くお勧めします。
お客様は、第三者サービスの利用をお客様の責任において行うものとし、当社は第三者サービスの利用によりお客様又は第三者に生じた一切の損害について何らの責任を負いません。また、お客様は、第三者サービスの利用について当該第三者サービスの利用規約、契約等に従うものとし、自らの責任でこれらの内容を確認し、遵守してください。
Cast を用いた当社サービスと第三者サービスとの連携に関して問題や疑問が生じたときは、当社までお問合せいただければ、可能な範囲でサポートさせていただきます。しかし、第三者サービスの使用方法やサービスに関するお問合せについては、第三者サービスの公式サポート窓口等をご利用いただきますようお願いいたします。