ControlDaemonにスケジュール動作の機能を追加しました。
設定ファイルに下記のような記述をすることで指定された時間にcommandを実行します。
event:
#month day time condition command
* weekday2 08:00 * east_shutter_open
* * sunset-00:30 * east_shutter_close
* * 08:00 * center_shutter_open
* * sunset-00:30 * center_shutter_close
* * 08:00 * west_shutter_open
* * sunset-00:30 * west_shutter_close
11-5 weekday1 06:00 cold1 floor_heater_dining_on
11-5 weekday1 06:30 cold2 aircon_heater_20
11-5 weekday1 07:30 * floor_heater_dining_off
11-5 weekday1 08:00 * aircon_stop
例えばcenter_shutter_openの行は毎月、毎日、朝08:00に実行することを表しています。
center_shutter_closeの行のtimeの項目のsunset-00:30は日没時間の30分前に実行することを表しています。
monthに11-5を指定されているところは11月〜5月の間だけ実行されます。
dayにweekday1と指定されているところは下記の設定のカレンダーによって指定された曜日のみ実行されますが、holidayで指定された日は休日なので実行されないようになっています。
# week holiday
weekday:
weekday1 mon tue wed thu fri
weekday2 wed thu fri
holiday:
1/1 2/11 4/29 5/3 5/4 5/5 11/3 11/23 12/23 # month/day
1/2mon 7/3mon 9/3mon 10/2mon # month/week dayofweek
2012/3/20 2012/9/22 # year/month/day
conditionの項目は下記の設定項目で指定された条件を満たしているときだけ実行されます。
condition:
cold1 internal_2f_temp < 100 # 10.0
cold2 internal_2f_temp < 150 # 15.0
hot1 internal_2f_temp > 280 # 28.0
floor_heater_dining_onの行は11月〜5月の月曜日〜金曜日で休日でない日の朝06:00に2Fリビングの室内の温度センサーが10°Cよりも下回っていたら実行されます。
今のところ順調に動作していそうです。