【Google Home mini】 目薬をさす時刻をルーティンで忘れないようにする方法は?

本ページはプロモーションが含まれています
本ページはプロモーションが含まれています
スポンサーリンク

2018年12月10日に半額セールの楽天で買ったGoogle Home miniですが、今では、ほとんど目覚まし時計の代わりです。

最近、目が悪くなって目薬を毎日4回ささなくてはならなくなりました。

Google Home miniに「**時にアラーム」とお願いすれば、アラームを鳴らしてくれます。

これで、十分といえば十分なのですが、目覚ましのアラームも目薬のアラームも同じなので、目薬のアラームを音声にしてみました。

スマホのGoogl Homeアプリでは、一つのルーティンでタイムスケジュールは1つしか使えないようなので、PCで使えるGoogle Home for webでルーティンを作成してみました。

スマホでも時刻ごとに4つのルーティンを作ればいいわけなので、特に問題では有りませんが、今回は興味本位でPCで1本のルーティンに複数のタイムスケジュールを組み込んでみました。

余談ですが、スマホで作成したルーティンはPCでは編集できません。何か方法はあるのかもしれませんが。

まずは午前0時の案内を作成(タイムスケジュールは1つ)

https://home.google.com にアクセスします。

下のような画面が現れます。家族のルーティンには試しに作ったルーティンがいくつかすでにあります。

図-1

右に三角マークがないルーティンはスマホのアプリで作成したものなので、上で冊目した通り、PCでは編集はできません。

編集しようとすると次のようなメッセージが出ます。

図-2

これ以外は、PCで作成したので三角マークが付いています。

スマホアプリではメッセージのまま選んでいくとルーティンが出来上がるのでとても簡単にルーティンが作れます。

しかし、PCではスクリプトエディターを使って設定ファイルを編集しなくてはなりません。

ただ、YAMLで書かれた設定用のテンプレートの必要なとこを編集するだけなのでYAMLを知らなくても大丈夫です。

下のキャプチャー画像は、午前0時に目薬をさす案内を行うルーティンです。ほとんどコメントで、編集する箇所はごくわずかです。

図-3

metadata:
name: 深夜の目薬です # Choose a short name that summarizes important starters and actions, like “Sunset lights”.
description: 午前0時に「深夜の目薬です」と音声で流す # Write a detailed description that includes everything the automation does, like “At sunset, on weekdays, close blinds, turn on lights to 50%, and play the sunset playlist on certain speakers.”

nameにはルーティン名(どんなルーティンかわかるように)

descriputionnはルーティンの説明を入れます

ここは、これだけです。

automations:

ここがメインです。Starters「開始条件」、Conditions「条件」、Actions「アクション」の3つのコンポーネントでオートメーションがどう動作するのかを決めます。

・Starters「開始条件」は、開始するための条件を入れます。ここでは時刻です。

・Conditions「条件」は、オートメーションが実行されるための条件で、この条件が満たされたときにオートメーションは実行されます。今回はStarters「開始条件」で事足りるようなので、使いません。

・Actions「アクション」は、条件が満たされたときの動作を記載します。今回はアナウンスを流します。

Starters:「開始条件」

– type: time.schedule
# Required. Time to schedule automation. Accepts either clock time (10:00:00 AM, with seconds optional, or in a 24 hour format), or ‘sunrise’ or ‘sunset’, with an optional offset (‘sunrise+10m’, for instance)
at: 0:01 AM # HH:MM XM (12 hours format). Adjust time as needed
# Optional. Days of the week to run automation on.
weekdays:
– MON
– TUE
– WED
– THU
– FRI
– SAT
– SUN

Conditions「条件」なし

Starters「開始条件」

actions:
– type: assistant.command.Broadcast
message: 深夜の目薬です
devices: ベッドルーム – ベッドルーム *Google Home miniが置いてある部屋です

