,

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう

この記事は約 10 分で読めます

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 49e8f130 google assistant 5615055 1280

こんにちは。今回紹介するTaskerレシピは、任意のGoogleアシスタントのコマンドを実行する方法です。

TaskerからGoogleアシスタントのコマンドを直接実行する方法を調べたところ、AutoVoice(有料プラグイン)や2014年の古い記事しか見つからなかったため、記事にしました。この方法では、少々アナログチックですがプラグインを使わずに実行できます。

※2023/10/7 アシスタントのデフォルト入力をキーボードにした場合にうまく動作しなくなったため、AutoInputのプラグインを使った方法に修正しました。

※2023/10/9 いただいたコメントより、アシスタントを起動した際に、真ん中に「Googleレンズ」「マイク」「キーボード」が統合されたアイコンが出てくる場合の対応方法についてアシスタントの挙動が異なる場合 として追記しました。

※2023/12/04 いただいたコメントより、キーボードを優先にする設定項目が削除された場合の対応レシピを追記しました。

他のTaskerレシピについては以下を参照ください。

はじめに

Taskerから任意のGoogleアシスタントコマンドを実行することで、Googleホームに登録している照明やエアコンなどのスマートデバイスを操作することができます。帰宅時、外出時のルーティンはデフォルトの機能でありますが、Taskerを用いることで更に複雑な条件をトリガーにすることができます。

必要なもの

  • Androidスマートフォン
  • Tasker(有料アプリ)
  • AutoInput(有料プラグイン)

作り方

タスクの作成

以下のタスクを作成します。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう de296918 screenshot 20231007 095916
  1. ボイスコマンド(アシスタント)を起動します
  2. AutoInputプラグインを用いて、右下のキーボードボタンを押します
  3. 1秒待ちます(端末の環境に応じて変更してください)
  4. 任意のコマンド(例:電気つけて)をキーボードで打ち込み、エンターを押します

それでは作成の手順です。まずはTaskerを開いて、TASKSタブを選択します。

+ボタンをタップして任意の名前を入力してチェックマークをタップします。(記事では例としてTurnOn としました)

+ボタン > Input > Voice Commandを選択します。

次に、アシスタントが起動した後に右下のキーボードを押すコマンドを作成します。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう b6175ad6 screenshot 20231007 095948

+ボタン > Plugin > AutoInput > Actionを選択します。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 462b9489 screenshot 20231007 100056

Configurationのボタンを押します。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 245f9bd4 screenshot 20231007 100111

Easy Setup を選択します。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 6889bfc7 screenshot 20231007 100137

するとホーム画面に戻り、上記の通知が表示されるので、Add を押したあとにアシスタントを起動します。(Pixelのデフォルトは電源ボタン長押しです)

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 362e4a84 screenshot 20231007 100216

右下のキーボードアイコンをタップします。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 2ef57a41 screenshot 20231007 100235

すると、上記の通知が表示されるので、Accept をタップします。

アプリ履歴から、Taskerを再度開きます。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 39fe971c screenshot 20231007 100256

フィールド選択画面が表示されるので、Element Id~ をタップします。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 0f758cb2 screenshot 20231007 100316

Click をタップします。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 5f869f7a screenshot 20231007 100331

AutoInput Actionが上記のような設定になっていればOKです。これでキーボードのアイコンがタップされるようになりました。

+ボタン > Task > Waitを選択して、1 Secondsに設定します。(遅延時間は端末の環境に応じて変更してください)

+ボタン > Input > Keyboardを選択して、Inputの虫眼鏡アイコンから、Enter Text をタップします。続いてダイアログにGoogleアシスタントで実行したいテキストを入力します。(例:電気つけて)

以下に参考動画を貼ります。

再びInputの虫眼鏡アイコンから、Enter をタップします。Key Modifierが出ますが、何も選択せずに、適当な場所をタップして戻ります。Input には、write(コマンド),Enter と入力されていればOKです。

以下に参考動画を貼ります。

概要コード

