ブラウザを閉じても(コネクションが切れても)処理を維持する方法



  • 初学者です。

    こちらの「Webページ上のボタンでLEDをON / OFFする」
    https://blog.obniz.com/make/ui-button-on-off/
    を参考にしましてリレーのオンオフを行い
    電源を入り切りできるようにしました。

    やってみて知ったのですがブラウザを閉じると
    コネクションが切れ、リレーをオンにしたままにしたいのに
    オフになってしまいます。

    これを解決するためにはどのような方法がありますでしょうか?この処理を勉強した方がいいよといった道を示していただけると助かります。



  • @S-Fuji さん

    obnizのサイト上でプログラムをされているでしょうか。
    そこで書かれたプログラムは、あくまでブラウザ上で実行しているため、ブラウザを閉じるとプログラムも止まってしまいます。

    コネクションを維持するためには、24時間プログラムを動かすことができるようなサーバー上でプログラムを動かす必要があります。
    手元のPC上プログラムとして動かすのでもOKです(その場合、PCをスリープにしたりシャットダウンすると止まります)

    どちらの場合でも、nodejsというプログラム言語で行う形になりますので、こちらを参考に見ていただければと思います

    https://obniz.com/ja/doc/guides/nodejs/how-to-run



  • @kido 早速お返事ありがとうございます!サーバーサイドのプログラムにしてサーバーが四六時中動いているようにするということですね。node.jsを試してみます!

    obnizのesp32でonもしくは、offの状態を記憶しておくフラグをブラウザから接続したときに変更するという感じかと思ったのですが、そういう方法もあるのでしょうか?



  • obnizのesp32でonもしくは、offの状態を記憶しておくフラグをブラウザから接続したときに変更するという感じかと思ったのですが、そういう方法もあるのでしょうか?

    そちらの方法もあります。
    その場合使う関数はこちらになります。
    https://obniz.github.io/obniz/obnizjs/classes/obnizcore.obniz.html#resetondisconnect

    ただし、obnizのデバイス自体が再起動した際にはどうしてもリセットされますので、
    node.jsで24時間動かしておいたほうがリカバリができるかと思います。



  • @kido ありがとうございます!この関数も試してみます。
    借りてるレンサバにNode.jsのインストールができたのでサーバーサイド24h稼働も合わせて試してみます。ありがとうございます!


Log in to reply
 

SUGGESTED TOPICS