ThingsBoard、デフォルトのインストール、単一サーバーでこのシナリオを検討してください。
トークン「device_token」を介して認証され、パスワードなしで「device_name」と呼ばれる構成されたデバイスは 1 つだけです (簡単にするため)。すでに MQTT を介して ThingsBoard と正常に通信しており、以下で説明するメソッドに接続されたゲージとコントロールを使用して、小さくて機能するダッシュボードを既にセットアップしています。
- read_sensor、内部センサーからの値を返します (たとえば、環境光など)。質問とは直接関係ありませんが、シナリオを明確にするために含まれています。
- activate、内部リレーをオンにし (たとえば、ライトを制御します)、内部変数のステータスを「オン」に設定します。この変数を返します。
- activate、内部リレーをオフにし、内部変数のステータスを「オフ」に設定します。この変数を返します。
- toggleは、 「not」操作に基づくステータス変数の以前の値に応じて、内部リレーをオンまたはオフにします。ステータス 変数を前の値の逆に設定して返します。
問題は、「 ThingsBoard ルールとプラグインを使用して、1 日の特定の日時 (サーバー時間) にメソッドをアクティブ化および非アクティブ化する方法を呼び出すには?」
例:
- 月曜から金曜までの平日 18:00 以降に電話をかけますが、土日は除きます。
- 月曜日から金曜日までの平日の 08:00 以降に電話をかけてください。ただし、週末は除きます。
すでにTime、Telemetry、およびRPCシステム プラグインをセットアップして構成しました。
提供されたステータスに基づいてリレーをオンまたはオフにし、内部変数を提供された値に設定してそれを返す追加のメソッドchange(status)を使用したデバイスの代替構成があります。