作成したタスクのコードは以下です。

    Task: TurnOn
    
    A1: Voice Command
    
    A2: AutoInput Action [
         Configuration: Type: Id
         Value: com.google.android.googlequicksearchbox:id/nga_input_plate_right_icon
         Action : Click
         Timeout (Seconds): 5
         Structure Output (JSON, etc): On ]
    
    A3: Wait [
         MS: 0
         Seconds: 1
         Minutes: 0
         Hours: 0
         Days: 0 ]
    
    A4: Keyboard [
         Input: write(電気をつけて),Enter
         Time Between Inputs: 500 ]

活用例

作成したタスクの活用例を紹介します。

NFCタグと組み合わせる

NECタグにスマホをかざすことで、任意のGoogleアシスタントコマンドが実行できます。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう 0c26a482 screenshot 20230806 164212

プロファイルから、+ボタン > Event > Net > NFC Tagを選択します。

IDの虫眼鏡アイコンからNFCタグをスキャンして設定します。タスクは先程作成したものを設定します。ただし、スマートフォンがロック解除された状態でないとNFCタグが読み込まれないため注意してください。

私は10枚セットで1000円以下のものを購入しました。意外と安いです。

ウィジェットの作成

作成したタスクはホーム画面からウィジェットして呼び出すことができます。

ウィジェットを作成して実行するまでの操作を動画にしました。

まず、ホーム画面上でロングタップして、Taskerのウィジェットを追加します。

タスク1×1を選択します。

ロングタップして、配置する際に以下のエラーが出ることがあります。指示通り、Taskerアプリを開いて戻る を実行してアプリを終了しましょう。

【Taskerレシピ】GoogleアシスタントのコマンドをTaskerから実行しよう f6ee2b9e screenshot 20230805 071643

ショートカットが配置できたら、タスクの選択画面が出ます。先程作成した、タスクを選択しましょう。ホーム画面にアイコンが追加されたら完了です。

アシスタントの挙動が異なる場合

いただいたコメント(アンドレ日本様)より、アシスタントを起動した際に、真ん中に「Googleレンズ」「マイク」「キーボード」が統合されたアイコンが出てくる場合の対処法を紹介いただきました。

統合されたアイコンをAutoInputのEasySetupで押した際の要素はcom.googleandroid.googlequicksearchbox:id/opa_chat_ui と表示され、キーボードを起動できなかったそうですが、以下のタスクで動作確認したとのことです。

タスク: テスト
A1: アプリ起動 / Launch App [
パッケージ/アプリ名: アシスタント ]
 ※アシスタントを起動することで、音声入力ではなくキーボード入力が
  優先になるのでこちらにしました。
A2: AutoInput Action [
設定: Type: Text
Value: メッセージを入力
Text to Write : リビング照明をつけて
Action : Write
タイムアウト (秒): 23
構造を出力 (JSONなど): オン ]
 ※アシスタントを起動した際に入力エリアに記載されている”メッセージを入力”を
  ターゲットとして選択させ、さらにコマンドをセットさせています。

A3: キーボード / Keyboard [
入力: Enter
入力間の時間: 500 ]
 ※最後に確定させるためにEnterを入力。タスクの2でEnterも同時に設定できれば
  この項目は不要ですがやり方がわかりませんでした・・・。

有益な情報をありがとうございました。

キーボードを優先にする設定項目が削除された場合の対応レシピ

いただいたコメント(こと様)より、アシスタント起動した時、キーボードを優先にするという設定項目が削除されて表示されない場合の対応レシピについて紹介いただきました。TaskerプラグインのTouchTaskを使い、画面の座標を指定してキーボード入力を実行しています。(他のTasker記事で使っているAutoInputでも代用可能です)

1. Launch App
Package/App Name アシスタント

2. Wait
1 Second

3. Actions
Configuration Action: Tap Method: Point (x,y)…

4. Keyboard
Input write(電気つけて), wait (1000),Enter,Back

座標値「Point(x, y)」は画面の表示サイズや、端末の解像度に依存することにご注意ください。

有益な情報をありがとうございました。

おわりに

Googleアシスタントに任意のコマンドを実行することで、スマートデバイスを間接的にTaskerから簡単に操作することができます。スマートフォンの操作だけではなく、家電の操作ができるようになるため、かなりできることが広がったと思います。ぜひ活用してみてください。