Soracom

Users

ドキュメント
Home ドキュメント SORACOM Flux (Public beta) イベントソースリファレンス

スケジュールタイマーイベントソース

「新しいチャネルを作成」画面でイベントソースとして「スケジュールタイマー」を選択すると、特定の時刻や曜日など、指定したスケジュールに基づいて Flux アプリを起動できます。

スケジュールタイマーイベントソースは Standard プランで利用できます

Standard プランについては、SORACOM Flux のプラン を参照してください。

[イベントソース設定]

イベントソースに連結したチャネルにメッセージが送信される条件を設定します。

項目説明
[有効]スケジュールタイマーを利用してメッセージを送信する場合は、「有効」にします。「無効」にすると、メッセージは送信されません。
[Cron 式]Flux アプリを起動するタイミングを Cron 式で指定します。詳しくは、Cron 式について を参照してください。
[指定されたスケジュール]Cron 式の意味を説明した文章が表示されます。
[実行タイミング]スケジュールタイマーイベントソースに従って、Flux アプリが起動する時刻が表示されます。[さらに表示する] をクリックすると、次の実行タイミングが表示されます。
[タイムゾーン]指定した Cron 式のタイムゾーンを選択します。
[イベントペイロード]スケジュールタイマーの起動時に連結したチャネルに送信される JSON オブジェクトを設定します。
[説明]スケジュールタイマーの説明を入力します。

Cron (クーロン) 式について

スケジュールタイマーイベントソースで利用できる [Cron 式] は、特定の時刻や曜日に自動的に Flux アプリを起動するためのスケジュール設定の方法です。たとえば、「毎日朝 9 時に Flux アプリを起動する」「毎週月曜日の 12 時に Flux アプリを起動する」のように設定できます。

Cron 式は、[分][時][日][月][曜日] の 5 つの項目を並べて記述します。

項目設定可能範囲特殊記号説明
[分]0-59,*-/何分に実行するか。
[時]0-23,*-/何時に実行するか (24 時間制)。
[日]1-31,*-/?L何日に実行するか。
[月]1-12 (または JAN-DEC),*-/何月に実行するか。
[曜日]0-6 (または SUN-SAT),*-/?L#何曜日に実行するか。
0:日曜、1:月曜、…6:土曜
SUN:日曜、MON:月曜、…、SAT:土曜

それぞれの項目に特殊記号 (*,/ など) を使って柔軟なスケジュール設定ができます。特殊文字の意味は以下のとおりです。

特殊文字説明
, (カンマ)複数の値を指定する場合に使います。たとえば、[曜日]MON,WED,FRI を入力すると、「月曜日、水曜日、金曜日」を意味します。
* (アスタリスク)すべての値を指します (ワイルドーカード)。たとえば、[分]* を入力すると、「毎分」を意味します。
- (ハイフン)値を範囲で指定する場合に使います。たとえば、[時]9-17 を入力すると、「9 時から 17 時」を意味します。
/ (スラッシュ)増分を指定する場合に使います。たとえば、[分]30/10 を入力すると、「30 分から 10 分ごと」、つまり「30 分、40 分、50 分」を意味します。
? (クエスチョンマーク)

スケジュールタイマーの設定値として利用しないフィールド ([日] または [曜日]) に入力します。

[日] または [曜日] を利用する場合 (? 以外の値を指定する場合) は、もう一方に ? を入力してください。

L (Last)

最終日を指定する場合に使います。たとえば、[日]L を入力すると、月末 (3 月の場合は 31 日、4 月の場合は 30 日) を意味します。また、[曜日]5LFRIL を入力すると、その月の最後の金曜日を意味します。

L は他の特殊記号とは同時に利用できません。

#

第 n 週目を指定する場合に使います。たとえば、MON#2 を入力すると、第 2 月曜日を意味します。

# は他の特殊記号とは同時に利用できません。

入力例

  • 毎日午前 9 時 0 分

    [分][時][日][月][曜日]
    09**?
  • 毎週金曜日午後 5 時 0 分

    [分][時][日][月][曜日]
    017?*FRI
  • 平日午前 9 時から午後 5 時まで 15 分ごと

    [分][時][日][月][曜日]
    */159-17?*MON-FRI
  • 毎月最終金曜日 0 時

    [分][時][日][月][曜日]
    00?*5L
スケジュールタイマーイベントソースの実行時刻は最大 5 分程度ずれることがあります

負荷分散などの目的で、指定された時刻に Flux アプリが起動せず、最大 5 分程度ずれることがあります。

スケジュールタイマーイベントソースの夏時間

スケジュールタイマーイベントソースで夏時間がある [タイムゾーン] を選択した場合、Flux アプリの起動時間は夏時間に合わせて自動的に調整されます。

  • 春に時間が進むときは、Cron 式で指定された日時が存在しないことがあります。その場合、Flux アプリは起動されません。
  • 秋に時間が戻るときは、Cron 式で指定された時刻が同日に 2 回発生する場合があります。その場合でも、Flux アプリは 1 回だけ起動されます。

チャネルに送信されるデータ

スケジュールタイマーイベントソースを設定したチャネルに送信されるデータは、MESSAGE と CONTEXT です。

実際に Flux アプリに送信されたデータは、SORACOM Flux Studio の [実行履歴] タブで確認できます。詳しくは、実行履歴 (ログ) を参照してください。

MESSAGE

[イベントペイロード] に指定したメッセージ、指定していない場合は null です。

CONTEXT

スケジュールタイマーに関するデータです。

{
  "eventType": "schedule",
  "time": "<time>",
  "scheduledTime": "<scheduledTime>",
  "scheduleId": "<scheduleId>",
  "timestamp": <unixtime>
}
項目説明
eventTypeイベントの種類。スケジュールタイマーが、Flux アプリが起動するトリガーになった場合は、schedule です。
timeFlux アプリが実際に起動した時刻 (ISO 8601 形式)。(*)
scheduledTimeFlux アプリが起動する予定時刻 (ISO 8601 形式)。(*)
scheduleIdスケジュールタイマーごとに付与される ID。
timestampスケジュールタイマーイベントソースによって Flux アプリの実行が開始された日時 (UNIX 時間 (ミリ秒))。
  • (*) Flux アプリが起動する予定時刻と、Flux アプリが実際に起動した時刻は異なります。これは、負荷分散などの目的で、スケジュールタイマーイベントソースの実行時刻は最大 5 分程度ずれることがあるためです。