דלג לתוכן
בית חכם / מדריך

מצב שבת ב-Home Assistant: אוטומציות לשבת וחג

מצב שבת ב-Home Assistant: מגדירים Helper, מחברים את Jewish Calendar ובונים אוטומציות לתאורה ולדוד שפועלות נכון גם בחג וברצף של שלושה ימים.

06.10.2026 · 20 דקות קריאה · רמת ביניים
שקיעה ונרות דולקים עוברים דרך לוח השנה העברי למתג מצב שבת, שמפעיל תאורה לפי לוח זמנים, טיימר לדוד והשתקת התראות.

איור: HomeRan

תוכן עניינים

מצב שבת ב-Home Assistant הוא מתג אחד שנדלק לפני הדלקת נרות, נכבה אחרי ההבדלה, וכל שאר האוטומציות בבית בודקות אותו. נבנה אותו על האינטגרציה הרשמית Jewish Calendar, נחבר אליו תאורה לפי לוח זמנים ודוד, ונוודא שהוא מתנהג נכון גם בחג, ברצף של שלושה ימים ואחרי הפסקת חשמל. המדריך מתאים למי ששומר שבת, וגם למי שגר עם שומרי שבת או מארח אותם. הוא עוסק בהגדרה הטכנית בלבד, ולא נוגע בשאלות של הלכה.

מה מצב שבת עושה בבית, ומה הוא לא

Jewish Calendar יודעת לומר מתי עכשיו שבת או יום טוב. מצב שבת הוא משהו אחר: Helper מסוג Toggle שאתם קובעים מתי הוא נדלק ומתי הוא נכבה. ההפרדה נותנת מקום אחד לזמנים שלכם, ומאפשרת להדליק את המצב ידנית לבדיקה.

כל ההחלטות של שבת בבית חכם מתרכזות סביב המתג הזה:

  • תאורה שנדלקת ונכבית לפי לוח זמנים קבוע.
  • הדוד, לזמן מוגבל ובשעה קבועה.
  • התראות לטלפון שלא נשלחות בזמן שהמצב פעיל.
  • אוטומציות תנועה וכפתורים שאתם בוחרים להשבית.

המצב לא מחליט דבר בעצמו. הבית מבצע את מה שהגדרתם מראש, והאחריות לבדוק שההגדרה עובדת היא שלכם. לכן יש בסוף המדריך רשימת בדיקה.

מוסיפים את Jewish Calendar ובוחרים הגדרות לישראל

  1. פתחו Settings > Devices & services ובחרו Add Integration.
  2. חפשו Jewish Calendar והוסיפו אותה.
  3. ב-Language בחרו אנגלית או עברית. ברירת המחדל היא אנגלית, והבחירה משפיעה על ערכי הטקסט, כמו שם החג ופרשת השבוע.
  4. השאירו את Outside of Israel? כבוי אם הבית בישראל. כשהוא כבוי, האינטגרציה מחשבת יום טוב אחד, כמו בישראל.
  5. המיקום, הגובה ואזור הזמן נלקחים מהגדרות הבית. שנו אותם רק אם הם שגויים.

דקות לפני השקיעה להדלקת נרות

אחרי ההוספה, Configure בדף האינטגרציה פותח את האפשרויות. Minutes before sunset for candle lighting קובע כמה דקות לפני השקיעה נחשבות זמן הדלקת נרות. ברירת המחדל היא 18. קבעו את המספר לפי לוח הזמנים שאתם עובדים לפיו.

הבדלה

Minutes after sunset for Havdalah נשאר 0 כברירת מחדל. במצב הזה זמן ההבדלה מחושב לפי השמש 8.5 מעלות מתחת לאופק. מספר גדול מ-0 הופך את ההבדלה להיסט קבוע בדקות אחרי השקיעה.

התיעוד עצמו מסתייג: בגלל מגוון השיטות לחישוב הזמנים, המפתחים לא לוקחים אחריות על הסתמכות דתית על החישובים. השוו את הזמנים שהאינטגרציה מציגה ללוח שאתם מכירים לפני שבונים עליהם.

