LINEのメッセージをしゃべらせてみよう - おっさんの人生は毎日が修行

LINEのメッセージをしゃべらせてみよう

taskerLINE.jpg

Tasker活用の第二弾です。

LINEを使われている方は多いと思いますが、車を運転中などにメッセージが届くと気になりませんか?
もし、届いたメッセージを読み上げてくれたら、大事な用件かすぐに分かりますよね。
大丈夫、ちゃんと出来ますよ。

ちなみに、これはAndroidの通知を利用するので、読み上げても既読にはなりません。
スタンプの場合は「誰々さんがスタンプを送信しました。」と読み上げます。

[重要]
くれぐれも、スマートホンの操作は安全な場所に車を止めてからお願いしますよ。

1.
まずプロファイルの作成ですが、[EVENT]の[UI]-[Notification]をタップします。
Screenshot_2015-07-25-12-48-39-1.png

2.
Owner Applicationのところのロケットみたいなアイコンをタップするとアプリケーションの一覧が出るのでLINEを選択。
他は特に変更せずに戻るボタンをタップして戻る。
Screenshot_2015-07-25-12-34-13.png

3.
タスクの名前をつけたらタスクの作成に入ります。

4.
まずは読み上げの音量制御のために、現在の音量設定を変数に退避します。
音量がそのままでいい人はこの処理は不要ですが、車の中は結構うるさいので音量を調整した方が聞き取りやすいです。

アクションの追加のために+をタップしたら、[Variables]-[Variable Set]を選択。
Screenshot_2015-07-25-12-49-55-1.png

5.
変数の名前をここではNameを%keepvolとしました。Toに%VOLMと入力。
%VOLMはTaskerの組み込み変数で現在のメディア音量が入っています。
タスクの終わりに音量を元に戻すため、この値を%keepvolに退避しておきます。
Screenshot_2015-07-25-12-35-57.png

6.
次にLINEの通知メッセージを変数に格納します。
先程と同様に、[Variables]-[Variable Set]を選択し、今度はNameを%saymessageとして、Toに%NTITLEと入力。
%NTITLEも組み込み変数で直前の通知メッセージのタイトルが格納されています。
ちなみに通知を利用するため、読み上げられるメッセージも通知に表示される範囲となります。
Screenshot_2015-07-25-12-36-06.png

7.
読み上げを聞こえやすくする為にメディア音量の変更をします。
[Audio]-[MediaVolume]を選択して、Levelに音量をセットします。この値は機種差や好みがあるのでご自由に。
Screenshot_2015-07-25-12-36-20.png

8.
そのまま、読み上げさせてもいいのですが、誰からのメッセージかをわかりやすくするために読み上げ内容を加工します。
[Variables]-[Variable Split]を選択して、Nameに%saymessage Splitterに:(半角文字で)を入力。
これは通知が「誰々:メッセージ内容」の形式の為、名前とメッセージ本文を分割して格納する処理です。
Screenshot_2015-07-25-12-36-32.png

9.
さていよいよ読み上げですが、メッセージとスタンプの時で読み上げを少し替えてみます。
条件分岐の為、IFを使います。
[Task]-[If]を選択し、Conditionに%saymessage2 条件に[!Set]を選択します。
送られてきたメッセージがスタンプの場合、通知は「誰々さんがスタンプを送信しました。」となり,:が含まれていないので、この前のSplit処理では%saymessage1に全文が格納され、%saymessage2は格納されていないので、この条件が成立します。
Screenshot_2015-07-25-12-37-02.png

10.
IFの条件が成立した場合は%saymessage1をそのまま読み上げます。
[Alert]-[Say]を選択して、Textに%saymessage1を入力します。
Screenshot_2015-07-25-12-37-17.png

11.
IFの条件が成立しなかった場合の処理のため、ELSEを入れます。
[Task]-[Else]を選択します。パラメータは特に変更しません。

12.
IFの条件が成立しなかった場合は「誰々からのメッセージ メッセージ本文」の形式で読み上げます。
[Alert]-[Say]を選択して、Textに%saymessage1 からのメッセージ %saymessage2 を入力します。
Screenshot_2015-07-25-12-37-44.png

13.
IF分岐の処理の終わりを示すためにEnd IFを入れます。
[Task]-[End If]を選択します。パラメータは特に変更しません。

14.
最後に変更したメディア音量を元に戻します。
[Audio]-[MediaVolume]を選択して、Levelに%keepvolを入力します。
最初に退避した音量に再セットする動作です。
Screenshot_2015-07-25-12-38-03.png

15.
taskの作成は完了しましたが、このままではいつでもどこでもLINEのメッセージを読み上げてしまいます。
プロファイルで読み上げの発動の為の条件を追加してみましょう。
私の場合は、車に乗った時にBluetoothでナビのハンズフリーと接続するので、これを条件に加えて、車の中でだけ、読み上げさせるようにしています。
条件の追加は、プロファイル画面で最初に設定したNotificationの条件が表示されているところを長押ししてください。
表示されたメニューからAddを選択することで複数の条件の組み合わせで発動させることが出来ます。
Screenshot_2015-07-25-12-35-01-1.png

16.
[Net]-[BT Connected]を選択して追加します。
Screenshot_2015-07-25-12-49-18-1.png

17.
Nameの横の虫眼鏡アイコンをタップすると、ペアリングしている機器の一覧が表示されるので、その中から選択。
Addressも同様にセットしておけば間違いないでしょう。
Point Blur_20150725_130005

以上で設定は完了です。
車内での読み上げを前提に設定を紹介しましたが、条件を変えればいろいろなタイミングで読み上げ出来ます。
また、タスクのIF条件を追加すれば特定の人からのメッセージの場合だけ、読み上げさせることも可能です。

いかがでしたか?
今後もまた私が設定しているプロファイルをご紹介できればと思っています。





以下は、タスクをexportしたものです。
この形式が理解できれば、某掲示板等に記載されているいろいろな事例も参考に出来るので活用の幅が広がりますよ。

say line message (42)
A1: Variable Set [ Name:%keepvol To:%VOLM Do Maths:Off Append:Off ]
A2: Variable Set [ Name:%saymessage To:%NTITLE Do Maths:Off Append:Off ]
A3: Media Volume [ Level:13 Display:Off Sound:Off ]
A4: Variable Split [ Name:%saymessage Splitter:: Delete Base:Off ]
A5: If [ %saymessage2 !Set ]
A6: Say [ Text:%saymessage1 Engine:Voice:default:default Stream:3 Pitch:5 Speed:5 Respect Audio Focus:On Network:Off Continue Task Immediately:Off ]
A7: Else
A8: Say [ Text:%saymessage1 からのメッセージ %saymessage2 Engine:Voice:default:default Stream:3 Pitch:5 Speed:4 Respect Audio Focus:On Network:Off Continue Task Immediately:Off ]
A9: End If
A10: Media Volume [ Level:%keepvol Display:Off Sound:Off ]

コメント

非公開コメント

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。