べープリキッドをIFTTTでIoT化する
べープリキッドは箱に60日用とか180日用とか書いてありますが、箱の裏をよく読むと1日12時間使った場合と書いてあります。
べープリキッドを1日2回付けたり消したりする自信がないので、IoT化することにしました。はじめはスマート電源とべープリキッドを分解してひとつにしてやろうかと思ったのですが、どちらもかなり頑丈にできていて、ネジを外せば分解できるようなものではなかったので、TP-LINKのスマートプラグHS105P2を使って、IFTTTで制御することにしました。用意するのは、照度センサーとしてのNature Remo 3、スマートプラグとしてHS105P2、IFTTT Proの3点です。IFTTTでは、以下のような組み合わせでレシピを作ります。
うちの場合はRemo 2ではうまくいかず、照度センサーの感度が高くなったRemo 3に買い換えたらうまくいきました。古いのはメルカリで売ったのでそんなに出費ではなかったです。
上のように照度レベル20をトリガーにして、Weather Undergroundで現在地の温度を取得、以下のようにフィルターで蚊が活動しはじめる気温15℃未満のときはスキップするように設定します。
if ( Number(Weather.currentWeather[0].CurrentTempCelsius) < 15 )
Kasa.turnOn.skip();
このレシピとは別に、照度レベル10未満でべープリキッドの電源を切るレシピを作れば、部屋が明るくなったときべープリキッドの電源を入れ、暗くなったら電源を切る操作を自動化して、べープリキッドを必要なときだけ炊けるようになります。
なお、うちは映画を観るとき、Hueで照明を制御しているため、暗くなってもべープリキッドを消したくない場面があります。そこで以下のフィルターを使って、暗いけど映画を観ているときはべープリキッドが消えないようにしています。
var livingRoomLights = [ "Hue play 左", "Hue play 右", "リビングのライト1", "リビングのライト2", "リビングのライト3", "テープライト" ];
var lights = Hue.getLights.length;
var skip = true;
for ( var i = 0; i < lights; i++ )
{
if ( livingRoomLights.indexOf(Hue.getLights[i].Name) == -1 ) continue;
if ( Hue.getLights[i].Status == "off" )
{
skip = false;
break;
}
}
if ( skip )
Kasa.turnOff.skip();