イエーイ、盛り上がろうぜ、みたいなときには、照明がチカチカ変わっていい感じになってほしい。
家で使ってるTP-LinkのTapoって照明にはAPIがあったので、色を変える信号を送り続けるスクリプトを書いて、無事家の照明をチカチカできるようになった。
家の照明見てください pic.twitter.com/vesVVmILUg
— 趣味はマリンスポーツです (@hitode909) 2022年8月20日
Node.js用のライブラリがあったので、これを使って、機器のリストを取ってきて、毎秒ランダムな色を送る。RGBの各値をFFか00のどちらかにしたらパキッとした色が出てよかった。ただし、見て楽しくない色は除きたいので、真っ白か真っ黒にはならないようにする。
書いたのはだいぶ前なのだけど、よく見るとすごい乱暴な実装になっていておもしろい。
function randomColor() { const ff00 = () => (Math.random() >= 0.5 ? "FF" : "00"); const c = `#${ff00()}${ff00()}${ff00()}`; if (c === "#000000" || c === "#FFFFFF") { return randomColor(); } else { return c; } };
夜に試してたら、家族が寝てる寝室もチカチカしてしまっていた。
寝ててくれたので良かったけど、ふと起きてチカチカしてると気になるかと思って、起動時に機器名を指定できるようにした。
仕事で使おうと思うと、障害発生時に照明が赤くなるとか仕込んでおくと、会議してて障害に気づきませんでした、みたいなのがなくなりそう。
ただ面接中に突然照明がデデーンって赤くなると、悪い受け答えをしてしまって、失格かな?みたいに誤解される恐れもある。
このライトは2000円くらいでOK Googleとか言って色を変えられるのでおすすめです。