fastapple's blog

時系列関係なく、情報を追記・分割・統合などします。ブログに記載の内容のうち、引用ではなく、私自身が記載している文章・コードなどについては、自由にご利用ください。

Llamaで、一時的にイベントを無効化するショートカットを作成する


Llamaのおさらい

Llamaとは、条件と動作を定義して、条件を満たした時に自動で一連の予め決めた動作を実行させることのできるAndroidソフトウェアだ。

Google Playからダウンロードすることができる。
Llama - Location Profiles - Google Play の Android アプリ

さて、Llamaを使っていると、色々複雑な設定を行いたい場面がある。

手動でイベントを起こしたい

Llamaは基本的に、条件を満たした際に、自動で動作を行うためのものだが、自動でなく手動でイベントを起こしたいときもある。そんなときはどうすればよいだろうか?実は、Llamaでは作成したイベントごとに、ショートカットを作成することができる。ショートカットを画面に配置し、タップすればよい。検索すれば色々出てくるのでここでは詳細は割愛したい。例えば以下のURLなどが参考になる。

【Llama活用】通信のON/OFFなどをショートカットから手動で一括実行 | あんどろいどスマート

一時的にイベントを無効化するショートカットをつくる

今回は、一時的にイベントを無効化したい際に押せば良いような、無効化ボタン(ショートカット)を作成してみよう。例えば私の場合、NasuLoggerでライフログを取っているが、取るのを忘れやすいので、ロック画面を解除した時に自動で起動するようにLlamaで設定している。しかし、頻繁にスマホをいじっている時は、この設定が邪魔になる。そこで、無効化ボタンをタップすれば、この起動する設定を一時的に無効にできるようにしよう。ここではこの設定を便宜上、blue mode と呼ぼう。設定が有効なことがすぐわかるように、設定が有効な間、Llamaのアイコンを青にしておくのだ。やりたいことを図で書くと以下のようになる。

f:id:fastapple:20150212020112p:plain

まずは、blue mode をオンにするためのイベントを作成しよう。下図のようになる。

f:id:fastapple:20150212020615p:plain

画面の上側から順に見ていこう。イベント名は、blue mode on としておいた。有効にチェック。高度機能は特に設定しない。条件は設定しない(手動でショートカットを押してイベントを起こす想定だからだ)。動作は、まずLlama変数として、is_blue という変数を定義し、それを1にする。*1。さらに、通知アイコン変更で、通知アイコンを青にする。

これで、押すとblue mode が発動するイベントが作成できた。あとはこれをショートカットとして画面に配置しておけばいい。定義が面倒な人向けにLlama URLも用意しておいた。

http://llama.location.profiles/blue+mode+on/blue+mode+on%7C0-1-0-0-0-0-0-0-1-0--0-%7C%3A%7Cvs%7Cis_blue%7C1%7Ci2%7C5%7C-1%7C

blue mode on を作ったのだから、blue mode off も同じようにつくろう。下図のようになる。

f:id:fastapple:20150212024136p:plain

また画面の上側から順にみる。イベント名はblue mode off。有効にチェック。高度機能は設定しない。条件も設定しない。動作はis_blueを、今度は0にするように設定する。通知アイコン変更で、通知アイコンを白にする。(元々の色に戻せばいい。ここでは元々の色を白と想定している。)

定義のLlama URLも以下に用意している。*2

http://llama.location.profiles/blue+mode+off/blue+mode+off%7C0-1-0-0-1-0-0-0-1-0--0-%7C%3A%7Cvs%7Cis_blue%7C0%7Ci2%7C10%7C-1%7C

これであとはblue mode の時に無視したいイベントの条件に、「is_blueが1でないなら」というものを追加すればOKだ。

*1:このようにis_○○という変数を作成して、ある設定が有効な時に(ここではblue modeの時に)、変数を1にしておく( 0は偽(false)、0でないなら真(true) )という手法はプログラミングでよくあるやり方である。このような変数を、フラグと呼ぶ。そしてフラグが真になることをフラグが立つ。などという。

*2:話は脱線するが、最近はスマホ,PC間でテキストなどをやりとりする際、圧倒的にPushBulletが便利だと実感している。Llama URLの共有にも便利だ。