いつか買ったこのアプリ。Androidに様々な設定をする「Tasker」。
ぼちぼちといじってはおったんですが最近色々とわかってきたのでここらでまとめ。

Bluetoothヘッドセットを使う時の悩みとして、Android特有の「着信・通知」の扱い。
ヘッドセットをしているときに本体がサイレントモードになっているともちろん本体からは着信音は流れません。
かといって、サイレントモードになっていなくてもヘッドセットから通知音は鳴らずに本体から鳴りよるんですわね。
あと、音楽を聴いてる時(スマホからヘッドセットに音楽が出力されている時)だけヘッドセットから着信音が聞こえるという謎な仕様。
・・・・・・もしかしたらXPERIAだけなのかも知れませんが。
これだと微妙に使いにくい。

一番の理想は「本体がサイレントモード、着信・通知音だけ常にヘッドセットから」。これ。

これをなんとか出来んもんかといじっていて何とか環境を作り上げる事が出来ました。

まずはTaskerを立ち上げてヘッドセット接続時のプロファイルを作成。
その際には使用したいヘッドセットを接続しながら作業をするとかなり設定が楽。

右下の「+」から新規プロファイルを作成。種類は「State」→「Net」→「BT Connected」を。

ここで接続しているBluetoothヘッドセットを選ぶ。
接続していないとMACアドレスなどを自分で入力せねばならなくなるので面倒くさい。

虫眼鏡アイコンをタップすると接続している機器の一覧が表示されるのでそこから選ぶと一発で入力完了されます。

その下の「Invert」は「反対の挙動」を示す設定なので、ここにチェックを入れると「この機器と接続が解除された時」になるので今回はチェックをいれないでおく。
もちろん「解除された場合」のタスクをここにチェックして作成することも出来ます。

このプロファイルに以下のTaskを紐付けた。

ヘッドセット接続時に紐付けたタスク一覧

一番上から「Bluetoothボイスの音量を15」「サイレントモードをオン」「メディア音量を15」、そして今回一番キモとなる「Variable Set」はTaskerには変数をセット出来る機能を使う。

Variable Setの設定画面

「Name」の所に変数名を入力。今回はわかりやすくするために「%Btconnected」にした。
変数名は必ずどこかを大文字に!Taskerのルールでどこかを大文字にするとグローバル変数になります。
すべて小文字だとローカル変数となり他のアプリケーションから呼び出せなくなるのでこれは必須。
「to」の所には「1」を設定。
「Do Maths」にチェックを入れる。

これで「ヘッドセット接続時に変数Btconnectedに1がセットされる」という事になる。
この変数を各アプリの着信音の出力先の分岐に使用する。

上記でヘッドセット接続時、のプロファイルは出来たので後は各アプリの通知音の設定をする。
今回は一番よく使われるであろう「LINE」を例にしてみる。

通知音をヘッドセットに流すタイミング、に何をトリガーにするのかを考えると
通知時に画面に出てくるポップアップを使用する事にする。
LINEの通知ポップアップをTaskerに感知させて、その際にヘッドセットに音を出力するという流れを組み込んでいく。

新規プロファイルを右下の「+」から追加する。項目は「Event」→「UI」→「Notification」。
そして一番上の「Owner Application」をタップして一覧から「LINE」を選ぶ。

これで「LINEアプリの通知ポップアップを検知した場合」というプロファイルが作成される。
ここに「ヘッドセットに通知音を出力させる」というタスクを紐付ける。
但しこのやり方だとLINE本体に収録されている着信・通知音は使えないので前もって使用したいmp3ファイルをスマホのストレージ内に転送しておく。

Tasksで新規タスクを作成する際、「Select Action Category」からは「Task」を選び、その中の「if」を選ぶ。
ここでさっき設定した「Btconnected」の変数を使う。
この変数に「1」が設定されている時だけ音楽ファイルを流す、というわけです。

という具合に%Btconnectedがもし1ならば「Music Play」で任意の音楽ファイルを鳴らす、という条件分岐を作ってやると先ほど作ったヘッドセット接続時だけのプロファイルと連動して、ヘッドセットに着信音が出力されるって事です。

この設定だと「invert」を使って「ヘッドセット接続解除された時には%Btconnectedを0」にという設定も作っておかないと、音楽ファイルが鳴りっぱなしになります。

あと「Music Play」に流す音の種類という設定項目(Stream)がありますがこれは「Media」にしないとダメでした。

この設定を「ヘッドセットに流したいアプリ」毎に作っていけば良いです。
自分はこれプラスFacebookだけで充分なのでFacebookアプリ用のプロファイルも作成しました。

これでようやく納得出来るヘッドセット環境が整いました。
・・・・・けっこうめんどくさいですけどね(笑)