MESHとIFTTTを使ってセサミスマートロックを任意時間にオートロック:アプレットの事例紹介 - よっちことサン太

iine

2018年1月12日金曜日

MESHとIFTTTを使ってセサミスマートロックを任意時間にオートロック:アプレットの事例紹介

「MESHボタンタグとIFTTT」を使ったCANDY HOUSEのSESAMEスマートロックのコントロールについて紹介します。

MESHタグとIFTTTを使用することで、色んなロック・アンロックそして任意の時間でのオートロック機能を実現することが可能となりました。(今現在、まだ一部制限があるのでご注意ください。)




まずは前提条件
  • IFTTTのアプレット実行には若干の遅延が発生することがある。
  • SESAMEからのロックの開閉信号がIFTTTに届くのが遅い場合がある。
  • SESAMEの手動解放はIFTTTに信号が飛んでいない。
    ※この手動開閉の信号は、メーカーに問い合わせてみると2018年の春ごろに対応予定とのことでありました)

そして出来る事

IFTTT
  • IFTTTによりSESAMEをロック・アンロックが可能。
  • IFTTTにより特定の時刻にSESAMEをロック・アンロックが可能。
  • IFTTTで通知やLINEメッセージ及びメールを送信することが可能。
MESH
  • MESHのボタンタグを使ってSESAMEをロックしたり、アンロックすることが出来る。
  • MESHでIFTTTを使用してSESAMEをロックしたりアンロックすることが可能。
  • MESHで通知やLINEメッセージ及びメールを送信することが可能。
  • MESHとIFTTTを使って、時間をコントロールし一定時間待った後SESAMEをロックしたり、アンロックしたりすることが可能。(任意時間のオートロック機能)

そして問題点
  • SESAMEの信号の送受信が遅すぎる時がある。
  • SESAMEが「セサミのアプリ」でロックやアンロックされた場合、セサミはIFTTTにロック或いはアンロックの信号を送信するのですが、その場合の信号が遅い場合がある。


今実現出来ているコントロール

MESHのボタンタグを使ってSESAMEスマートロックをロック・アンロックする
  1. ボタンタグを押す
    1回押すとロック、長押しするとアンロックをするように設定
  2. ボタンが押されたら確認の為に音を出す
    1回押した時と、2回押した時と音を変える
  3. IFTTTを利用してボタンが押されたらSESAMEスマートロックにロック・アンロックの命令を出す。
    ボタンの信号受けるとMESHはIFTTTに命令を出す。
  4. 命令を受けたSESAMEスマートロックはロック・アンロックを行う。
    SESAMEスマートロックはロック・アンロックすると、その信号をIFTTT側に送信する。(今現在は、手動の場合は送信しません)

SESAMEスマートロックがアンロックされると指定時間経過後にロックする(オートロック)

  1. ボタンタグ或いはスマホのセサミアプリでアンロックされる。
  2. SESAMEスマートロックはアンロックの信号を送信する。
  3. IFTTTはSESAMEスマートロックよりアンロックの信号を受ける。
  4. MESHはIFTTTが信号を受け取ると1分単位でカウンターに信号を送る。
  5. カウンターは信号が60個溜まるとIFTTTにSESAMEスマートロックをロックするように信号を送る。
  6. スマホに「ロックしました」の通知を送る。
これで60分のオートロックが完成です。(実際に遅延もあるので60分以上になります)
ただし、ボタンタグでアンロックされた場合と、スマホのセサミアプリでアンロックされた場合では流れが変わるので実際のアプレットは配慮が必要となります。

注意
今現在は手動でSESAMEスマートロックをアンロックした場合は、信号がIFTTTに届かないので、手動にてアンロックした場合はオートロックは出来ません。
(メーカーに確認すると、2018年春ごろには対策がとれそうなので、対策が取れれば好きな時間のオートロックが可能となります)

もう少し辛抱です。

メーカーが手動でのロック・アンロックの信号送信をしてくれれば、上記で作成したプログラムはあらゆるロック・アンロックに対応して任意の時間でオートロックが可能となります。


具体的なMESHレシピの事例と解説

