今年イベントブース展示用に、Google Home
, Node-RED
, kintone
連携でこんなカスタマイズを作りました。
📣Google Home でイベントスケジュールを自動アナウンス
当初、ローカルに Node-RED インストールして実行という方法で作ったので、毎回デモしようにもセットアップが大変...
ということで、IBM Cloud に乗せ換えたver.
も備忘録として書いておきます!
他環境に移植しやすいようにするためであれば docker で構築する手もありますが、結局ローカル実行になるので、今回は持ち運び便利なクラウドを選びました。
Overview
kintone に登録しているイベントのタイムテーブルデータを一定時間おきにチェックして、今から10分後までに始まるセッションを Google Home でお知らせします。
- 10分後までに始まるセッションがある場合は、そのセッション名をお知らせ
- 10分後までに始まるセッションがない場合は、その他のコンテンツをお知らせ
Customization
以下の設定は元記事を参考にしてください。
今回は IBM Cloud 設定部分のみ書きます。
- kintone アプリ作成
- Google Home アプリのインストールと設定
- Node-RED の処理フロー設定

IBM Cloud Setting
Node-RED は IBM社が開発しているので、セットアップも楽ちんです。
IBM Cloud 上の Node-RED では、Cloudant データベースインスタンスや、各種 IBM クラウドサービスに簡単にアクセスできるノード一覧も提供されるので、やはり本家でやるのが良いなという感じです。
以下設定手順です。
- こちらより IBM Cloud にログイン(Lite アカウントを利用)1
-
Node-RED Starter
をカタログで検索 -
Cloud Foundry アプリ
の作成(* ライトプランのアプリは無料)
作成手順の詳細はこちら - Node-RED を立ち上げて、こちらを参考にフローの詳細設定を行う
-
GetNextSessions
function にて、JST に時刻を合わせる(リージョンが違う場合)
.zone('+0900')
を追記
-
// moment.js のインストール
const moment = require('moment');
// 現在時刻
const now = moment().zone('+0900').format('HH:mm');
// 10分後の時刻
const afterTenMins = moment().zone('+0900').add('minutes', 10).format('HH:mm');
- 右上の
デプロイ
ボタンでデプロイ実行

-
デバッグ欄
にて HTTP リクエストや Google Home からの発話が上手くいくか動作確認
- フローは
flow.json
で書き出せるので、ローカルに保存しておくと安心。![]()
![]()
- さらに IBM Cloud にデプロイする場合は、こちらの記事を参考に設定を行う。
IBM Cloud DevOps ToolChainを利用してNode-RED環境を 簡単にデプロイする方法
Reference
- IBMクラウドで実行する
- Node-RED Starter を使用したアプリの作成
- IBM LiteアカウントでNode-REDインスタンスを作成する
- IBM Cloud DevOps ToolChainを利用してNode-RED環境を 簡単にデプロイする方法
- [GitHub] node-red-bluemix-starter
- 【ハンズオン】Node-RED入門編
-
IBM Cloud Lite アカウントで作成したインスタンスには、「10日間開発なしでアプリの自動停止」, 「30日間活動なしでサービスの自動削除」 というルールがあるので要注意 ↩