ZWave電球とZWave 4ボタンの壁スイッチがあり、どちらもRaspberry PiにインストールされているDomoticzに接続されています。
以下のシナリオを希望します。
- ボタン1:ランプが30分間点灯
- ボタン2:ランプオフ
- ボタン3:常時点灯
- ボタン4:クトゥルフ召喚
各ボタンは前のアクションを上書きします(ボタン3->ボタン1 = 30分間オン)
ボタンの配線とプログラミングは簡単ですが、タイマーはどうですか?といちゃいちゃするのが怖いので、自家製のサービスは作りたくないinit.d
。
私には3つの可能性があります:
Domoticzダミースイッチ
Domoticzでは、インターフェイスで指定された時間の後に状態を変更できるダミースイッチを作成できます。
長所
- 既製のタイマー!
- 壁のスイッチとランプをすばやく操作できる
短所
- DomoticzはMQTTを処理しますが、デバイスを相互接続するためのLUAスクリプトと「ブロック」が多数存在します。
- 時間は簡単に設定できない場合があります...
at
そして atq
at
次のように単純な、時間内にアクションを計画するLinuxコマンドです
at [when] < [what]
長所
- マルチタイマーサービス
- 使いやすく通話も簡単
短所
- 計画されたコマンドを解析しない限り、一意のIDのみが与えられます(マジックLinuxコマンドを使用しない限り...)。
- したがって、データベースを使用して求人マッチャーをコーディング/実装する必要があります
クロンタブ
Crontabは、反復的なタスクを計画するためのLinuxサービスです。私の場合、それは簡単です
# check every minute
* * * * * /path/checktimer.sh
長所
- 信頼できる時間トリガー
短所
- 秒を管理できません...
- まだどこかの職人を維持することを余儀なくされています
私の質問へ:
- このようなタイマーを管理する必要がありましたか?
- 他のより信頼性の高い/構成可能なソリューションを見逃しましたか?
- 上記のソリューションを優先していますか?
sleep
悪く見えます:あなたは時間を渡すだけで何も返しません。答えて、例を挙げていただけますjobs
か?
sleep
またはusleep
を使用してオフをトリガーしますか?atの基本機能であり、jobs
バックグラウンドジョブを処理するために使用できます(主に、私が適切に理解している場合は、計画されたキャンセルをキャンセルします)