スケジュール機能は、任意の時刻やイベントの発生に起因して特定の処理を実行させる機能です。
本機能を利用することで、以下のような動作をヤマハスイッチで行うことができます。
内部時計の時刻と指定時刻の合致や、任意のイベントの発生といった、特定の条件の総称
内部時計の時刻と指定時刻が合致するという条件
任意のイベントが発生するという条件
トリガが起動したことによって実行される動作
スケジュール機能は、発動条件として「トリガー」、動作として「アクション」の2つを指定することによって、任意の時刻やイベントの発生に起因して特定の処理を実行させる機能です。
任意の年月日および任意の時分秒を時刻トリガーとして指定することができます。
時刻トリガーは schedule コマンドで設定します。
指定可能な条件は以下となります。
種別 | 指定方法 | 設定値の例 | |
---|---|---|---|
日付 | 月 1-12 |
任意の月のみ (例:12月のみ) | 12 |
任意の複数の月のみ (例:1月と2月のみ) | 1,2 | ||
任意の月から12月まで (例:2月から12月まで) | 2- | ||
任意の月から任意の月まで (例:2月から7月まで) | 2-7 | ||
1月から任意の月まで (例:1月から7月まで) | -7 | ||
毎月 | * | ||
日 1-31 |
任意の日のみ (例:1日のみ) | 1 | |
任意の複数の日のみ (例:1日と2日のみ) | 1,2 | ||
任意の日から月末まで (例:2日から月末まで) | 2- | ||
任意の日から任意の日まで (例:2日から7日まで) | 2-7 | ||
1日から任意の日まで (例:1日から7日まで) | -7 | ||
毎日 | * | ||
任意の曜日のみ (例:月曜日のみ) | mon | ||
任意の複数の曜日のみ (例:土曜日と日曜日のみ) | sat,sun | ||
任意の曜日から任意の曜日まで (例:月曜日から金曜日まで) | mon-fri | ||
日曜日から任意の曜日まで (例:日曜日から金曜日まで) | -fri | ||
時分秒 | 時 0-23 |
任意の時のみ (例:23時のみ) | 23 |
任意の複数の時のみ (例:1時と22時のみ) | 1,22 | ||
任意の時から23時まで (例:2時から23時まで) | 2- | ||
任意の時から任意の時まで (例:2時から21時まで) | 2-21 | ||
0時から任意の時まで (例:0時から21時まで) | -21 | ||
毎時 | * | ||
分 0-59 |
任意の分のみ (例:59分のみ) | 59 | |
任意の複数の分のみ (例:1分と50分のみ) | 1,50 | ||
任意の分から59分まで (例:2分から59分まで) | 2- | ||
任意の分から任意の分まで (例:2分から50分まで) | 2-50 | ||
0分から任意の分まで (例:0分から50分まで) | -50 | ||
毎分 | * | ||
秒 0-59 |
任意の秒のみ (例:59秒のみ) 省略可能 |
59 |
任意のイベントをイベントトリガーとして指定することができます。
イベントトリガーは schedule コマンドで設定します。
指定可能なイベントは以下となります。
種別 | 説明 |
---|---|
startup | 起動した時点で実行される |
sd-attached | microSDカードがアタッチされた時点で実行される |
時刻トリガーまたはイベントトリガーが起動することによって実行される動作をアクションと呼びます。
アクションの指定は schedule template コマンドでスケジュールテンプレートモードに遷移してから cli-command コマンド、または script コマンドで設定します。
アクションには以下の2つがあります。
動作 | 設定コマンド | 説明 |
---|---|---|
指定コマンドの実行 | cli-command コマンド | 指定されたコマンドをIDが小さい方から順に実行する。 |
指定スクリプトの実行 | script コマンド | 外部メモリ (microSD メモリ) 内の指定されたファイル /(機種名)/schedule/script.txt の中の文字列をファイルの 先頭から100行目まで コマンドとして実行する。 |
関連コマンドについて、以下に示します。
コマンドの詳細は、コマンドリファレンスを参照願います。
操作モード | コマンド | 説明 |
---|---|---|
グローバルコンフィグレーションモード | schedule | トリガーの指定とアクションを定義したスケジュールテンプレートIDの指定 |
schedule template | スケジュールテンプレートIDを指定し、スケジュールテンプレートモードへ遷移 | |
スケジュールテンプレートモード | description | スケジュールテンプレートの説明の設定 |
action | スケジュールテンプレートの有効・無効の設定 一時的にスケジュール機能を無効にしたい場合に disable とする。 |
|
cli-command | トリガーの起動によって実行されるコマンド定義 | |
script | 外部メモリの所定のファイル内に記述されたコマンドの実行の有効化 |
平日の8:00から17:00だけport1.1とport1.2に接続されている無線LANアクセスポイントにPoE給電を行います。
Yamaha# Yamaha# configure terminal Yamaha(config)# schedule 1 time */mon-fri 8:00:00 1 Yamaha(config)# schedule template 1 Yamaha(config-schedule)# cli-command 1 configure terminal Yamaha(config-schedule)# cli-command 2 interface port1.1-2 Yamaha(config-schedule)# cli-command 3 power-inline enable Yamaha(config-schedule)# exit Yamaha(config)# Yamaha(config)# schedule 2 time */mon-fri 17:00:00 2 Yamaha(config)# schedule template 2 Yamaha(config-schedule)# cli-command 1 configure terminal Yamaha(config-schedule)# cli-command 2 interface port1.1-2 Yamaha(config-schedule)# cli-command 3 power-inline disable Yamaha(config-schedule)# end Yamaha#
microSDカードを挿したときに自動でtech-supportをmicroSDに保存する
Yamaha# Yamaha# configure terminal Yamaha(config)# schedule 1 event sd-attached 1 Yamaha(config)# schedule template 1 Yamaha(config-schedule)# cli-command 1 copy tech-support sd Yamaha(config-schedule)# end Yamaha#
スケジュール機能では、以下のコマンドを実行することはできません。
スケジュール機能では、以下のSYSLOGが出力されます。
レベル | 出力 | 説明 |
---|---|---|
Info | [SCHEDULE]:inf:ID:X command is done | トリガーの起動によりスケジュールテンプレートID:Xのコマンドが実行された |
[SCHEDULE]:inf:ID:X script is done | トリガーの起動によりスケジュールテンプレートID:Xのスクリプトが実行された | |
Error | [SCHEDULE]:err:ID:X cmd[ID][COMMAND] is prohibited to execute | スケジュールテンプレートID:Xで禁止コマンドCOMMANDの実行が抑止された |
[SCHEDULE]:err:ID:X cmd[ID][COMMAND] is failed to execute | スケジュールテンプレートID:Xでコマンドフォーマットが不正だったり、不適切なパラメーターによってコマンド実行に失敗した | |
[SCHEDULE]:err:ID:X microSD is not mounted | スケジュールテンプレートID:Xでスクリプトを実行しようとしたときにmicroSDが挿入されていなかった | |
[SCHEDULE]:err:ID:X failed to get the schedule forlder path | スケジュールテンプレートID:Xでスクリプトを実行しようとしたときに、実行するスクリプトが存在するべきディレクトリが存在しなかった | |
[SCHEDULE]:err:ID:X script is not found | スケジュールテンプレートID:Xでスクリプトを実行しようとしたときに、スクリプトファイルが存在しなかった | |
[SCHEDULE]:err:ID:X failed to add action to queue | スケジュールテンプレートID:Xでアクションを実行しようとしたが、実行待ちアクションが多いためアクションを破棄した |