テニスコート、会議室、習い事の予約枠。○×形式のカレンダーを何度も開いて確認していませんか。 このレシピでは、カレンダーに空き(○)が現れたら音で知らせるフローを作ります。
日付 × 時間帯の表になっていて、各マスに ○(空き)や ×(満)が表示されるタイプの予約ページです。 公共施設や教室の予約システムによくある形です。
カレンダーページを再読み込みする
「空きマス」が 1 つでも存在するかチェックする
あれば音を鳴らす。なければ何もしない
Run 画面の繰り返し実行で、設定した間隔ごとに繰り返す
音が鳴ったら、空いている枠を自分の目で確かめて、予約の操作はご自身の手で行ってください。
「Create」で新しいフローを作成する
「リロード」ノードを追加し、カレンダーページの URL を設定する
「要素状態チェック」ノードで空きマスを指定する。空きマスと満マスは色や記号のクラスで区別されていることが多いので、インスペクターで空きマスをタップしてクラス名を確かめ、セレクタに使います(チュートリアル Lv.4〜5 参照)
条件を「要素が存在する」にし、Yes 側に「音を鳴らす」ノードをつなぐ
保存して「Run」から実行間隔を決めて実行する
練習ページのカレンダーに空きマス(avail クラス)が現れたら音を鳴らす完成形です。
{
"schema_version": "1.0",
"comment": "レシピ2: 予約カレンダーに空き(○)が出たら音で知らせる",
"flow": [
{ "id": "node_0", "type": "start" },
{
"id": "node_1",
"type": "reload",
"target_url": "https://cmirai.jp/app/smauto/practice/calendar.html",
"wait_condition": "fixed_duration",
"post_load_wait": 5.0
},
{
"id": "node_2",
"type": "if",
"condition": {
"css_selector": "#calendar-table td.avail",
"attribute": "",
"operator": "exists",
"value": ""
},
"yes": [
{
"id": "node_3",
"type": "play_sound",
"sound_id": "chime",
"volume": 1.0,
"loop": false,
"wait_for_finish": true
}
],
"no": []
}
]
}
「特定の日付・時間帯の枠だけ」を見張りたいときは、表のマスを行×列で指定できる 「スマートテーブルタップ」も使えます(チュートリアル Lv.8)。 その場合もタップまで自動にせず、まずは音で知らせる形から始めるのがおすすめです。