אילו ישויות מקבלים, ואילו צריך להפעיל

האינטגרציה יוצרת מכשיר אחד בשם Jewish Calendar. כל הישויות שלו מסומנות Diagnostic, ולכן בדף המכשיר הן מופיעות תחת Diagnostic ולא בלוח בקרה שנבנה אוטומטית. חלקן כבויות כברירת מחדל: אם חיפשתם את חיישן ערב שבת ולא מצאתם אותו, זו הסיבה.

ישותמה היא מדווחתפעילה כברירת מחדל
Issur Melacha in effecton בשבת או ביום טובכן
Erev Shabbat/Hagערב שבת או חגלא
Motzei Shabbat/Hagמוצאי שבת או חגלא
Upcoming candle lightingהדלקת נרות של השבת או היום טוב הנוכחיים או הבאיםכן
Upcoming Havdalahההבדלה של השבת או היום טוב הנוכחיים או הבאיםכן
Upcoming Shabbat candle lightingהדלקת נרות של שבת בלבדלא
Upcoming Shabbat Havdalahהבדלה של שבת בלבדלא
Holidayשם החג, עם המאפיינים type ו-idכן

כדי להפעיל ישות כבויה, פתחו אותה מדף המכשיר, היכנסו להגדרות שלה והפעילו את Enabled. גם רוב זמני היום, כמו פלג המנחה וצאת הכוכבים, כבויים כברירת מחדל. Sunset (Shkia) ו-Halachic sunrise (Netz Hachama) פעילים.

חיישני הזמן הם מסוג timestamp: הערך שלהם הוא זמן (ב-UTC), ולכן אפשר להשתמש בהם ישירות בטריגר זמן. בחיישן Holiday, המאפיין id לא תלוי בשפה שבחרתם, ולכן הוא נוח לאוטומציה כמו נרות חנוכה. יש גם שלוש ישויות לוח שנה (Daily events, Learning schedule ו-Yearly events). לא נשתמש בהן כאן.

מזהה הישות נגזר משם המכשיר ומשם הישות. בהתקנה רגילה הוא נראה כמו binary_sensor.jewish_calendar_issur_melacha_in_effect ו-sensor.jewish_calendar_upcoming_candle_lighting, ואלו המזהים בדוגמאות. אם שיניתם את שם המכשיר, הוספתם את האינטגרציה פעמיים או בחרתם עברית, המזהה אצלכם עשוי להיות אחר. העתיקו אותו מהגדרות הישות והחליפו בכל הדוגמאות.

יוצרים Helper למצב שבת

  1. פתחו Settings > Devices & services > Helpers.
  2. בחרו Create helper ואז Toggle.
  3. קראו לו ״מצב שבת״ ושמרו.
  4. רשמו את המזהה. בדוגמאות נשתמש ב-input_boolean.shabbat_mode.

תחת More options נמצאת ההגדרה Each time Home Assistant starts. השאירו את ברירת המחדל, Restore previous state: המתג חוזר למצב שהיה בו לפני האתחול. את המקרה שבו המצב השתנה בזמן שהשרת היה כבוי נטפל באוטומציה.

למה Helper ולא תנאי ישיר על חיישן איסור המלאכה? כי מצב שבת ב-Home Assistant צריך להיות פעיל גם לפני הדלקת הנרות, כדי שהבית יגיע מוכן. וגם כי אפשר להדליק אותו ידנית ביום רביעי ולראות מה קורה.

אוטומציה שמדליקה ומכבה את מצב השבת

אוטומציה אחת עם שלושה טריגרים: הדלקה לפני הדלקת נרות, כיבוי אחרי שאיסור המלאכה מסתיים, ויישור אחרי אתחול. צרו אוטומציה ריקה, עברו לעריכה ב-YAML והדביקו:

YAML
alias: "מצב שבת: הדלקה וכיבוי"
description: "מדליק לפני הדלקת נרות, מכבה אחרי שאיסור המלאכה מסתיים ומיישר אחרי אתחול"

triggers:
  - trigger: time
    at:
      entity_id: sensor.jewish_calendar_upcoming_candle_lighting
      offset: "-00:30:00"
    id: start

  - trigger: state
    entity_id: binary_sensor.jewish_calendar_issur_melacha_in_effect
    from: "on"
    to: "off"
    for: "00:10:00"
    id: end

  - trigger: homeassistant
    event: start
    id: boot

conditions: []

actions:
  - choose:
      - conditions:
          - condition: trigger
            id: start
        sequence:
          - action: input_boolean.turn_on
            target:
              entity_id: input_boolean.shabbat_mode

      - conditions:
          - condition: trigger
            id: end
        sequence:
          - action: input_boolean.turn_off
            target:
              entity_id: input_boolean.shabbat_mode

      - conditions:
          - condition: trigger
            id: boot
        sequence:
          - wait_template: "{{ has_value('sensor.jewish_calendar_upcoming_candle_lighting') }}"
            timeout: "00:02:00"
            continue_on_timeout: false
          - if:
              - condition: template
                value_template: >-
                  {{ is_state('binary_sensor.jewish_calendar_issur_melacha_in_effect', 'on')
                     or now() >= as_datetime(states('sensor.jewish_calendar_upcoming_candle_lighting'))
                     - timedelta(minutes=30) }}
            then:
              - action: input_boolean.turn_on
                target:
                  entity_id: input_boolean.shabbat_mode
            else:
              - action: input_boolean.turn_off
                target:
                  entity_id: input_boolean.shabbat_mode

mode: queued

ה-30 דקות וה-10 דקות הן ערכים לדוגמה בלבד. קבעו אותם לפי מה שהבית צריך, ושימו לב שה-30 מופיע פעמיים: ב-offset ובענף האתחול.

הדלקה. טריגר זמן מקבל חיישן timestamp ו-offset. היסט שלילי מפעיל את האוטומציה לפני הזמן שהחיישן מדווח, כפי שמתואר בתיעוד טריגר הזמן.

כיבוי. כאן אין היסט חיובי על Upcoming Havdalah, וזו לא טעות. החיישן עובר לשבת הבאה ברגע ההבדלה, והתיעוד מזהיר שהיסט חיובי על זמן מישות עלול לא לפעול אם הישות מתעדכנת לפני שההיסט מגיע. לכן הכיבוי נשען על המעבר של איסור המלאכה ל-off, ו-for מוסיף השהיה אם רוצים.

אתחול. טריגר זמן לא משלים ריצה שהוחמצה בזמן שהשרת היה כבוי, וגם המעבר של איסור המלאכה מ-on ל-off לא יופיע אחרי אתחול. הענף boot מחכה שחיישן הזמן יקבל ערך, ואז מדליק את המצב אם עכשיו שבת או חג או שהגיע חלון ההכנה, ומכבה אותו אחרת. שימו לב: הענף הזה מכבה גם הדלקה ידנית לבדיקה, אם השרת עלה באמצע.

כשמשהו לא רץ כמו שציפיתם, פתחו את ה-Trace ובדקו איזה טריגר הפעיל את הריצה ואיזה ענף נבחר.

פרסומת

מצב חג ויום טוב: חג צמוד לשבת ורצף של שלושה ימים

Upcoming candle lighting מדווח את הדלקת הנרות של השבת או היום טוב הנוכחיים, ורק אחריהם את הבאים. התיעוד נותן דוגמה: אם היום יום ראשון וראש השנה מתחיל ביום שני בערב ונמשך עד רביעי בערב, החיישן מראה את הדלקת הנרות של יום שני. בזמן החג עצמו הוא ממשיך להראות את תחילת החג, כך שטריגר ההדלקה לא ירוץ שוב באמצע. זו הסיבה שהאוטומציה משתמשת בו ולא בגרסה של שבת בלבד.