・typeには、とりあえずassistant.command.Broadcastを選びました。スピーカーから声が出るので大丈夫なようです。

・messageにはGoogle Home miniに喋ってもらう言葉を入れます。

・deviceはGoogle Home miniが実際に置かれている場所です。複数のミニがあれば、すべて選ぶこともできます。

2回アナウンスしてもらいたいので、下記の通り同じ内容を2つ書きました。

actions:
– type: assistant.command.Broadcast
message: 目薬を忘れずにさしてください
devices: ベッドルーム – ベッドルーム
– type: assistant.command.Broadcast
message: 目薬を忘れずにさしてください
devices: ベッドルーム – ベッドルーム

記載したリストから選ぶのはこれだけでした。この様にテンプレートを修正するだけなので誰でも簡単にできそうです。

気をつける点は、次の行に移るときは、半角スペースが2つ必要だということ、フォントは等幅フォントを使うことぐらいです。

上の図-3の下に保存と検証ボタンがあるので、まず検証ボタンをクリックして正しいかどうかをチェックします。OKなら保存です。

次に下の右にあるスイッチを有効にすれば、完了です。

最初の図-1に戻って、今作成した「深夜の目薬です」の三角マークをクリックすると、設定時刻に関係なくテストできます。

ここで、クリックすると、「ルーティンを開始しています」というメッセージが出たあと、Google Home miniから「深夜の目薬です」という音声メッセージが出ます。

ここまでで、午前0時の「深夜の目薬」は終わりです。

目薬は4回ささなくてはならないので、深夜の次は朝6時の目薬、正午の目薬、夕方6時の目薬を同様に作る必要があります。

実際に4つルーティン作って運用したところ大変便利で、目薬の差し忘れもなくなりました。

以下は、1つのルーティンに4つのルーティンを集約させた方法です。

条件を4つの時刻にしたルーティンを作成

次は、本題の1つのルーティンで4つの時刻にアナウンスを流す様にします。

やることは、Startersに4つのtypeを時刻ごとに作るだけです。4つのどれかの条件が来れば、アクションが起きます。

「深夜の目薬」をひな形にし、下記のtypeを追加します。

まず、先に作った「深夜の目薬」のコードを新しいテンプレートにコピーします。

次に、図-1の右上の「+新たに追加」をクリックします。テンプレートが出てくるので、全てクリアして、先程コピーした「深夜の目薬」のコードを貼り付けます。

上の図-3のコピーが出来上がります。

ただ、metadataのnameは別の名前に変更します。名前が同じだと保存できません。

次に、コピーした- type:のコードを3回貼り付けます。(時刻が4つあるので)

これをStartersに4つ書き込む

– type: time.schedule
# Required. Time to schedule automation. Accepts either clock time (10:00:00 AM, with seconds optional, or in a 24 hour format), or ‘sunrise’ or ‘sunset’, with an optional offset (‘sunrise+10m’, for instance)
at: 0:01 AM # HH:MM XM (12 hours format). Adjust time as needed
# Optional. Days of the week to run automation on.
weekdays:
– MON
– TUE
– WED
– THU
– FRI
– SAT
– SUN

貼り付けると図-4のようになります。カッコ悪いですが、これもちゃんと動作してくれます。

なお、時刻はテスト用に1分おきに設定していますが、ここは午前0時、午前6時、午後0時、午後6時にしています。

残念なのはメッセージ内容が皆同じになってしまうことですが、共通なので仕方有りません。

図-4

検証をクリックして、インデントなどに問題がなければ保存、有効化します。

コピペなどの手間を考えると、4つの独立したルーティンを作った方がてっとり早いです。

一応は動作しましたが、現在は別々の4つのルーティンで目薬のアナウンスをしています。

他にも方法は色々あると思いますが、とにかく簡単にできるのがいいです。

以上、備忘録も兼ねてのご紹介でした。

スポンサーリンク
テキストのコピーはできません。
タイトルとURLをコピーしました