ليس رسميا بيكود ها أوريف
ينشئ هذا البرنامج النصي مجموعة من المستشعرات الثنائية التي تصدر تحذيرات لجميع المخاطر التي أشار إليها Pikud HA-OREF. تشمل هذه المخاطر تنبيهات حمراء لنيران الصواريخ والصواريخ ، والانتهاكات من قبل الطائرات غير المصرح بها ، والنشاط الزلزالي ، والتحذيرات تسونامي ، والتوغلات الإرهابية ، وحالات الطوارئ الكيميائية المتساقطة ، والحرب غير التقليدية ، من بين الأخطار الأخرى. Upon receiving an alert, the specific type of threat is indicated at the start of the message (for instance, ירי רקטות וטילים
for rocket and missile fire).
يوفر البرنامج النصي وظائف إضافية ، مثل أرشفة جميع تفاصيل التنبيه في نص تاريخي وملفات CSV وتسهيل إنشاء مستشاري فرعيات إضافية مشتقة من المستشعر الأساسي.
ملحوظة
يمكنك تخصيص اسم المستشعر حسب رغبتك ، مع تعيين red_alert
كإعداد افتراضي.
binary_sensor.red_alert
: يحمل بيانات Pikud HA-OREF ، مما يؤدي إلى الإنذارات وإعادة ضبط خلاف ذلك. إنه مفيد للأتمتة أو إنشاء أجهزة استشعار إضافية.binary_sensor.red_alert_city
: على غرار ما سبق ولكن فقط المشغلات إذا كانت المدينة المحددة مستهدفة بواسطة المنبه.input_text.red_alert
: يسجل أحدث بيانات التنبيه ، بمثابة سجل تاريخي.input_boolean.red_alert_test
: يحاكي تنبيهًا وهمية للتحقق من إعدادات الأتمتة.يقوم البرنامج النصي تلقائيًا بإنشاء ملفين Geojson يقومان بتخزين بيانات تحديد الموقع الجغرافي للتنبيه ، والتي يمكن عرضها على خريطة Home Assistant.
نصيحة
لتوفير بيانات السجل ، تحتاج إلى إنشاء مجلد يسمى www
داخل دليل مساعد المنزل. لضمان الحفاظ على تاريخ المستشعرات بعد إعادة تشغيل في مساعد المنزل ، يُنصح بإنشاء نص إدخال ومساعدين منطقيين. من الأفضل القيام بذلك قبل التثبيت. إليك كيف يمكنك المتابعة:
configuration.yaml
. yaml. # /config/configuration.yaml
homeassistant :
allowlist_external_urls :
- http://192.168.86.20:8123 # YOUR HOME ASSISTANT IP
- http://homeassistant.local:8123
allowlist_external_dirs :
- " /config/www "
input_text :
red_alert :
name : Last Alert in Israel
min : 0
max : 255
input_boolean :
red_alert_test :
name : Test Alert
icon : mdi:alert-circle
Settings
> Add-ons
> Ad-on-store
والبحث عن Appdaemon .requests
Python Package ضمن قسم Python Packages. /addon_configs/a0d7b954_appdaemon/appdaemon.yaml
وقم بإجراء التغييرات ضمن قسم AppDeamon كما هو موضح: نصيحة
إذا كنت تستخدم الوظيفة الإضافية لمحرر الملفات ، فسيتم إعدادها افتراضيًا للسماح فقط بالوصول إلى الملف إلى دليل مساعد المنزل الرئيسي. ومع ذلك ، توجد ملفات AppDaemon الإضافية في دليل الجذر. للوصول إلى هذه الملفات ، اتبع هذه الخطوات:
انتقل إلى Settings
> Add-ons
> File Editor
> Configuration
تبديل خيار Enforce Basepath
.
في محرر الملفات ، انقر فوق السهم بجوار اسم الدليل (والذي سيكون "HeryeSsistant"). يجب أن يتيح لك هذا الوصول إلى دليل الجذر حيث توجد ملفات AppDaemon الإضافية.
مهم
يمكنك تحديد موقع الإحداثيات الخاصة بك (Latitude & Longitude) هنا: https://www.latlong.net/
latitude: 31.9837528
longitude: 34.7359077
time_zone: Asia/Jerusalem
.app_dir: /homeassistant/appdaemon/apps/
./addon_configs/a0d7b954_appdaemon/apps
to /config/appdaemon/apps
. # /addon_configs/a0d7b954_appdaemon/appdaemon.yaml
---
# secrets: /homeassistant/secrets.yaml
appdaemon :
app_dir : /homeassistant/appdaemon/apps/ # If you install this script via HACS
latitude : 31.9837528
longitude : 34.7359077
elevation : 2
time_zone : Asia/Jerusalem
plugins :
HASS :
type : hass
# token: !secret appdaemon
http :
timeout : 30
admin :
api :
hadashboard :
لديك خياران لتنزيل البرنامج النصي: يدويًا أو عبر HACS. يضمن التثبيت من HACS أنه في حالة توفر أي إصدار جديد من البرنامج النصي ، ستتلقى إشعارًا في مساعد المنزل. لن يوفر لك التنزيل اليدوي التحديثات التلقائية المستقبلية. اختر الطريقة التي تناسبك بشكل أفضل.
appdaemon/apps
وانتقل إلى الخطوة النهائية في Home Assistant: انتقل إلى Settings
> Integrations
> HACS
> Configure
وتمكين AppDaemon apps discovery & tracking
. بعد التمكين ، ارجع إلى شاشة HACS الرئيسية.
انتقل إلى صفحة Custom Repositories
وأضف المستودع التالي مثل AppDaemon
: https://github.com/idodov/RedAlert/
العودة إلى شاشة HACS
الرئيسية وابحث عن Red Alerts Israel
. انقر على Download
وانتقل إلى الخطوة النهائية
في ملف appdaemon/apps/apps.yaml
، أضف الرمز التالي.
مهم
تأكد من استبدال قيم city_names
كما يحددها Pikud HA-OREF. For example, don't write תל אביב
, instead write: תל אביב - דרום העיר
.
للحصول على قائمة بأسماء المدينة والمنطقة - انقر هنا
# /appdaemon/apps/apps.yaml
red_alerts_israel :
module : red_alerts_israel
class : Red_Alerts_Israel
interval : 2
timer : 120
sensor_name : " red_alert "
save_2_file : True
city_names :
- תל אביב - מרכז העיר
- כיסופים
- שדרות, איבים, ניר עם
- אשדוד - א,ב,ד,ה
- נתיב הל''ה
المعلمة | وصف | مثال |
---|---|---|
interval | الفاصل الزمني في الثواني التي يعمل فيها البرنامج النصي | 2 |
timer | المدة ، في ثوانٍ ، يبقى المستشعر عليها بعد تنبيه | 120 |
sensor_name | اسم المستشعر الثنائي الأساسي في مساعد المنزل ( binary_sensor.#sensor_name# ) | red_alert |
save_2_file | تخزين ملفات البيانات التاريخية. في كل مرة يتم فيها تشغيل تنبيه ، سيقوم ملف TXT مخصص وملف CSV بحفظ البيانات. يمكن الوصول إلى هذا الملف من دليل Home Assistant WWW/ يمكن فتح CSV في أي تطبيق جدول بيانات ، مثل Excel أو Google Sheets | True |
city_names | أسماء المدن التي تنشط المستشعر الثنائي الثاني الذي سيتم تسميته binary_sensor.#sensor_name#_city . يمكنك إضافة أكبر عدد من المدن التي تريدها | תל אביב - מרכז העיר |
يقوم مساعد المنزل بتهيئة أربعة كيانات مميزة:
binary_sensor.red_alert
: هذا هو الكيان الرئيسي الذي يصبح نشطًا أثناء تنبيه أحمر في إسرائيل ويعود إلى غير نشط على خلاف ذلك. ويشمل مجموعة من السمات مثل الفئة ، والمعرف ، والعنوان ، والبيانات ، والوصف ، وعدد التنبيه النشط ، والرموز التعبيرية.binary_sensor.red_alert_city
: يحتفظ هذا الكيان ببيانات Pikud-Ha-Orof ويتم تنشيطه فقط إذا كان التنبيه يتضمن المدينة المحددة.input_text.red_alert
: مخصص لتسجيل تنبيه سجل في دفتر السجل. بالنظر إلى الحد الأقصى لمساعد المنزل الذي يبلغ 255 عامًا للكيانات النصية ، قد تؤدي الأحداث المكثفة إلى قطع البيانات أو حذفها. لذلك ، من غير المستحسن الاعتماد على هذا الكيان لمحفزات الأتمتة أو لإنشاء المستشفيين الفرعيين.input_boolean.red_alert_test
: ينشئ التقليب هذا التبديل بيانات وهمية (للمدن المحددة) التي تنشط المستشعر لمدة تعيين وفقًا لتكوين timer
.مثال بطاقة
type : vertical-stack
cards :
- type : tile
entity : input_text.red_alert
vertical : true
state_content : last-changed
- type : entities
entities :
- entity : binary_sensor.red_alert
- entity : binary_sensor.red_alert_city
- entity : input_boolean.red_alert_test
state_color : true
24 ساعة التاريخ
نصيحة
يمكنك تعديل البطاقة عن طريق اختيار إظهار أو عدم إظهار التاريخ والمزيد من بيانات المعلومات. {% set show_history = False %}
false هو عدم إظهار سجل تنبيه لمدة 24 ساعة {% set show_info = False %}
- false هو عدم إظهار المزيد من بيانات المعلومات
type : markdown
content : >-
{% set show_history = True %}
{% set show_info = True %}
{% set alerts = state_attr('binary_sensor.red_alert',
'last_24h_alerts_group') %}
{% set oref = states('binary_sensor.red_alert') %}
<table width=100%><tr><td align=center>
{% if oref == 'on' %}
# <font color = red>{{ state_attr('binary_sensor.red_alert', 'prev_title')
}}</font> {{ state_attr('binary_sensor.red_alert', 'emoji') }}
</td></tr>
<tr><td align=center><big><big>
<b>{{ state_attr('binary_sensor.red_alert', 'alert_txt') }}</b></big></big>
{% else %}
## <font color=green>אין התרעות</font> ✅{% endif %}
</td></tr></table>
{% set current_date = now().date() %}
{% if state_attr('binary_sensor.red_alert', 'prev_last_changed') |
regex_match("^\d{4}-\d{2}-\d{2}T\d{2}:d{2}:d{2}.d+$") %}
{% set last_changed_timestamp = state_attr('binary_sensor.red_alert',
'prev_last_changed') | as_timestamp %}
{% if current_date == (last_changed_timestamp | timestamp_custom('%Y-%m-%d',
true) | as_datetime).date() %}
{% set current_timestamp = now().timestamp() %}
{% set time_difference = current_timestamp - last_changed_timestamp %}
<center>התרעה אחרונה נשלחה {% if time_difference < 3600 %} לפני {{
(time_difference / 60) | int }} דקות
{% elif time_difference < 86400 %}היום בשעה {{ last_changed_timestamp |
timestamp_custom('%H:%M', true) }}
{% else %}בתאריך {{ last_changed_timestamp | timestamp_custom('%d/%m/%Y',
true) }}, בשעה {{ last_changed_timestamp | timestamp_custom('%H:%M', true) }}
{% endif %}{% endif %}{% endif %}
</ha-alert>
{% if alerts and show_history %}
{% if show_info %}
<hr>
<table width=100%>
<tr><td align=center>
{{ state_attr('binary_sensor.red_alert', 'cities_past_24h') | length }}
:ערים</td>
<td align=center>
{{ state_attr('binary_sensor.red_alert', 'last_24h_alerts') | length }}
:התרעות</td></tr>
<tr>
<td colspan=2 align=center>
במהלך 24 שעות אחרונות
</td>
</tr>
<tr><td colspan=2><hr></td></tr>
</table>
{% endif %}
<table width=100% align=center>
{% for alert_type, areas in alerts.items() %}
<tr>
<td></td>
</tr>
<tr>
<td colspan=6 align=center><h2><font color=blue>{{ alert_type }}</font></h2>
<hr></td>
</tr>
{% for area, cities in areas.items() %}
<tr>
<td></td>
</tr>
<tr>
<td colspan=6 align=center><big><b>{{ area }}</b></big></td></tr>
<tr>
<td colspan=6></td>
</tr>
{% for city_pair in cities|batch(2) %}
<tr><td align=right valign=top>{{ city_pair[0].city }}</td>
<td valign=top> - </td><td valign=top>{{ city_pair[0].time[11:16] }}</td>{% if
city_pair|length > 1 %}
<td align=right valign=top>{{ city_pair[1].city }}</td>
<td valign=top> - </td><td valign=top>{{ city_pair[1].time[11:16] }}{% else
%}</td>{% endif %}</tr>
{% endfor %}
<tr>
<td colspan=6> </td>
</tr>
{% endfor %}
{% endfor %}
</table>
{% else %}
{% endif %}
نصيحة
استخدم هذا المشغل في الأتمتة {{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.red_alert.last_updated)) > 30 }}
لمعرفة متى فشل البرنامج النصي في التشغيل.
يمكنك أيضًا إنشاء بطاقة تخفيضية خاصة لتتبع المستشعر:
type : markdown
content : >-
{% set status = (as_timestamp(now()) -
as_timestamp(states.binary_sensor.red_alert.last_updated)) < 30 %}
{% if status %}
<ha-alert alert-type="info">Run **{{ state_attr('binary_sensor.red_alert', 'count') }}** times since restart
{% else %}
<ha-alert alert-type="warning">**SCRIPT IS NOT RUNNING!!!**
{% endif %}
</ha-alert>
يمكنك استخدام أي attribue من المستشعر. على سبيل المثال ، لإظهار العنوان على بطاقة Lovelace ، استخدم بناء جملة الرمز: {{ state_attr('binary_sensor.red_alert', 'title') }}
اسم السمة | وسائل | مثال |
---|---|---|
`active_now" | on يكون هناك تنبيه مباشر ، off عدم وجود تنبيهات حية | off |
count | يعتبر عدد المرات التي يدير فيها البرنامج النصي منذ إعادة تشغيل آخر مساعد للمنزل. من خلال مراقبة هذه البيانات ، يمكنك تحديد ما إذا كان البرنامج النصي لا يعمل. | 12345 |
cat | رقم الفئة. يمكن أن يكون من 1 إلى 13 | 1 |
title | نوع الهجوم في النص | ירי רקטות וטילים |
data | قائمة المدن كسلسلة | תל אביב - מרכז העיר |
cities | قائمة المدن التي يتم هجومها | - קריית שמונה |
alerts_count | عدد التنبيهات الحية | 4 |
my_cities | مدن المستخدم المحددة | - תל אביב - מרכז העיר |
areas | قائمة المجالات كسلسلة | גוש דן |
desc | اشرح ماذا تفعل | היכנסו למרחב המוגן ושהו בו 10 דקות |
duration | كم ثانية لتكون في الغرفة الآمنة | 600 |
id | معرف التنبيه | 133413399870000000 |
data_count | عدد المدن التي تتعرض للهجوم | 1 |
cities_past_24h | قائمة المدن التي هاجمت خلال الـ 24 ساعة الماضية | - שלומי |
last_24h_alerts | قائمة بجميع التنبيهات في الـ 24 ساعة الماضية | title ، city ، area ، time |
last_24h_alerts_group | قائمة بجميع تنبيهات الـ 24 ساعة المجمعة حسب العنوان والمنطقة | titile ، area ، city ، time |
emoji | أيقونة نوع الهجوم |
|
prev_* | آخر البيانات من كل attribue | يخزن أحدث المعلومات عندما كان المستشعر نشطًا |
alert | سطر واحد النص الكامل | ירי רקטות וטילים ב־קו העימות - בצת, שלומי |
alert_alt | نص خط كامل | ירי רקטות וטילים/n* קו העימות: בצת, שלומי |
alert_txt | نص سطر واحد | קו העימות: בצת, שלומי |
alert_wa | تحسين رسالة نصية لإرسالها عبر WhatsApp | ![]() |
alert_tg | تحسين رسالة نصية لإرسالها عبر Telegram |
مثال:
count : 237
id : 1234567890000000
cat : 1
title : ירי רקטות וטילים
desc : היכנסו למרחב המוגן ושהו בו 10 דקות
data : אבירים, פסוטה
areas : קו העימות
data_count : 2
duration : 600
last_changed : " 2024-03-29T20:18:36.354614 "
emoji : ️
icon_alert : mdi:alert
prev_last_changed : " 2024-03-29T20:18:36.354636 "
prev_cat : 1
prev_title : ירי רקטות וטילים
prev_desc : היכנסו למרחב המוגן ושהו בו 10 דקות
prev_data : שלומי
prev_data_count : 1
prev_duration : 600
prev_areas : קו העימות
alert : " ירי רקטות וטילים ב־קו העימות: שלומי "
alert_alt : |-
ירי רקטות וטילים
* קו העימות: שלומי
alert_txt : " קו העימות: שלומי "
alert_wa : |-
*ירי רקטות וטילים*
> קו העימות
שלומי
_היכנסו למרחב המוגן ושהו בו 10 דקות_
friendly_name : All Red Alerts
icon : mdi:alert
alert_tg : |-
**ירי רקטות וטילים**
**__קו העימות__** — שלומי
__היכנסו למרחב המוגן ושהו בו 10 דקות__
يقوم البرنامج النصي أيضًا بإنشاء ملفين Geojson تلقائيًا ، والذين يخزنان بيانات تحديد الموقع الجغرافي للتنبيه ويمكن عرضه على خريطة مساعد المنزل. يوجد كلا الملفين في دليل \homeassistantconfigwww
. يقوم ملف red_alert_24h.geojson
بتخزين بيانات التنبيهات من آخر 24 ساعة ، وملف red_alert_latest.geojson
يخزن أحدث بيانات التنبيه.
لعرض البيانات على خريطة مساعد المنزل:
http://homeassistant.local:8123/local/red_alert_24h.geojson
.ملحوظة
إذا لم يتمكن تكامل Geojson من الوصول إلى ملف Geojson ، فتوقف ملف configuration.yaml
وأضف الموافقة اللازمة ، مثل هذا:
homeassistant :
allowlist_external_urls :
- http://192.168.86.174:8123 # YOUR HA IP
- http://homeassistant.local:8123
allowlist_external_dirs :
- " /config/www "
يقوم البرنامج النصي بتخزين بيانات المستشعر في ملف نصي يدعى red_alert_history.txt
و red_alert_history.csv
، وكلاهما يقع في دليل \homeassistantconfigwww
. في كل مرة يتم فيها تشغيل تنبيه (بما في ذلك تنبيهات الاختبار) ، يتم تحديث الملفات. يمكن فتح ملف CSV المخصص في أي تطبيق جدول بيانات ، مثل Excel أو Google Sheets. يمكنك الوصول مباشرة إلى هذه الملفات من متصفحك باستخدام عنوان URL المقدم: http: //homeassistant.local: 8123/local/red_alert_history.txt.
يعرض ما إذا كان هناك تنبيه ، وعدد التنبيهات النشطة ، ومواقعها الخاصة.
type : markdown
content : >-
<center><h3>{% if state_attr('binary_sensor.red_alert', 'data_count') > 0 %}
כרגע יש {% if state_attr('binary_sensor.red_alert', 'data_count') > 1 %}{{
state_attr('binary_sensor.red_alert', 'data_count') }} התרעות פעילות{% elif
state_attr('binary_sensor.red_alert', 'data_count') == 1 %} התרעה פעילה אחת{%
endif %}{% else %} אין התרעות פעילות{% endif %}</h3>
{% if state_attr('binary_sensor.red_alert', 'data_count') > 0 %}<h2>{{
state_attr('binary_sensor.red_alert', 'emoji') }} {{
state_attr('binary_sensor.red_alert', 'title') }}</h2>
<h3>{{ state_attr('binary_sensor.red_alert', 'data') }}</h3>
**{{ state_attr('binary_sensor.red_alert', 'desc') }}** {% endif %} </center>
title : Red Alert
باستخدام هذا البرنامج النصي ، لديك المرونة لتضمين معلومات إضافية ، مثل الوقت الدقيق الذي تم تشغيل التنبيه .
type : markdown
content : >-
<center><h3>{% if state_attr('binary_sensor.red_alert', 'data_count') > 0 %}
כרגע יש {% if state_attr('binary_sensor.red_alert', 'data_count') > 1 %}{{
state_attr('binary_sensor.red_alert', 'data_count') }} התרעות פעילות{% elif
state_attr('binary_sensor.red_alert', 'data_count') == 1 %} התרעה פעילה אחת{%
endif %}{% else %} אין התרעות פעילות{% endif %}</h3>
{% if state_attr('binary_sensor.red_alert', 'data_count') > 0 %}<h2>{{
state_attr('binary_sensor.red_alert', 'emoji') }} {{
state_attr('binary_sensor.red_alert', 'title') }}</h2> <h3>{{
state_attr('binary_sensor.red_alert', 'data') }}</h3> **{{
state_attr('binary_sensor.red_alert', 'desc') }}** {% endif %}
{% if state_attr('binary_sensor.red_alert', 'last_changed') |
regex_match("^\d{4}-\d{2}-\d{2}T\d{2}:d{2}:d{2}.d+$") %}
{% set last_changed_timestamp = state_attr('binary_sensor.red_alert',
'last_changed') | as_timestamp %}
{% set current_date = now().date() %}
{% if current_date == (last_changed_timestamp | timestamp_custom('%Y-%m-%d',
true)
| as_datetime).date() %}
ההתרעה האחרונה נשלחה היום בשעה {{ last_changed_timestamp | timestamp_custom('%H:%M', true) }}
{% else %}התרעה אחרונה נשלחה בתאריך {{ last_changed_timestamp |
timestamp_custom('%d/%m/%Y', true) }}, בשעה {{ last_changed_timestamp |
timestamp_custom('%H:%M', true) }}
{% endif %}
{% endif %}
</center>
طريقة أجمل أخرى:
type : markdown
content : >-
<ha-icon icon="{{ state_attr('binary_sensor.red_alert', 'icon')
}}"></ha-icon> {% if state_attr('binary_sensor.red_alert', 'data_count') > 0
%}כרגע יש {% if state_attr('binary_sensor.red_alert', 'data_count') > 1 %}{{
state_attr('binary_sensor.red_alert', 'data_count') }} התרעות פעילות{% elif
state_attr('binary_sensor.red_alert', 'data_count') == 1 %} התרעה פעילה אחת{%
endif %}{% else %}אין התרעות פעילות{% endif %}{% if
state_attr('binary_sensor.red_alert', 'data_count') > 0 %}
<ha-alert alert-type="error" title="{{ state_attr('binary_sensor.red_alert',
'title') }}">{{ state_attr('binary_sensor.red_alert', 'data') }}</ha-alert>
<ha-alert alert-type="warning">{{ state_attr('binary_sensor.red_alert',
'desc') }}</ha-alert>
{% endif %}
{% if state_attr('binary_sensor.red_alert', 'last_changed') |
regex_match("^\d{4}-\d{2}-\d{2}T\d{2}:d{2}:d{2}.d+$") %}
{% set last_changed_timestamp = state_attr('binary_sensor.red_alert',
'last_changed') | as_timestamp %}
{% set current_date = now().date() %}{% if current_date ==
(last_changed_timestamp | timestamp_custom('%Y-%m-%d', true)
| as_datetime).date() %}<ha-alert alert-type="info">ההתרעה האחרונה נשלחה היום בשעה {{ last_changed_timestamp | timestamp_custom('%H:%M', true) }}
{% else %}התרעה אחרונה נשלחה בתאריך {{ last_changed_timestamp |
timestamp_custom('%d/%m/%Y', true) }}, בשעה {{ last_changed_timestamp |
timestamp_custom('%H:%M', true) }}{% endif %}{% endif %}</ha-alert>
لديك المرونة لإنشاء إجراءات آلية مختلفة ناتجة عن المستشعر الثنائي أو أجهزة استشعاره الفرعية. على سبيل المثال ، يتمثل أحد التطبيقات المحتملة في إرسال رسائل التنبيه إلى شاشة مصفوفة LED (في الموافقة المسبقة عن علم: إعادة توجيه جميع التنبيهات إلى الساعة الذكية Ulanzi ، والتي تعتمد على Esphome32 وتتميز بشاشة).
(قم بتغيير #your phone#
إلى اسم الكيان الخاص بك)
alias : Notify attack
description : " Real-time Attack Notification "
trigger :
- platform : state
entity_id :
- binary_sensor.red_alert
from : " off "
to : " on "
condition : []
action :
- service : notify.mobile_app_#your phone#
data :
message : " {{ state_attr('binary_sensor.red_alert', 'data') }} "
title : " {{ state_attr('binary_sensor.red_alert', 'title') }} {{ state_attr('binary_sensor.red_alert', 'areas') }} "
mode : single
كتوضيح آخر ، يمكنك تكوين مصابيح RGB الخاصة بك لتغيير الألوان مرارًا وتكرارًا بينما يكون التنبيه نشطًا.
(تغيير light.#light-1#
إلى اسم الكيان الخاص بك)
alias : Alert in city
description : " When an alert occurs in your define city, the lights will cyclically change to red and blue for a duration of 30 seconds, after which they will revert to their previous states "
trigger :
- platform : state
entity_id :
- binary_sensor.red_alert_city
from : " off "
to : " on "
condition : []
action :
- service : scene.create
data :
scene_id : before_red_alert
snapshot_entities :
- light.#light-1#
- light.#light-2#
- light.#light-3#
- repeat :
count : 30
sequence :
- service : light.turn_on
data :
color_name : blue
target :
entity_id :
- light.#light-1#
- light.#light-2#
- light.#light-3#
- delay :
hours : 0
minutes : 0
seconds : 0
milliseconds : 500
- service : light.turn_on
data :
color_name : red
target :
entity_id :
- light.#light-1#
- light.#light-2#
- light.#light-3#
- delay :
hours : 0
minutes : 0
seconds : 0
milliseconds : 500
- service : scene.turn_on
data : {}
target :
entity_id : scene.before_red_alert
mode : single
توفر سمة "DESC" معلومات عن المدة في دقائق للبقاء داخل الغرفة الآمنة. ستقوم هذه الأتمتة بإنشاء مؤقت بناءً على البيانات من هذه السمة. قبل تنفيذ هذه الأتمتة ، من الضروري إنشاء مساعد مؤقت.
#your phone#
إلى اسم الكيان الخاص بك) Alias : Safe to go out
description : " Notify on phone that it's safe to go outside "
mode : single
trigger :
- platform : template
value_template : >-
{{ "תל אביב - מרכז העיר" in state_attr('binary_sensor.red_alert',
'data').split(', ') }}
condition : []
action :
- service : timer.start
data :
duration : >-
{{ state_attr('binary_sensor.red_alert_city', 'duration') }}
target :
entity_id : timer.red_alert
- service : notify.mobile_app_#your phone#
data :
title : ההתרעה הוסרה
message : אפשר לחזור לשגרה
على الرغم من أنك بحاجة إلى تحديد المدن التي سيتم تنشيط المستشعر الثنائي الثانوي ، فإنك تتمتع أيضًا بالمرونة لتحديد المستشعرات الفرعية الإضافية بناءً على المستشعر الرئيسي. فيما يلي بعض الأمثلة على كيفية القيام بذلك.
ملحوظة
لإنشاء مستشعر ينشط فقط عندما يحدث الهجوم في مدينة معينة لها أنماط شخصية مماثلة في أسماء المدن الأخرى ، يجب عليك استخدام النهج التالي. For example, if you want to create a sensor that activates when only "יבנה" and not "גן יבנה" is attacked, you can use the following code syntax. إذا كنت ترغب في تشغيل منطقة معينة ، فاستخدم وظيفة الانقسام وتأكد من كتابة اسم المدينة والمساحة تمامًا كما تظهر في https://www.oref.org.il/12481-he/pakar.aspx
{{ "תל אביב - מרכז העיר" in state_attr('binary_sensor.red_alert', 'data').split(', ') }}
{{ "יבנה" in state_attr('binary_sensor.red_alert', 'data').split(', ') }}
{{ "אירוס" in state_attr('binary_sensor.red_alert', 'data').split(', ')
or "בית חנן" in state_attr('binary_sensor.red_alert', 'data').split(', ')
or "גן שורק" in state_attr('binary_sensor.red_alert', 'data').split(', ') }}
في المدن التي لديها مناطق متعددة ، لن يكون الاعتماد فقط على وظيفة الانقسام فعالًا إذا قمت بتعريف اسم المدينة فقط. إذا كنت بحاجة إلى مستشعر يحفز جميع المناطق داخل 11 مدينة مقسمة إلى مناطق تنبيه متعددة ، فمن المستحسن استخدام وظيفة Search_regex بدلاً من تقسيم البيانات.
{{ state_attr('binary_sensor.red_alert', 'data') | regex_search("תל אביב") }}
يتم تقسيم إسرائيل إلى 30 منطقة حضرية ، مما يسمح لك بتحديد الوضع العام للبلدات القريبة دون الحاجة إلى تحديد كل منطقة بشكل فردي. لتحقيق ذلك ، يمكنك استخدام سمة "المناطق". فيما يلي قائمة المناطق الحضرية الثلاثين في إسرائيل ، المقدمة بالترتيب الأبجدي:
אילת, בקעה, בקעת בית שאן, גוש דן, גליל עליון, גליל תחתון, דרום הגולן, דרום הנגב, הכרמל, המפרץ, העמקים, השפלה, ואדי ערה, יהודה, ים המלח, ירושלים, ירקון, לכיש, מנשה, מערב הנגב, מערב לכיש, מרכז הגליל, מרכז הנגב, עוטף עזה, ערבה, צפון הגולן, קו העימות, שומרון, שפלת יהודה ושרון
{{ "גוש דן" in state_attr('binary_sensor.red_alert', 'areas').split(', ') }}
تحدد سمة "CAT" نوع التنبيه ، مع نطاق من 1 إلى 13. لديك خيار إعداد مستشعر ثنائي لنوع معين من التنبيه مع أو بدون أي مدينة أو منطقة من اختيارك.
القط (رقم) | نوع التنبيه |
---|---|
1 | هجوم المجلس |
6 | اختراق الطائرات غير المصرح به |
13 | تسلل الإرهابيين |
الزناد للأتمتة
{{ state_attr('binary_sensor.red_alert', 'cat') == '6' }}
تنبيه عينة تنبيه لاختراق الطائرات غير المصرح به في Nahal-Oz
{{ state_attr('binary_sensor.red_alert', 'cat') == '6'
and "נחל עוז" in state_attr('binary_sensor.red_alert', 'data').split(', ') }}