簡単な事例から解説

事例1
ボタンタグを1回押すとSESAME(セサミ)スマートロックをロックする。
ボタンタグを長押しするとSESAME(セサミ)スマートロックをアンロックする。

解説
左から順に
①ボタンタグ⇒②音⇒③IFTTTへの指示⇒④通知⇒⑤LINEトーク

①ボタンタグのボタンを押されたら次に信号を送る
②ボタンタグから信号が届くと、信号が届いた事が解るように何らかの音を出し次に信号を送る。
③信号が届くと、IFTTTに「EventID」を送信する
「EventID」を受け取ったIFTTTはその命令(ロック又はアンロック)を送信する。
ネットワークにて命令を受け取ったSESAMEスマートロックはロック又はアンロックを行う。
④スマホに「セサミロック」などと通知を送る。
⑤LINEのトークに「セサミロック」などのメッセージを送る

具体的な手続き
①ボタンタグで「1回押されたら」を選んでOKをタップします。
この「1回押されたら」以外に「長押しされたら」「2連続で押されたら」がありますが、今回はボタンを1回押された時に「セサミをロックする」アクションを取りたいので、「1回押されたら」を選択します。

もし、長押しの時はロックをアンロックさせたい場合は「長押しされたら」を選択します。
②ボタンタグから信号が届くと、その信号が届いた事が解るように音を鳴らすと便利と言う事で「スピーカー」を設置しました。
この」「スピーカー」はこのアプリを設定しているスマホなどから音が出ます
音の種類は下記の図の「ベルの音」の部分をタップすると色々と選択が出来るので自由に選んでください。

今回はボタンが押されたときに音を鳴らしたいので「再生する」にしていますが、その他に「停止する」も選択することが出来ます。
最初に音を鳴らしておいて、何らかの条件が合致した時に音を停止させる時に使います。
③スピーカーから音を鳴らした後は、このIFTTTに信号が届きます。
信号を受け取ったらIFTTTにイベントID(この場合はclose)を「送信します」
逆にIFTTTから「受信したら」と言うアクションもあります。
IFTTTには事前にイベントID(close)と使ったアプレットを作成しておく必要があります。

これがIFTTTで作成したテスト用のアプレット
これはそのテスト用アプレットの内容でイベントIDは「meshsesamelock」としています。


IFTTTはMESHより送信されたイベントIDを受け取りそれを実行します。
今回の事例はセサミをロックすると言うものですから、MESHよりcloseと言うイベントIDを受け取ったらセサミにロックをするように命令を出します。

その後、若干時間経過の後セサミがロックされます。

④IFTTTの後、セサミをロックした通知をスマホに送信するようにしています。
このように何か処理がされるとスマホに通知されると便利ですので、その場合はこのように使用します。
⑤その後、LINEのトークにメッセージを送信します。
これは、ロックやアンロックの記録をLINEのトークに記録しておくことで、何時頃にセサミがロックやアンロックされたかが解るようにする為です。

以上がMESHとIFTTTを使用したセサミのロック・アンロックのコントロール方法です。
MESHのボタンを「1回押す」とIFTTTにセサミをロックする指示を出し
MESHのボタンを「長押しする」とIFTTTにセサミをアンロックする指示を出す
これでセサミへのロック・アンロックのコントロールが出来ますね。




次はこれに機能を付け加えます
上記での説明は、ボタンタグを押した場合のコントロール方法ですが、ここにオートロックの機能を付けるとどうなるのかを説明します。

追加しないといけない項目
  • オートロックの待機時間をカウントする機能
  • ロックが掛かった場合は、そのカウントをリセットする機能
この2つの機能を追加する必要があります。


まずMESHで使える「ロジック」を見て、その中で使えるロジックを考える必要があります。
MESHのロジックは次の4つ
  • And
  • タイマー
  • スイッチ
  • カウンター
の4種類があります。

そしてそのロジックの機能は
Andは、2つの条件が合致すればイベントを実行

タイマーは、設定した時間に応じてイベントを実行
(何分待つ・一定の間隔で・指定のタイミングで・指定の時間だったら・指定の曜日だったら)

