大切な人からのLINE通知を見逃してしまって「あぁ...スマホ見てなかった...。」って公開したことはありませんか?
僕は家でも外でもマナーモードにしているので、スマホから目を離すと気づくことができません。
- 外出時はマナーモード。
- 家に帰ってきてもマナーモードのまま。
- ソファーの上とかにスマホ置いてしまって...。
- 他の作業に没頭。
- 奥さんからの「帰るよコール」を放置。
- 放置されたままの奥さんが帰宅。
- 僕:「ひぇぇぇ。スマホ見てなかった..!」
これを何度か繰り返しました...。
奥さんからLINE通知が届いたら、スマホがマナーモードだって、誰かが僕に教えておくれたらいいのにーーーーー!
執事が欲しい。執事が欲しい!
そんなことを思っても執事さんと3人ぐらしは嫌なので、スマホだけでできる対応を行いました。
※ 今回はAndroidを対象にした方法です。自由度の高いAndroidユーザーの皆さんラッキーですね!iOSの方ごめんなさい。
最終的にできたのがこちら!音声ありで見てみてください。
大切な人からのLineには即座に気づきたい...というのを解決できました!ヤッター!!
— ものもの / 家事×工作×カメラ旅×デジモノ ブロガー (@monomono__blog) 2019年3月27日
「家にいるとき、特定の人からのLineが届いたら、サイレントでも着信音を鳴らす!」が解決策です。やり方をまとめて後日記事にします😃 pic.twitter.com/bkvQ40nspk
うん、いい感じ!家にいるとき、奥さんからLINEが来たときは端末がサイレントモードでも着信音が鳴るので、これならLINE通知に気づける!!!
気づけない時はこんなとき
LINEの通知に気づけないとき、それはこんなとき。
- 自宅にいる
- スマホがサイレントモードかマナーモードになっている。
- スマホを自分の近くに置いていない。通知で画面が点灯したのに気づかない。
- テレビが付いていたり、キッチンにいたりすると、通知バイブ音さえ聞こえない。
「じゃあ、家に帰ったときにマナー解除すればいいかな?」とも思ったけど、それだと色んな通知が届くたびに通知音が鳴るので鬱陶しい。
ということで、今回求める要件はこちらです。
- 特定の人からのLINE通知のみ対象(今回は僕の奥さん)
- その時はマナーモードでも着信音が鳴るようにしたい
- この機能は家にいるときだけ有効にしたい(外出先や職場で、マナーになっているのに音がなったらマズイ)
「マナーモードなのに音を出せるの??」
できるんです!Androidならね!
Taskerを使おう
TaskerというAndroid用アプリは
「○○したら(状態になったら)○○する」
というのを実行できる(しかも細かく設定できる)超有能なアプリです。
400円のAndroid用アプリです。
「えっ有料なの?じゃあやーめた」
いやいやいや、そんなことは言わないでください!
- 数駅分の往復電車賃、カフェでのコーヒー1杯分、UFOキャッチャー2回分、プリクラ1回分...。
- 何万円も出して購入した端末が、あと数百円でもっと便利になるなら全然いいじゃないですか。
- 趣味で何か作ろうと思っても400円じゃ部品1つくらいしか買えないのに、Taskerは400円で色々と楽しめますよ!
- 「大切な人からの通知に気づけるようにする」という課題を400円で解決できるなら安いものじゃありませんか!
...と、有料だからという理由だけで諦めるのはもったいない!ぜひチャレンジしてみてほしいのです。
なお、Taskerは日本語非対応のアプリですが、複雑な英文が並んでいるわけではないので困ったら調べればなんとかなります。
「特定のLINE通知が届いたら、マナーモードでも音を鳴らす」というのは今回紹介する手順で進めていけばできます。もちろんそれ以上のこともできます。
- 家に着いたら、マナー解除。家を出たらマナーモード設定。
- 動画アプリを起動したら、画面回転ONにして、画面を明るくする。
- 充電器に接続したら、特定の人に通知。
- バッテリー残量が5%になったら、現在地をGoogleDriveに保存しておく。
- 毎時00分に部屋が明るかったら、時報を鳴らす。
まさに「全てはアイデア次第!」
難しいことをやろうとする場合には少しだけプログラミングの考え方が必要ですが、モノづくりが好きな人なら楽しみながらつくることができます。
日頃困っていること、実は単純な組み合わせで解決できるかもしれません。
Taskerを使ってみよう
さて、今回の仕様を再確認しましょう。
- 自分が自宅にいるときだけ
- 奥さんからのLINEの通知だけ対象
- マナーモードでも音を鳴らしたい
これをTaskerで作る場合、以下のようになります。
- 端末に届く「LINEからの通知」を検知する。
- LINE通知のタイトルで「奥さんからのメッセージであるか」を判定する。
- 端末のWi-Fi接続状況から、自宅にいるかどうかを判定する。
- マナーモードでも音を鳴らす。
こうやって見ると、やりたいことは簡単ですね!
「家にいるかどうか」という判定を、自宅Wi-Fiにつながっているかどうかで判定することにしました。GPSの位置で判定する方法もあるけど、時々GPSが途切れたり、家の周囲50mだと家に居ることになったりするので、Wi-Fiの接続で判定することにしました。
それでは、Taskerをインストールして始めましょう!
Taskerで特定のLINE通知を検知する
3つの手順ごとにスクリーンショットを貼って説明していきますね。
- まずはTaskerアプリを起動しましょう。
- 初回の説明が表示されるので上にあるチェックマークで次に進みましょう。
- 右画像の画面がTaskerのメイン画面です。
これでひとまず起動が完了しました!やったね!
それでは「LINEの通知を検知したら...」という部分を作っていきましょう。
- PROFILEタブを選択。
- 右下の+アイコンをタップ。
- Event→UI→Notificationを選択。
- Owner Applicationをタップ
- アプリ一覧からLINEを選択
- Titleに特定の人の名前を指定
「この人からのLINE通知は見逃したくない!」というLINEが届いたときに画面に表示される名前を指定しておきます。
今回の場合だと「メイさん」と指定してあります。
名前を指定して、バックキーで戻ろうとすると「Taskerアプリが端末に届いた通知を確認する権限が無いから、権限を与えてね!」と言われたので、権限を付与してあげましょう。
- Notification Access Service DisabledのダイアログでOKをタップ。
- 端末側の設定で「Taskerに権限を与えるか」を問われるので許可する。(この画面は使っている端末によって表示が異なります)
- Taskerによる通知へのアクセスが許可できたらバックキーで戻りましょう。
ここまでで「通知のタイトルが『メイさん』というLINEの通知が届いたことを検知したら...」という条件部分を作ることができました。
「音を鳴らす」動作を作る
- New Taskをタップします。
- タスク名を入力してチェックマークをタップします。今回は「メイさんからLINE通知」というタスク名を入力しました。
- タスク編集画面が表示されます、
「〇〇したら、☓☓する。」
の「☓☓する」にあたるのがTaskです。
今回は「LINEの通知を検知したら」→「家にいたら、音声を鳴らす」というように作ります。「☓☓する」というタスクの中にも状況の判定があるわけですね。
一気に作り込むと、うまく行かなかった場合にバグ(不具合)を探すのが大変なので、単純なところから順番に作っていきましょう。
まずは「LINEが届いたら」→「ビープ音(機械音)を鳴らす」という動作を作ることにしました。
- タスク編集画面の右下にある+アイコンをタップします。
- 下部のFilter(絞り込み)部分をタップします。
- beepと入力して、beepアクションを選択します。
- beepアクションの設定でStreamとしてAlermを設定しておきます。
- バックキーでbeepアクションの編集画面を抜けます。
beepアクションのStreamでAlermを選択しておくのがポイントで、これにより端末がマナーモードのときでも(目覚まし時計機能のように)音を鳴らすことができます。
Taskは「☓☓する」というものですが、1つのTaskの中には複数のActionを登録します。
Actionには「音を鳴らす」「画面を暗くする」「通知を表示する」「Webアクセスする」など様々な動作があるので、これを組み合わせて動かしたいようにプログラムしていくわけですね!
- beepアクションの編集画面から、Task編集画面に戻ったところです。左下の再生ボタンをタップしてみましょう。(マナーモードでも音が出ます!)
- バックキーで元の画面に戻りましょう。
PROFILESには「Notification LINE メイさん」→「メイさんからLINE通知」となっています。
さらにTASKタブを選択すると、先ほど作った「メイさんからLINE通知」のタスクが登録されていることを確認することができます。
テストしてみよう
ここまでできたら、指定した相手からLINE通知を受け取ってみましょう。
端末がマナーモードでも、ピーーーという機械音がなるようになりましたね!
上手く鳴らない場合は、
- 通知検知で指定した名前は合っているか
- アラーム音が消音になっていないか
- Taskerが通知を検知する権限を与えられているか
などを確認してみてください。
しかしこれではまだ不十分です。いつでもどこでも、その人からLINEを受けた場合にビープ音がなる状態になっています。
マナーモードに関わらず音がなるようにしたので、仕事中でも、授業中でも、映画館でも鳴ってしまいます。これは困る。
条件判定を追加してどうにかしよう!
自宅のWi-Fi情報を確認する
先ほど作ったタスク「メイさんからライン通知」を選択して、再びタスクの編集画面へ。
ビープ音だけが登録されている状態です。
- 右下の+アイコンをタップします
- Filter欄にFlashと入力して、Flashタスクを選択します。Flashタスクは画面上に一時的にメッセージを表示する機能です。
- Flashタスクの編集画面で、Text欄に%WIFIIと入力します。(WIFIIはWI-Fi Infoの略)
まずは自宅のWi-Fiに接続している状態にしておきましょう。
タスク編集画面左下の再生ボタンか、実際に対象者からのLINEを受け取ってみましょう。ビープ音に加えて、現在使用しているWi-Fiの情報が表示されるようになりました。
※画像を一部加工して文字列を隠してあります。
>>> CONNECTION <<<
'abcde-fghi-123'
のように、CONNECTION表示とともに、自宅Wi-Fiのアクセスポイント名(SSIDというもの)が表示されたらOKです。
とここで、ちょっと問題発生。
Taskerアプリを起動していない状態だとWi-Fiのアクセスポイント名が取得できずに<unknown ssid>と表示されてしまいました。
Android 8.1以上では、Wi-Fiアクセスポイント名の取得には「位置情報」の権限が必要だとのことです。
端末の設定アプリ→アプリ→Tasker→権限から、Takerアプリに位置情報の取得を行う権限を与えてあげましょう。
(なお、これはググってみて出てきたこちらの英語ページを参考にしました。うまくいかないときにはこうやって調べて解決していくのもカスタマイズの楽しさでもあります)
自宅にいるかを判定する
改めてTaskerを起動して「メイさんからのライン通知」タスクの編集画面を開きましょう。
ここでは「もし自宅のWi-Fiに接続していたら」という条件を作ります。
- これまでと同様に、右下の+アイコンから新しいアクションを追加します。
- Filter欄に「if」と入力して、ifアクションを選択します。
- Conditionの左側に %WIFII と入力します。
- 真ん中にある「〜」ボタンをタップして、Maches Regexを選択します。(~R表示に変更されていればOK)
- 右側には >>> CONNECTION <<< と全て半角で入力します。
バックキーでタスク編集画面にもどったら、もう一度右下の+アイコンをタップしてIfを追加しましょう。
- 同様に %WIFII、Maches Regexを設定します。
- 右側には先程確認しておいた、自宅Wi-Fiのアクセスポイント名を入力します。
バックキーでタスク編集画面に戻ると、Ifの下にさらにIfがある状態ですね。
これで「自宅Wi-Fiに接続できていたら」...つまり、「もしWi-Fi状態に >>> CONNECTION <<< が含まれていたら」かつ「もしWi-Fi状態に自宅のWi-Fiアクセスポイント名が含まれていたら」という条件を作ることができました。
「自宅にいる == 自宅のWi-Fi に接続できている」という意味です。
- 上部にあるBeepのアクションを長押しして、2つのIfの下に持ってきましょう。これで「自宅Wi-Fiに接続している場合のみ、Beepアクションを実行する」という動作に変更することができました。
ここで「Tasker is Battery Optimized」と表示がされました。これは「アプリを画面上で起動していない場合には動作が制限されちゃうよ。設定してね。」ということです。
アプリを起動していないTaskerが動かなくなると、通知の検知などができなくなってしまいます。そうなると今回作る起動が正常に動作しなくなくなるので、端末の設定でバッテリー最適化の対象からTaskerアプリを除外しておきましょう。
これは使っている端末によって設定方法が異なるので「端末名 バッテリー最適化 アプリ」などでググってみてください。
ついでにWi-Fi情報を確認するためのFlashアクションを無効化しておきましょう。
Flashアクションを長押し→右上の電源アイコン(ハサミと︙の間のもの)をタップすることで無効化することができました。
お疲れ様でした!
ここまでで一通りの動作を設定することができました!
- バックキーを何度か押してTaskerアプリを終了。
- 端末をマナーモードにしておく。
- 自宅のWi-Fiに接続しておく。
- 画面を消灯しておく。
- 設定しておいた相手からLINE通知を受け取る。
- (マナーモードでも)ビープ音が鳴る!!!
次に、Wi-Fiを切断した状態で同様にLINE通知を受け取ります。今度はビープ音が鳴らないことを確認できたらOKです。
「大切な人からのLINEが届いたら、マナーモードでも通知音を鳴らす」という機能を作ることができました!
ここまできたら、もうひと手間かけて好きな着信音を設定してみましょう。
好きな着信音を設定しよう
LINE通知が来るたびにピーーーという機械的なビープ音だと味気ないですよね。
だったら好きな曲を設定してみましょう!
端末内に入っている音声なら何でもOKです。
- 電話の着信音
- アラーム音
- 好きなアイドルの曲を着信音にすることもできます!(あらかじめ端末内に曲を用意しておきましょう)
懐かしのワード「着うた」を復活させちゃいましょう!
- 再度タスク編集画面を開いて、右下の+アイコンをタップします。
- filter欄にmusicと入力して、Music Playを選択します。
- File欄の右にある虫眼鏡アイコンをタップして曲のファイルを選択します。
端末内のフォルダが表示されるので、着信音や自分で準備した曲を選ぶだけ。
僕は適当な着信音を探すために、Zedgeというアプリを使ってみました。アプリを入れて、探して、好きな曲を選んで、ダウンロードするだけ。
- Zedgeで曲をダウンロードしておく。
- TaskerのFilesの虫眼鏡から、zedge→ringtone→ダウンロードした曲 を選択する。
そして、曲を選択した後で重要なのはStreamをAlarmにしておくことです。
端末がサイレントモードでも鳴らすためにはStreamをAlarmにしておきましょう!
バックキーでタスク編集画面に戻ったら、先程追加していたBeepを無効化しておきましょう。(beepアクションを長押し→電源アイコンをタップで無効化)
これで「特定の人からのLINE通知→指定した曲を再生」ができましたね!
ただ、この状態だと指定した曲が終わるまで再生されてしまいます。JPOPなどの曲ファイルを指定した場合は3分なり続けることに...。それは長すぎるので「5秒だけ再生してほしい」という設定を追加してみましょう。
Music Playアクションの下に、WaitとMusic Stopアクションを追加するだけです!
「音楽再生開始→5秒待つ→曲を止める」ができるようになりましたね。
これで作業は終了です。お疲れ様でした!!!
課題を解決できた!
大切な人からのLineには即座に気づきたい...というのを解決できました!ヤッター!!
— ものもの / 家事×工作×カメラ旅×デジモノ ブロガー (@monomono__blog) 2019年3月27日
「家にいるとき、特定の人からのLineが届いたら、サイレントでも着信音を鳴らす!」が解決策です。やり方をまとめて後日記事にします😃 pic.twitter.com/bkvQ40nspk
- 家に帰ってくる。
- マナーモードのままソファーの上に放置。
- 僕はキッチンに居る。
こんな状況でも、奥さんからLINEが届いたときだけ、スマホから着信音が流れてくるので気づけるようになりました!
やったぁー!
「もっと色々やってみたい!」と思った方、ぜひぜひやってみましょう!
以下のサイトに細かな説明があって、とても参考になります。一通り目を通してみて、Profiles、Tasks、Actionの関係性を意識しておくと作りやすいですよ。
日本語解説なのがありがたい!
まとめ「Androidの自己流カスタマイズを楽しもう」
今回は
- LINEの通知タイトルが〇〇であるか
- Wi-Fiが繋がっているか
- Wi-Fiの名前は自宅のものか
- 音楽再生する
という単純な仕組みだけで「特定の人からの通知だったら音で知らせる。たとえマナー中でも!」という立派な新機能を作ることができました。
AndroidはiPhoneに比べて自由度が高くて、いろんな動作をいじって楽しむことができます。せっかくAndroidをチョイスしたなら、もっと便利にカスタマイズしちゃおうじゃありませんか!
以上「奥さんからのLINEには絶対に気づきたい!対策を講じてみた」というお話でした!