Upcoming Shabbat candle lighting מתאים כשרוצים אוטומציה לשבת בלבד, שלא תופעל ביום טוב באמצע השבוע. החיישן המקביל להבדלה, Upcoming Shabbat Havdalah, עלול להיות ריק ברצף של שלושה ימים. לפי התיעוד, כשהחג נמשך משבת עד שני, ביום שבת אין לו ערך. אל תבנו עליו כיבוי.

ברצף שבת וחג, Issur Melacha in effect אמור להישאר on מתחילת הרצף ועד סופו, ולכן הכיבוי באוטומציה יגיע פעם אחת, בסוף. לפני שסומכים על זה, פתחו History ובדקו מה החיישן עשה בחג האחרון.

תאורה שפועלת לפי לוח זמנים בשבת

Schedule הוא Helper של לוח זמנים שבועי: אתם מגדירים בלוקים של שעות, והוא on בתוכם ו-off מחוצה להם. ניצור ״שעון שבת״ לסלון, והאוטומציה תפעל רק כשמצב השבת פעיל. ביום חול הלוח משנה מצב, והאוטומציה לא עושה כלום.

  1. ב-Helpers בחרו Create helper ואז Schedule.
  2. קראו לו ״שעון שבת סלון״ וסמנו בלוקים בשישי ובשבת.
  3. רשמו את המזהה. בדוגמה: schedule.shabbat_living_room.
YAML
alias: "שעון שבת: סלון"
description: "תאורת הסלון לפי לוח הזמנים, רק כשמצב שבת פעיל"

triggers:
  - trigger: state
    entity_id: schedule.shabbat_living_room
    to: "on"
    id: lights_on

  - trigger: state
    entity_id: schedule.shabbat_living_room
    to: "off"
    id: lights_off

conditions:
  - condition: state
    entity_id: input_boolean.shabbat_mode
    state: "on"

actions:
  - choose:
      - conditions:
          - condition: trigger
            id: lights_on
        sequence:
          - action: light.turn_on
            target:
              entity_id: light.living_room

      - conditions:
          - condition: trigger
            id: lights_off
        sequence:
          - action: light.turn_off
            target:
              entity_id: light.living_room

mode: queued

כדי לכבות כמה אורות בבת אחת, הפעילו במקום light.turn_off סקריפט שמכבה קבוצת אורות.

אוטומציות תנועה הן החלטה שלכם. מי שרוצה להשבית בזמן מצב שבת את האוטומציה של האור שנדלק לפי חיישן תנועה מוסיף לה תנאי שמצב שבת הוא off, באותו אופן שמוסיפים מתג להשארת אור דולק. השאלה אילו אוטומציות להשאיר פעילות היא שאלה לרב, לא ל-Home Assistant.

אוטומציה לדוד בשבת: זמן קבוע, הגבלה וגיבוי

הדוד נדלק בשעה קבועה כשמצב השבת פעיל, ונכבה בשעה קבועה בכל מקרה. הכיבוי לא בודק את מצב השבת, כדי שלא ייחסם אם המצב כבר כבה.

YAML
alias: "דוד: שבת וחג"
description: "הדלקה בשעה קבועה כשמצב שבת פעיל, כיבוי בשעה קבועה תמיד"

triggers:
  - trigger: time
    at: "06:00:00"
    id: boiler_on

  - trigger: time
    at: "07:00:00"
    id: boiler_off

conditions: []

actions:
  - choose:
      - conditions:
          - condition: trigger
            id: boiler_on
          - condition: state
            entity_id: input_boolean.shabbat_mode
            state: "on"
        sequence:
          - action: switch.turn_on
            target:
              entity_id: switch.boiler

      - conditions:
          - condition: trigger
            id: boiler_off
        sequence:
          - action: switch.turn_off
            target:
              entity_id: switch.boiler

mode: queued

השעות הן לדוגמה. עדיפה שעת כיבוי קבועה על פני delay של שעה בתוך הפעולות: אתחול באמצע ההמתנה מבטל אותה, והדוד נשאר דולק.

