スマホにTaskerアプリを入れて制御する②

# task使っていろいろやります。

長くなりましたがtask制御に入っていきます。
プロファイル一覧は前回の記事です。
（→https://qiita.com/onm/items/46e2aaa4fe3d26b4f246)


以下、その続きです。

# task:homesettings
中身です。

![150.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/0578b506-9670-17c4-aa45-fd3f2b5ddc20.jpeg)


1.Wifi
[Net]→[Wifi]
Set on

2.Wait
[task]→[Wait]
9秒5msec待機を入れています（てきとー）

3.if文のループに入ります
[task]→[if]

![Screenshot_2023-10-12-12-56-12-081_net.dinglisch.android.taskerm.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/7b6d0bd1-ea8c-2a7b-0171-b21b2ea0acca.jpeg)

Conditionに以下を入力
%WIFII~* connect *
%WIFII~%SSID

WifiステータスがConnect状態かどうかの判断
WifiにSSIDの文字（%SSID変数の中身)が含まれているかの判断
ANDにするので二つの条件が満たされたときにそのまま直下のタスクを実行。
条件を満たさない場合ELSEの直下まで飛ぶ。

4~9
WIFIに接続されて家にいることが想定されるので
音量などなどをMAXに。
9のVariable Set %Home to 1 はとりあえず用意してあるだけで
使ってません。他事でも使えるかな、と思ってます。
%Home変数に1を入力。

![160.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/fe9ae16f-c3e5-1c1e-8cfb-f2312029101b.jpeg)

10.ELSE
最初のif文で条件が当てはまらない場合11から実行される。

11.wait
単なる接続ミスの可能性もあるので再度待機

12.if
%WIFI~on
%WIFII~%SSID 

WIFIがONの状態で
かつSSIDに%SSID変数の文字が含まれていれば条件を満たす。

13.Wait
5秒待つ。

14.Goto
Action Number 3に設定なので最初のif文に飛ぶ。（ループしてます）

15.ELSE(直上のif文のやつ）

16.WIFI
wifi set OFF
Wi-Fiオフにします

17.Goto
Goto action Number 24
24行目に飛びます。

18.End if
19.End if
if文二個使ってるので終わりのEnd if

20.Wait
2秒いれてます（てきとー）

21.Vibrate
Time 842 
スマホをバイブレーションさせます

22.Display Brightness
250
画面の明るさを最低にしています（室内では明るくする必要性がないため

![170.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/058de617-2b1a-e3b7-f54c-e4509779e3f6.jpeg)



23.Flash
text home settings
スマホ画面下部にメッセージをポップアップ表示

24.Wait
5sec

25.Profile Status
[Nowifi] set on

ここで二個目のプロファイルの[Nowifi]をONにします。
これは家から出た時を判断するプロファイルです。
[homesettings]の25行目のタスクが動作するまでは
[Noiwifi]プロファイルはオフのままです。

26.Profile Status
[home] set off 

自殺タスク。いままで実行してきたタスクが完了したので、
自らのプロファイルをオフにします。

27.Bluetooth

ついでにBluetoothをオフにしてます


# task:homedissettings

![dis.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/2ed0a812-3664-1988-c120-209850d3cbab.jpeg)

1.Wait
3秒待つ

2.Profile Status
No wifi set off
ここで自殺してます（ループ回避）

3.Wait
2秒待つ

4.if
%WIFII ~ * connect * 
%WIFII ~ %SSID
Wi-Fiの接続状態を確認
接続状態で%SSID変数の中身と一致するかどうかの判断

5.Wait
3秒待つ

6.Goto
Action Number 3
3行目に飛ぶ

7.ELSE
WIFIに接続されてなくて%SSIDにも一致しないなら以下から実行
（外出状態）

8.Variable Set
Name %Home to 0
VARの%Home変数に0を代入
外にいるときは%Home変数が0とする。

9.Vibrate Mode
Vibrate
いわゆるマナーモードになる。

10~13
いろいろと音量やらなんやらを0にする



![saigo.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/2448e4f2-2e6d-6a68-29c9-af0736a7ccac.jpeg)

14.Vibrate
time 835
スマホをバイブレーションさせる

15.if
%Daytime~1
%Daytime変数を利用しているがあまりつかってないので省いても良い

16.Display Brightness
level 1000
画面の明るさを最大にする

17.Else
18.End if

19.Flash
text outdoor settings
ポップアップでメッセージを表示する

20.Profile status
Home set off
念のため[Home]プロファイルをoff

21.Profile status
CELLHOME set on
[CELLHOME]プロファイルをオンにする。

22.End if

23.Wifi
set off

24.Bluetooth
set off

25.Profile status
name BTHome set on
[BTHome]プロファイルをオンにする

# CELLHOME

![Screenshot_2023-10-12-13-44-18-147_net.dinglisch.android.taskerm.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/c6c93660-5d3b-3377-d500-ccb086226e4e.jpeg)

1.Profile Status
Name CELLHOME set off
自殺タスク

2.Profile Status
Name Home set on
[Home]プロファイルをオンにする

3.Profile Status
Name BTHome set on
[BThome]プロファイルをオンにする


# ということで

[homesettings]
[homedissettings]
[CELLHOME]

三つのプロファイルを利用することで
自宅でのWifi接続を確認し、マナーモードを解除する。
その後外出してWifiが切れた事を確認すると
マナーモードにして画面表示を明るくする。
ということができます。

CELLHOMEのみONにしておけば
家の近所の携帯基地局に繋がれば[homesetting]がオンになり
Wifiの接続確認が走るようになります。
確認されなければ自殺タスクで自殺され次の[Nowifi]がオンになり
接続確認されなければマナーモード、自殺タスク
[CELLHOME]がオンになります。（ループ状態）
家から離れればループ状態は脱出できるので大丈夫かと思われます。


# VAR
![Screenshot_2023-10-12-14-21-44-573_net.dinglisch.android.taskerm.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242965/8669aa60-a8fd-ad4c-7731-6124cdc2bb69.jpeg)

ちなみにVariableはこうなってます

1.%Daytime
時間設定を絡めれば時間帯指定で変数入れれます

2.%Home
家にいるかどうかの変数にしてます。

3.%SSID
家のWifiのSSIDを代入しています。
　* *で囲うと文字指定になります。



# こんなとこですか？

%変数を利用するといろいろできるTaskerです。
代入もタスク上でできますしデータ取得したものを変数に代入することも可能なようです。

正直これ以上やることもないので安定運用ですし、
昔みたいにWifiがオンの状態で電池の減りがめちゃくちゃ早いわけでもなさそうなので
必要ないかもしれません。

Android2.3ぐらいから苦労してきた身としては通常状態でRootedじゃないスマホ端末なんて
面倒でしかなかったのですが、
最近はそんな心配もないので楽ですね。いい時代です。