Androidデバイス2台(非Root)に入ってる電話アプリたち(プリイン電話アプリ/LINE/Duo/Rakuten Link)の着信・発信・不在着信のログがTasker経由で一応取れるようになったのでメモ。
着信・発信・通話終了・不在着信、4種類の通知を受け取ったその時、その時刻で、1分間の予定がGoogleカレンダーに作成されるものです。(1分間=Taskerのカレンダー登録アクションのデフォ値)
わしがTasker真面目に触り始めて2日くらいなので、初心者に優しい記事になってる…はず… 理解できないところあったらリプでもコメでもいいので教えてくれ~ わしも理解できてるか怪しいが…
※注意
通話時間が予定継続時間になるわけではないヨ!いずれそういうやつも作ってみたいけど、とりあえず今回は絶対各ログ1分間の予定になります!
もっといい方法あるかもだけど、Tasker初心者だからとりあえず思いついたこの方法でしばらく動かしてみるヨ!
また、各電話アプリの通知の文言を拾って作動させるやつだから、アプリのアプデとかで今後文言が変わったりすると、判別する文言を修正しなきゃいけないから注意!しかもデバイスやバージョンで通知の文言は変わってくると思うから、通知の文言(イベントパラメータ)の確認は避けて通れない!
めちゃくちゃ面倒くさい方法だけど、わしはIFTTTモバイルアプリをアンインストールするって決めたんや…!何が何でもTaskerで可能にせんといかんのや…!
イベントパラメータ確認
まず、今回はTaskerの通知系のイベントをトリガーに使うんだけど、その際受け取れるイベントパラメータという、通知の内容が入ってる変数がいくつかある。(着信中!とか発信しています!とかの発着信のときの通知の文言を拾うよ。)今回はその変数を使って、発着信・通話終了・不在着信を判別したり、そのままログに出力したりするので、その内容のうち使えそうな変数を把握しておく。
イベント: 通知 → アクション: カレンダー登録(タイトル: “%evtprm()”)
とりあえず上記のような、通知のイベントパラメータを全部カレンダーに出力って内容の、シンプルなテスト用プロファイルを作って「%evtprm()」を出力する。すると、イベントパラメータの全部(%evtprm1〜%evtprm8)の内容がカレンダーの予定のタイトルとなって確認できるので、はじめにアプリの通知毎にこれを動かして、使えそうなイベントパラメータを確認する。
ここで作った通知のイベントパラメータを確認するだけのプロファイルは、今後各アプリのアプデ等の影響でログが取れなくなった時の確認でも使えるので温存しておく。
イベントパラメータの内容を全部まとめたやつは、この記事の一番下にあります。
プロファイル内容
着信プロファイル
↓この表は、それぞれのアプリの着信の通知を受け取ってみて、その際イベントパラメータで受け取れた、着信判別に使えそうな項目をまとめたもの。
%evtprm() | 電話 | LINE | Duo | Rakuten Link |
---|---|---|---|---|
タイトル (%evtprm2) | [相手の名前か番号] | [相手の名前] | [相手の名前か番号] | 音声通話の着信 |
文字 (%evtprm3) | 通話着信 | LINE音声通話を着信中… | Duo の音声通話を着信しています | [相手の名前か番号] |
左3つの電話アプリは、イベントパラメータの 文字(%evtprm3) で、その通知が着信かどうかを判別できそう。Rakuten Linkだけは 文字(%evtprm3) で判別できないため、タイトル(%evtprm2) で判別する別のプロファイルを用意する。おのれRakuten Linkめ。
この時”着信”の文字列だけで判別すると、不在着信の通知も拾っちゃうから注意。
イベントパラメータの判別箇所が決まったら、イベントを指定していく。
イベント | 通知 |
所有者であるアプリ (%evtprm1) | LINE, Duo, 電話 |
タイトル (%evtprm2) | |
文字 (%evtprm3) | 通話着信/*着信中*/*通話を着信しています (電話用/LINE用/Duo用) |
副テキスト (%evtprm4) | |
メッセージ (%evtprm5) | |
その他のテキスト (%evtprm6) | |
カテゴリー (%evtprm7 ?) | |
新着のみ (%evtprm8 ?) | 未チェック |
指定したアプリの通知で、文字(%evtprm3) が入力値と一致する場合って内容のトリガーになった。そしてこれに紐づけた下のタスクのアクションが発動する。
タスク “電話 着信ログ”
アクション | カレンダー登録 |
あと / 継続 (分) | |
カレンダー | Google:[任意のカレンダー] (虫眼鏡マークから選択できる) |
タイトル | 電話: %evtprm3 %evtprm2 (”電話: 着信中 0X0-XXXX-XXXX”的な表記になる) |
説明 | from Tasker (カレンダー見た時わかりやすくするため念の為記述) |
場所 | |
予定あり | 未チェック |
全日 | 未チェック |
エラーが起きても続ける | 未チェック |
If | なし |
ラベル | 未チェック |
着信プロファイル(Rakuten Link用)
Rakuten Linkは 文字(%evtprm3) で判別できないから、タイトル(%evtprm2) で判別する。
イベント | 通知 |
所有者であるアプリ (%evtprm1) | Rakuten Link |
タイトル (%evtprm2) | *通話の着信 |
文字 (%evtprm3) | |
副テキスト (%evtprm4) | |
メッセージ (%evtprm5) | |
その他のテキスト (%evtprm6) | |
カテゴリー (%evtprm7 ?) | |
新着のみ (%evtprm8 ?) | 未チェック |
タスク “電話 着信ログ(Rakuten Link用)”
他の電話アプリと タイトル(%evtprm2) と 文字(%evtprm3) の内容の種類が逆だから、ログのタイトルに出力する変数の順序を変えた。
アクション | カレンダー登録 |
あと / 継続 (分) | |
カレンダー | Google:[任意のカレンダー] |
タイトル | 電話: %evtprm2 %evtprm3 (”電話: 着信 0X0-XXXX-XXXX”的な表記になる) |
説明 | from Tasker |
場所 | |
予定あり | 未チェック |
全日 | 未チェック |
エラーが起きても続ける | 未チェック |
If | なし |
ラベル | 未チェック |
発信プロファイル
発信のときの各電話アプリの通知(イベントパラメータ)内容はこんな感じ。
%evtprm() | 電話 | LINE | Duo | Rakuten Link |
---|---|---|---|---|
タイトル (%evtprm2) | [相手の名前か番号] | [相手の名前] | [名前か番号]さんと通話中です | [相手の名前か番号] |
文字 (%evtprm3) | 発信中 | LINE音声通話を発信中… | タップすると会話に戻ります | 発信中 |
発信プロファイルは全部 文字(%evtprm3) で発信の通知かどうかを判別できそう。
イベント | 通知 |
所有者であるアプリ | LINE, Duo, Rakuten Link, 電話 |
タイトル | |
文字 | *発信中*/タップすると会話に戻ります (右はDuo用) |
副テキスト | |
メッセージ | |
その他のテキスト | |
カテゴリー | |
新着のみ | 未チェック |
タスク “電話 発信ログ”
アクション | カレンダー登録 |
あと / 継続 (分) | |
カレンダー | Google:[任意のカレンダー] |
タイトル | 電話: %evtprm3 %evtprm2 (電話: 発信中 0X0-XXXX-XXXX) |
説明 | from Tasker |
場所 | |
予定あり | 未チェック |
全日 | 未チェック |
エラーが起きても続ける | 未チェック |
If | なし |
ラベル | 未チェック |
通話終了プロファイル
“通話中”の通知が削除された時、作動するやつ。終話で通知が勝手に消えた場合でも作動しました。
%evtprm() | 電話 | LINE | Duo | Rakuten Link |
---|---|---|---|---|
タイトル (%evtprm2) | [相手の名前か番号] | [相手の名前] | [名前か番号]さんと通話中です | [相手の名前か番号] |
文字 (%evtprm3) | 通話中 | LINE通話中… | タップすると会話に戻ります | 通話進行中 |
イベント種類は、”通知が削除された”になる。
イベント | 通知が削除された |
所有者であるアプリ | LINE, Duo, Rakuten Link, 電話 |
タイトル | |
文字 | *通話中*/タップすると会話に戻ります/通話進行中 (電話とLINE用/Duo用/Rakuten Link用) |
副テキスト | |
メッセージ | |
その他のテキスト | |
カテゴリー | |
新着のみ | 未チェック |
タスク “電話 通話終了ログ”
文字(%evtprm3) を拾ってきても内容は”通話中”とかなので、”通話終了”っていう文字列を決め打ちで出す。
アクション | カレンダー登録 |
あと / 継続 (分) | |
カレンダー | Google:[任意のカレンダー] |
タイトル | 電話: 通話終了 %evtprm2 (電話: 通話終了 0X0-XXXX-XXXX) |
説明 | from Tasker |
場所 | |
予定あり | 未チェック |
全日 | 未チェック |
エラーが起きても続ける | 未チェック |
If | なし |
ラベル | 未チェック |
不在着信プロファイル
タイトル(%evtprm2) と 文字(%evtprm3) の内容の種類がまちまちなので、タイトル(%evtprm2) で判別するプロファイルと、文字(%evtprm3) で判別するプロファイル、2通りを作る。
%evtprm() | 電話 | 電話2 | LINE | Duo | Rakuten Link |
---|---|---|---|---|---|
タイトル (%evtprm2) | 不在着信 | [相手の名前か番号] | LINE不在着信 | [相手の名前か番号] | [相手の名前か番号] |
文字 (%evtprm3) | [相手の名前か番号] | 不在着信 | [相手の名前か番号] | Duo の音声通話に出られませんでした | 不在着信 |
不在着信プロファイル(タイトル判別)
イベント | 通知 |
所有者であるアプリ | LINE |
タイトル | *不在着信 |
文字 | |
副テキスト | |
メッセージ | |
その他のテキスト | |
カテゴリー | |
新着のみ | 未チェック |
タスク “電話 不在着信ログ(タイトル 文字)”
アクション | カレンダー登録 |
あと / 継続 (分) | |
カレンダー | Google:[任意のカレンダー] |
タイトル | 電話: %evtprm2 %evtprm3 (タイトル 文字 の順序) |
説明 | from Tasker |
場所 | |
予定あり | 未チェック |
全日 | 未チェック |
エラーが起きても続ける | 未チェック |
If | なし |
ラベル | 未チェック |
不在着信プロファイル(文字判別)
イベント | 通知 |
所有者であるアプリ | Duo, Rakuten Link, 電話 |
タイトル | |
文字 | 不在着信/*通話に出られませんでした (電話とRakuten Link用/Duo用) |
副テキスト | |
メッセージ | |
その他のテキスト | |
カテゴリー | |
新着のみ | 未チェック |
タスク “電話 不在着信ログ(文字 タイトル)”
アクション | カレンダー登録 |
あと / 継続 (分) | |
カレンダー | Google:[任意のカレンダー] |
タイトル | 電話: %evtprm3 %evtprm2 (文字 タイトル の順序) |
説明 | from Tasker |
場所 | |
予定あり | 未チェック |
全日 | 未チェック |
エラーが起きても続ける | 未チェック |
If | なし |
ラベル | 未チェック |
Googleカレンダーに実際に出力されたログ
電話着信 | 電話: 通話着信 0X0-XXXX-XXXX |
電話発信 | 電話: 発信中 0X0-XXXX-XXXX |
電話通話終了 | 電話: 通話終了 0X0-XXXX-XXXX |
電話不在着信 | 電話: 不在着信 0X0-XXXX-XXXX |
LINE着信 | 電話: LINE音声通話を着信中… 名前 |
LINE発信 | 電話: LINE音声通話を発信中… 名前 |
LINE通話終了 | 電話: 通話終了 名前 |
LINE不在着信 | 電話: LINE不在着信 名前 |
Duo着信 | 電話: Duo の音声通話を着信しています 0X0-XXXX-XXXX |
Duo発信 | 電話: タップすると会話に戻ります 0X0-XXXX-XXXX さんと通話中です |
Duo通話終了 | 電話: 通話終了 0X0-XXXX-XXXX さんと通話中です |
Duo不在着信 | 電話: Duo の音声通話に出られませんでした 0X0-XXXX-XXXX |
Rakuten Link着信 | 電話: 音声通話の着信 0X0-XXXX-XXXX |
Rakuten Link発信 | 電話: 発信中 0X0-XXXX-XXXX |
Rakuten Link通話終了 | 電話: 通話終了 0X0-XXXX-XXXX |
Rakuten Link不在着信 | 電話: 不在着信 0X0-XXXX-XXXX |
電話かけつつ、実行ログを見つつ、テストしてました。
↓プロファイル一覧はこんな感じで安定。
イベントパラメータの内容メモ
通知毎のイベントパラメータの内容をまとめてみた。主に %evtprm2 と %evtprm3 を拾って、判別やログに使う感じ。
※アプリのアプデとかで今後文言が変わる可能性あり。また、デバイスやバージョンで変わってくる可能性あり。
電話アプリ
%evtprm() | 電話(不在着信) | 電話(不在着信2) | 電話(着信中) | 電話(発信中) | 電話(通話中) |
---|---|---|---|---|---|
%evtprm1 | com.google.android.dialer | 左と同じ | 左と同じ | 左と同じ | 左と同じ |
%evtprm2 | 不在着信 | 相手の名前か番号 | 相手の名前か番号 | 相手の名前か番号 | 相手の名前か番号 |
%evtprm3 | 相手の名前か番号 | 不在着信 | 通話着信 | 発信中 | 通話中 |
%evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 |
%evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 |
%evtprm6 | %evtprm6 | %evtprm6 | %evtprm6 | %evtprm6 | %evtprm6 |
%evtprm7 | %evtprm7 | missed_call | call | %evtprm7 | – |
%evtprm8 | false | false | false | false | – |
LINE
%evtprm() | LINE(不在着信) | LINE(着信中) | LINE(発信中) | LINE(通話中) |
---|---|---|---|---|
%evtprm1 | jp.naver.line.android | 左と同じ | 左と同じ | 左と同じ |
%evtprm2 | LINE不在着信 | 相手の名前 | 相手の名前 | 相手の名前 |
%evtprm3 | 相手の名前 | LINE音声通話を着信中… | LINE音声通話を発信中… | LINE通話中… |
%evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 |
%evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 | LINE通話中… |
%evtprm6 | 友達の名前 | LINE音声通話を着信中… | LINE音声通話を発信中… | – |
%evtprm7 | msg | call | msg | msg |
%evtprm8 | false | false | false | – |
Duo
%evtprm() | Duo(不在着信) | Duo(着信中) | Duo(発信中) | Duo(通話中) |
---|---|---|---|---|
%evtprm1 | com.google.android.apps.tachyon | 左と同じ | 左と同じ | 左と同じ |
%evtprm2 | 相手の名前か番号 | 相手の名前か番号 | [名前か番号]さんと通話中です | [名前か番号]さんと通話中です |
%evtprm3 | Duo の音声通話に出られませんでした | Duo の音声通話を着信しています | タップすると会話に戻ります | タップすると会話に戻ります |
%evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 |
%evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 |
%evtprm6 | %evtprm6 | 相手の名前か番号 Duo の音声通話を着信しています | [名前か番号]さんと通話中です タップすると会話に戻ります | [名前か番号]さんと通話中です タップすると会話に戻ります |
%evtprm7 | missed_call | call | %evtprm7 | %evtprm7 |
%evtprm8 | true | false | false | false |
Rakuten Link
%evtprm() | Rakuten Link(不在着信) | Link(着信中) | Link(発信中) | Link(通話中) |
---|---|---|---|---|
%evtprm1 | jp.co.rakuten.mobile.rcs | 左と同じ | 左と同じ | 左と同じ |
%evtprm2 | 相手の名前か番号 | 音声通話の着信 | 相手の名前か番号 | 相手の名前か番号 |
%evtprm3 | 不在着信 | 相手の名前か番号 | 発信中 | 通話進行中 |
%evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 | %evtprm4 |
%evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 | %evtprm5 |
%evtprm6 | %evtprm6 | %evtprm6 | %evtprm6 | %evtprm6 |
%evtprm7 | %evtprm7 | call | %evtprm7 | %evtprm7 |
%evtprm8 | false | false | false | false |
コメント