אם השרת כבוי בשעת הכיבוי, גם הטריגר הזה לא ירוץ. לכן כדאי גיבוי שלא תלוי ב-Home Assistant: הגבלת זמן או תזמון במכשיר עצמו. לאינטגרציה הרשמית של Switcher יש פעולה switcher_kis.turn_on_with_timer, שמדליקה את הדוד עם טיימר שרץ במכשיר. במכשיר כזה אפשר להחליף את switch.turn_on בפעולה הבאה:

YAML
action: switcher_kis.turn_on_with_timer
target:
  entity_id: switch.boiler
data:
  timer_minutes: 60

לכל מכשיר אחר בדקו אם יש לו תזמון או כיבוי אוטומטי באפליקציה שלו. המדריך לא ממליץ על דגם מסוים.

התראות, קול וכפתורים בזמן מצב שבת

התראות לטלפון, הודעות קוליות ופעולות של כפתור מקבלות את אותו תנאי. הוסיפו אותו לרשימת התנאים של כל אוטומציה שלא אמורה לרוץ בזמן המצב:

YAML
condition: state
entity_id: input_boolean.shabbat_mode
state: "off"

כך מתנהגות ההתראות לטלפון, הפעולות של כפתור חכם ואוטומציות של זיהוי נוכחות, למשל הודעה ״יצאתם מהבית והדוד דולק״. אם אוטומציה מסוימת צריכה לפעול דווקא במצב שבת, התנאי הפוך: on.

כדאי שכל בני הבית יראו אם המצב פעיל. הוסיפו את input_boolean.shabbat_mode לכרטיס בלוח הבקרה של הבית, עם שם שמסביר מה המצב משנה.

בודקים לפני שבת, בלי לחכות ליום שישי

  1. בכל אוטומציה פתחו את התפריט ובחרו Run actions. בדקו שהאור והדוד מגיבים. בדיקה כזאת מוכיחה את הפעולות, לא את הטריגר.
  2. הדליקו את ״מצב שבת״ ידנית, ואז שנו לרגע את בלוק ה-Schedule לשעה הקרובה. בדקו שהאור נדלק ונכבה, והחזירו את הלוח למקומו.
  3. כבו את המצב וודאו שהתראה לדוגמה נשלחת שוב.
  4. בדקו ב-Developer tools > States ש-Upcoming candle lighting מראה את הזמן שציפיתם לו, בשעון המקומי.
  5. פתחו History של Issur Melacha in effect ובדקו מתי עבר ל-on ול-off בשבת האחרונה.
  6. אחרי השבת הראשונה, פתחו את ה-Trace של אוטומציית המצב ובדקו שכל טריגר רץ פעם אחת.
  7. הפעילו מחדש את Home Assistant כשהמצב פעיל, ובדקו שהענף boot השאיר אותו כך.

אחרי כל עדכון גרסה, בדקו את חיישן איסור המלאכה לפני שבת. ב-2025.9.0 דווח שהוא לא עבר ל-on בשבת (issue #151836, נסגר). עדכון עם גיבוי ושחזור נותן דרך לחזור לגרסה קודמת אם משהו נשבר.

קיימות גם אינטגרציות קהילתיות ב-HACS לשבת ולזמנים. המדריך נשען על האינטגרציה הרשמית בלבד.

התחביר בדוגמאות תואם לתיעוד של סדרת 2026.9. המדריך עוסק בהגדרה הטכנית בלבד, ולא נוגע בשאלות של הלכה.

את כל המדריכים ל-Home Assistant באתר, לפי סדר הלמידה, תמצאו במפת המדריכים של הום אסיסטנט.

מקורות

התיעוד נבדק ב-6 באוקטובר 2026. הדוגמאות דורשות התאמה של מזהי הישויות לבית שלכם.

פרסומת

עוד משהו לקרוא

לכל הכתבות בנושא

מה מעניין אותך?