NIFの楽園

主にAndroidスマートフォンやアプリに関する紹介

【自動実行アプリ「Tasker」の使い方】【作成例5】電話着信時に、その端末以外に着信を連携する方法について

2017/04/16

 このような需要は、あまりないと思いますが、スマートフォンを2台持っている場合に、一台はマナーモードにして、カバンの奥底に忍ばせ、もう一台はポケモンGOをしながら手持ちで歩いているときなどに、マナーモードのスマートフォンに着信があったときに、ポケモンGOの画面に「電話があったよ」と表示してくれたらすぐに折り返し電話ができるので便利かなとひとり思っています。

 電話を着信したときに、役に立ちそうな「Context」、「Action」、組み込み変数等の使い方を紹介しているので、何かの時の参考にしてください。

※「Tasker」アプリバージョン:4.9u4m
※使用したAndroid端末:「Sony Xperia Z4(SOV31)」(OS:7.0)

・スポンサーリンク


1.着信を感知する各コンテキストの違いについて

 イベントコンテキストの「Missed Call」と「Phone Ringing」は、ある出来事が起こったときなので、それぞれ「不在着信になったとき」「電話が着信したとき」にプロファイルがアクティブになります。
 ステートコンテキストの「Missed Call」は、ある状態なので、「通話記録に不在着信がある」ときに、プロファイルがアクティブになります。

・それぞれのコンテキストの編集画面

①このコンテキストを有効にする電話の相手(発信者)を指定します。
②このイベントが検出される優先順位を選択します。
③チェックすると、指定した発信者以外のときにこのコンテキストが有効になります。
④変数から、発信者が指定できます。
⑤パターンマッチングの選択ができます。

・「A Single Contact」:「連絡先」が画面表示されるので、その中から選択します。
・「A Favourite Contact」:「C:FAV」と入力されます。
・「A Contact Group」:グループ名称の選択肢が表示されるので、その中から選択します。
・「Any Contact」:「C:ANY」と入力されます。

1)ステートコンテキストの「Missed Call」について

 電話に出ることなく、発信者A側が電話を切ったとき(いわゆる不在着信)に「アクティブ」になり、タスク(アクション)が実行されて、通話履歴を見るかその通知をタップする(削除を含めて)まで「アクティブ」のままです。
 よって、「アクティブ」状態の(その不在着信に何も対応しない)まま、次の不在着信(発信者Bから)があっても、タスク(アクション)は実行されません。

2)イベントコンテキストの「Missed Call」について

 電話に出ることなく、発信者A側が電話を切ったとき(いわゆる不在着信)に「アクティブ」になり、タスク(アクション)が実行されます。
 その不在着信の情報が残ったまま、再び同じ発信者Aからの不在着信でも、「アクティブ」になり、タスク(アクション)が動作されます。ここが、ステートコンテキストの「Missed Call」と違うところです。
 
3)「Phone Ringing」について

 電話が着信したときに「アクティブ」になり、タスク(アクション)が実行されます。「Missed Call」より「アクティブ」になるタイミングが早いです。

2.発信者の指定の仕方(+パターンマッチング)
 
 「Caller」は、オプションになっているので、何も指定しなくてもいいわけでその場合は、すべての発信者を指定したことになります。
 指定するときは、連絡先に登録してある「名前」または「電話番号」を「/」区切りで直接または変数で指定します。
 あるいは、「パターンマッチング」を利用して指定することもできます。

【Tips】発信者のパターンマッチングについて
・「C:ANY」:連絡先にあるいずかの電話番号と一致した場合
・「C:FAV」:連絡先にある「お気に入り」にあるいずかの電話番号と一致した場合
・「CG:グループ名称」:連絡先にある「グループ名称」と一致するグループ内にあるいずかの電話番号と一致した場合
上記以外は、一般のパターンマッチングルールに従います。
(例)
・「!C:ANY」:連絡先に登録されている電話番号と一致しない場合
・「080*」:「080」で始まる電話番号と一致した場合

・スポンサーリンク


3.他のスマートフォンに「着信」を連携するアクションについて

1)SMSを自動送信する「Send SMS」アクションを利用する方法


①SMSを送信する先の電話番号を指定します。虫眼鏡アイコンをタップすると「連絡先」から選択できます。複数選択する場合は「/」で区切ります。
②メッセージを入力します。
(例)ここでは、次のようにしました。

変数は、タグアイコンをタップして選択します。
・「%NTITLE」:不在着信したときの通知タイトル(発信者がわかります。←ここは、端末の個体差があるかもしれません)
・「%DATE」:(不在)着信したときの日付
・「%TIME」:(不在)着信したときの時刻


(注意)
・組み込み変数に「%CNAME」「 %CNUM」「%CDATE」「%CTIME」とありますが、これらからは、最後に通話したときの情報が取得できます。よって、(不在)着信しただけでは通話したことにならないので、残念ながら、この組み込み変数からは、だれが(不在)着信時の発信者なのかはわかりません。
・組み込み変数「%NTITLE」は、通知のタイトルを取得して格納してくれます。
※通常は、不在着信になると通知してくれます。着信だけでは通知はされません。

【SMS送信のデメリット】
・SMS送信には、料金が発生します。(無料になるサービスもあるようですが、特別なケースです。)

2)メールを自動送信する「Locale SendSilentMail Plug-in」アクションを利用する方法

  ※詳しくは、こちらをご覧ください。
・「Mail Subject」(件名)には、『不在着信あり』と入力。 
・「Mail Text」(本文)には、「Send SMS」のメッセージ(②)に入力したものと同じものを入力。

【メール送信のデメリット】
・アプリ「SendSilentMail」が有料です。

【メール送信のメリット】
・従量制でない限り、定額の通信料金に含まれるので、メール送信で新たな料金は発生しません。
・あらゆるデバイス(PCでも)で確認できます。

4.結論

 『イベントコンテキストの「Missed Call」』×『メール送信』としました。

 その理由として、イベントコンテキストの「Missed Call」は、不在着信がある都度、タスクを実行します。また、不在着信時には通知されるので「通知タイトル」が取得でき、発信者がわかります。
 メール送信にした理由は、SMS送信では料金が都度発生することと、SIMカードがないデバイスでもメール受信できることです。

以下、Taskerの各編集を紹介しておきます。

①PROFILESタブ画面(プロファイルの一覧) ②「Missed Call」Event編集画面

③Task編集画面 ④Action編集画面

⑤「Locale SendSilentMail Plug-in」の編集画面

・スポンサーリンク


以上

Amazon.co.jpアソシエイト(商品検索)

Amazon.co.jpアソシエイト(商品検索)

-example
-, , , , , , , , ,