スイッチは、入ってきた信号をどのように切り替えるか指定してイベント実行
(順番に切り替える・ランダムに切り替える・選んで切換える)

カウンターは、指定のカウントになるとイベント実行

となっています。

まず
オートロックの待機時間をカウントする機能をかんがえてみましょう

オートロックをするには、ある指定した時間になるとイベントが実行されるようにしないといけません。

そこで「タイマー」のロジックを使えば良いのですが、この「タイマー」のロジックは最長59分59秒までしかありません。

ですから、それ以上の時間を待機させたい場合には不可能になるわけです。

そこで考えたのが2つのロジックを使う方法です。
その方法を使えば、それ以上の時間を待機させる事が出来ます。

そしてその方法とは

タイマー」のロジックと
「カウンター」のロジック

使う方法です。

具体的に言えば
「タイマー」のロジックで1分間隔で「カウンター」に信号を渡す方法です。

「カウンター」は1分毎に信号を受け取る事になるのですが、この時の「カウンター」の設定を60回とすれば1時間、90回とすれば1時間半、180回とすれば3時間のタイマーを設定することが出来るようになります。

このように2つの「ロジック」を使う事で可能になります。

工夫すれば何とかなりますよね。



そして作例は

SESAME(セサミ)スマートロックをアンロックすると指定時間(今回の事例では30分)経過後にロックをする。

レシピ詳細説明


ボタンタグ1回押す(セサミをロックする)
  1. ボタンタグを1回押す
  2. スマホより音が鳴る
  3. IFTTT経由によりセサミにロックの命令が出る。
  4. セサミがロックする。
  5. セサミはIFTTTにロックの信号を送る。
  6. 1分タイマーを停止
  7. カウント停止
  8. スマホに「ロックの通知」を送信する。
  9. LINEに「ロックのメッセージとオートロック停止」を送信する。

ボタンタグを長押しする(セサミをアンロックする)
  1. ボタンタグを長押しする
  2. スマホより音が鳴る
  3. IFTTT経由によりセサミがアンロックの命令が出る。
  4. セサミがアンロックする。
  5. セサミはIFTTTにアンロックの信号を送る。
  6. スマホに「アンロックの通知」を送信する。
  7. LINEに「アンロックのメッセージ」を送信する。

セサミのアンロックの信号を受けると
  1. IFTTTはアンロックの信号を受ける。
  2. IFTTTから信号を受けたMESHは1分タイマーを開始する。
  3. MESHは指定のカウント(事例30分の為30カウント)されると次に信号を送る。
  4. 信号を受けたIFTTTはセサミにロックの命令を送る。
  5. セサミがロックされる。
  6. LINEに「指定時間経過の為オートロックを実施」とメッセージを送信する。
  7. セサミはIFTTTにロックの信号を送る。(セサミがロックされると送られる)
  8. スマホに「ロックの通知」を送信する。
  9. LINEに「ロックのメッセージ」を送信する。

セサミのロック信号を受けると
  1. IFTTTはロックの信号を受ける。
  2. オートロックを停止するメッセージをLINEに送信する。
  3. 1分タイマーを停止させる。
  4. カウントをリセットさせる。
これでオートロックの1サイクルが終了となります。

基本的には、セサミのロックがアンロックされたら1分カウントが開始し、途中でロックされた場合は、1分タイマーとカウントが停止リセットされ。
カウントが規定値になったらセサミをロックするという仕組みとなります。

MESHのレシピ(オートロック)




先頭行から(MESHによるアンロック)
緑色のボタンタブを押す(長く)・・・ロック解除指示

スマホからスイッチの確認音が鳴る

IFTTTからセサミにアンロックの命令を出す

スマホにアンロックの通知を送信する。


2行目は(MESHによるロック)
緑色のボタンタグを押す(1回)・・・ロック指示
以降は上記先頭行と同じ

3行目(アンロックの通知が届く)
IFTTTにセサミのロック解除の通知が届く

LINEにアンロックの通知を送信

1分タイマーが開始

1分経過毎にカウントが1つ増加し30になると次に信号を送信

IFTTTにセサミのロック指示を出す。
オートロックが完了

LINEにオートロックによりセサミをロックのメッセージを送信

1分タイマーの停止とカウントをリセットする。

4行目(ロックの通知が届く)
IFTTTにセサミのロックの通知が届く

LINEにロックの通知を送信

1分タイマーの停止とカウントをリセットする。



まとめ

セサミスマートロックを設置してから、玄関の鍵が掛かっているかどうかを玄関まで行かなくてもスマホで確認できるようになったので非常に便利です。

また、ロック・アンロックもスマホで出来る事や、誰かが鍵のロック・アンロックをした場合にはスマホに通知されるので誰が帰ってきたのか解るので便利です。

さらに遠隔で操作出来るのも非常に便利です。

ただ、オートロック機能やタイムスケジュールについては機能不足のところがあったのですが、IFTTTやMESHを使うとそれをカバーすることが出来るようになったので、より便利になりました。

オートロックを30分と設定することや、毎日午後6時に一旦アンロックして、午後6時15分にロックする事も可能なので家族の帰宅時間に合わせてロックやアンロックが出来るようになったのでさらに便利になりました。

そして、通知が欲しい時はスマホに通知を送信したり、LINEのトークにメッセージを送信して記録を取る事も可能です。

単なる鍵ですが、思うように設定出来るようになれば非常に便利ですね。

ただ、まだメーカーが日々アプリの改善や開発をしているようなので、今しばらくは不足する機能があるかも知れませんが、期待して待ちましょうね。

私にとっては、お気に入りの商品となっています。



関連情報

SESAME(セサミ)スマートロックを注文そして開封と取付!

SESAME(セサミ)スマートロックのアプリのセットアップはこう!

SESAME(セサミ)スマートロックの便利な使い方を考えてみた

http://yocchko.blogspot.jp/2017/12/sesameifttt.html SESAME(セサミ)スマートロックをIFTTTでコントロールする!

MESHプログラムのインストールとタグの開封と追加方法!




Wifiアクセスポイント付き

Wifiアクセスポイントの付属がない
セサミ スマートロック本体 マットブラック 取付工具不要 スマートフォンでドアを施錠解錠
キャンディハウス(Candy House) (2017-11-14)
売り上げランキング: 23,231

ワイヤレスファンクショナルタグ Button
スイッチサイエンス
売り上げランキング: 143,169

[ソニー] Sony MESH 7タグセット MESH-100B7A
ソニー(SONY)
売り上げランキング: 10,274

これもお勧め

GARMIN fenix J Urbanの開封/満足度は!
Harman Kardon ALLURE 招待・注文・開封! デロンギ マグニフィカS検討設定紹介! GENE CAFE ジェネカフェを購入自家焙煎 GARMIN fenix の開封/満足度は! セサミスマートロックを注文開封取付! Philips HueのLEDランプの設置注文開封
コーギーの夏対策
フレッツ光とフレッツTV申込・工事・視聴・実体験 バリスタアイが届いたので設置設定 愛犬ラッシュとの出会いとお別れ 軟太郎(軟水)を使用してそろそろ20年 衛星放送(CS)が突然見れなくなった! 初めて仔犬を手にいれる方法はこれ!
ドリルスタンド
西洋カンナ
DIYの道具に迷ったらまずこれを手に入れ DIYのお勧め作業台はこれ!機能を全部紹 DIY真っ直ぐに穴を空けるお手軽な方法と 西洋カンナがあればDIYの幅は各段にアッ DIYをするのに揃える最低限の道具とは! 材料選択からニス塗までの各工程を徹底

DIYで作ったサイドキャビネット
DIYで玄関用キャビネットを作った DIYでお祭りするテーブルを作成
DIYでサイドキャビネットを製作してみた DIYで犬用のサークル(ゲージ)を作成し DIYで噛み癖のある仔犬の犬小屋を製作 DIYで玄関用の棚兼キャビネットを製作 DIYで愛犬をお祭りするテーブルを製作 "DIYでサイドテーブルを製作

スポンサーリンク