Bukan pikud ha-oref resmi
Naskah ini menciptakan serangkaian sensor biner yang mengeluarkan peringatan untuk semua bahaya yang ditandai oleh Pikud Ha-Oref. Bahaya ini mencakup peringatan merah untuk rudal dan api roket, pelanggaran oleh pesawat yang tidak sah, aktivitas seismik, peringatan tsunami, serangan teroris, keadaan darurat tumpahan kimia, perang non-konvensional, di antara bahaya lainnya. Setelah menerima peringatan, jenis ancaman spesifik ditunjukkan pada awal pesan (misalnya, ירי רקטות וטילים
untuk roket dan api rudal).
Skrip ini menawarkan fungsi tambahan, seperti mengarsipkan semua detail peringatan dalam teks historis dan file CSV dan memfasilitasi pembuatan sub-sensor tambahan yang berasal dari sensor utama.
Catatan
Anda dapat menyesuaikan nama sensor sesuai keinginan Anda, dengan red_alert
diatur sebagai default.
binary_sensor.red_alert
: memegang data pikud ha-oref, memicu alarm dan mengatur ulang sebaliknya. Ini berguna untuk otomatisasi atau membuat sensor tambahan.binary_sensor.red_alert_city
: Mirip dengan yang di atas tetapi hanya memicu jika kota yang ditentukan ditargetkan oleh alarm.input_text.red_alert
: Masuk data peringatan terbaru, berfungsi sebagai log historis.input_boolean.red_alert_test
: mensimulasikan peringatan dummy untuk memverifikasi pengaturan otomasi.Script secara otomatis menghasilkan dua file Geojson yang menyimpan data geolokasi peringatan, yang dapat ditampilkan di peta asisten rumah.
Tip
Untuk menyimpan data riwayat, Anda perlu membuat folder yang disebut www
di dalam direktori asisten rumah. Untuk memastikan sejarah sensor dipertahankan setelah restart di asisten rumah, disarankan untuk membuat teks input dan pembantu Boolean. Yang terbaik adalah melakukan ini sebelum instalasi. Begini cara Anda melanjutkan:
configuration.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
dan cari AppDAemon .requests
di bawah bagian Paket Python. /addon_configs/a0d7b954_appdaemon/appdaemon.yaml
dan buat perubahan di bagian appdeamon seperti yang dijelaskan: Tip
Jika Anda menggunakan add-on editor file, itu diatur secara default untuk hanya mengizinkan akses file ke direktori asisten rumah utama. Namun, file add-on Appdaemon terletak di direktori root. Untuk mengakses file -file ini, ikuti langkah -langkah ini:
Buka Settings
> Add-ons
> File Editor
> Configuration
Takkan opsi Enforce Basepath
.
Di editor file, klik panah di sebelah nama direktori (yang akan menjadi 'homeassistant'). Ini harus memberi Anda akses ke direktori root di mana file add-on appdaemon berada.
Penting
Anda dapat menemukan koordinat Anda sendiri (Latitude & Longitude) di sini: https://www.latlong.net/
latitude: 31.9837528
longitude: 34.7359077
time_zone: Asia/Jerusalem
.app_dir: /homeassistant/appdaemon/apps/
./addon_configs/a0d7b954_appdaemon/apps
ke /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 :
Anda memiliki dua pilihan untuk mengunduh skrip: secara manual atau melalui HACS. Menginstal dari HACS memastikan bahwa jika ada versi baru dari skrip yang tersedia, Anda akan menerima pemberitahuan di asisten rumah. Unduhan manual tidak akan memberi Anda pembaruan otomatis di masa mendatang. Pilih metode yang paling cocok untuk Anda.
appdaemon/apps
dan lanjutkan ke langkah terakhir Di Home Assistant: Navigasi ke Settings
> Integrations
> HACS
> Configure
dan Aktifkan AppDaemon apps discovery & tracking
. Setelah mengaktifkan, kembali ke layar HACS utama.
Arahkan ke halaman Custom Repositories
dan tambahkan repositori berikut sebagai AppDaemon
: https://github.com/idodov/RedAlert/
Kembali ke layar HACS
utama dan cari Red Alerts Israel
. Klik Download
dan lanjutkan ke langkah terakhir
Di file appdaemon/apps/apps.yaml
, tambahkan kode berikut.
Penting
Pastikan untuk mengganti nilai city_names
sebagai Pikud HA-Oref mendefinisikannya. Misalnya, jangan tulis תל אביב
, alih -alih tulis: תל אביב - דרום העיר
.
Untuk daftar nama kota dan area - klik di sini
# /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 :
- תל אביב - מרכז העיר
- כיסופים
- שדרות, איבים, ניר עם
- אשדוד - א,ב,ד,ה
- נתיב הל''ה
Parameter | Keterangan | Contoh |
---|---|---|
interval | Interval dalam hitungan detik di mana skrip berjalan | 2 |
timer | Durasi, dalam hitungan detik, di mana sensor tetap menyala setelah peringatan | 120 |
sensor_name | Nama sensor biner primer di asisten rumah ( binary_sensor.#sensor_name# ) | red_alert |
save_2_file | Simpan file data historis. Setiap kali peringatan dipicu, file TXT khusus dan file CSV akan menyimpan data. File ini dapat diakses dari Direktori WWW Asisten Rumah/ CSV dapat dibuka di aplikasi spreadsheet apa pun, seperti Excel atau Google Sheets | True |
city_names | Nama -nama kota yang mengaktifkan sensor biner kedua yang akan dinamai binary_sensor.#sensor_name#_city . Anda dapat menambahkan sebanyak mungkin kota yang Anda inginkan | תל אביב - מרכז העיר |
Asisten Rumah Menginisialisasi Empat Entitas Berbeda:
binary_sensor.red_alert
: Ini adalah entitas utama yang menjadi aktif selama peringatan merah di Israel dan kembali ke tidak aktif sebaliknya. Ini mencakup berbagai atribut seperti kategori, ID, judul, data, deskripsi, penghitungan peringatan aktif, dan emoji.binary_sensor.red_alert_city
: Entitas ini menyimpan data pikud-ha-oref dan diaktifkan semata-mata jika peringatan mencakup kota yang ditentukan.input_text.red_alert
: Ditujukan untuk logging peringatan peringatan di buku catatan. Diberikan batas 255 karakter asisten rumah untuk entitas teks, peristiwa yang luas dapat menyebabkan data terputus atau dihilangkan. Oleh karena itu, tidak disarankan untuk mengandalkan entitas pemicu otomatisasi ini atau untuk menghasilkan sub-sensor.input_boolean.red_alert_test
: Membalik sakelar ini menghasilkan data fiktif (untuk kota -kota tertentu) yang mengaktifkan sensor untuk durasi yang ditetapkan sesuai konfigurasi timer
.Contoh kartu
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
Sejarah 24 Jam
Tip
Anda dapat memodifikasi kartu dengan memilih untuk menunjukkan atau tidak untuk menunjukkan sejarah dan lebih banyak data informasi. {% set show_history = False %}
false adalah untuk tidak menunjukkan sejarah peringatan 24 jam {% set show_info = False %}
- false adalah untuk tidak menampilkan data info lebih lanjut
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 %}
Tip
Gunakan pemicu ini dalam otomatisasi {{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.red_alert.last_updated)) > 30 }}
Untuk mengetahui kapan skrip gagal dijalankan.
Anda juga dapat membuat kartu markdown khususnya untuk melacak sensor:
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>
Anda dapat menggunakan atribue apa pun dari sensor. Misalnya, untuk menampilkan judul pada kartu Lovelace, gunakan sintaks kode ini: {{ state_attr('binary_sensor.red_alert', 'title') }}
Nama atribut | Cara | Contoh |
---|---|---|
`Active_now ' | on ada peringatan langsung, off tidak ada peringatan langsung | off |
count | Menghitung berapa kali skrip telah berjalan sejak restart terakhir dari asisten rumah. Dengan memantau data ini, Anda dapat menentukan apakah dan kapan skrip tidak berjalan. | 12345 |
cat | Nomor kategori. bisa dari 1 hingga 13 | 1 |
title | Jenis serangan dalam teks | ירי רקטות וטילים |
data | Daftar kota sebagai string | תל אביב - מרכז העיר |
cities | Daftar kota yang diserang | - קריית שמונה |
alerts_count | Jumlah peringatan langsung | 4 |
my_cities | Kota pengguna yang ditentukan | - תל אביב - מרכז העיר |
areas | Daftar area sebagai string | גוש דן |
desc | Jelaskan apa yang harus dilakukan | היכנסו למרחב המוגן ושהו בו 10 דקות |
duration | Berapa detik di ruang aman | 600 |
id | ID peringatan | 133413399870000000 |
data_count | Jumlah kota yang diserang | 1 |
cities_past_24h | Daftar kota yang telah diserang dalam 24 jam terakhir | - שלומי |
last_24h_alerts | Daftar semua peringatan dalam 24 jam terakhir | title , city , area , time |
last_24h_alerts_group | DAFTAR SEMUA SEMUA 24 JAM PERINGATAN DISERVED DENGAN JUDUL DAN AREA | titile , area , city , time |
emoji | Ikon untuk jenis serangan |
|
prev_* | Data terakhir dari setiap atribue | Menyimpan informasi terbaru saat sensor aktif |
alert | Satu baris teks lengkap | ירי רקטות וטילים ב־קו העימות - בצת, שלומי |
alert_alt | Breaking Line Teks Lengkap | ירי רקטות וטילים/n* קו העימות: בצת, שלומי |
alert_txt | Satu baris teks | קו העימות: בצת, שלומי |
alert_wa | Mengoptimalkan pesan teks untuk dikirim melalui whatsapp | ![]() |
alert_tg | Mengoptimalkan pesan teks untuk dikirim melalui telegram |
Contoh:
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 דקות__
Skrip juga membuat dua file Geojson secara otomatis, yang menyimpan data geolokasi peringatan dan dapat ditampilkan di peta asisten rumah. Kedua file terletak di direktori \homeassistantconfigwww
. File red_alert_24h.geojson
menyimpan data untuk peringatan dari 24 jam terakhir, dan file red_alert_latest.geojson
menyimpan data peringatan terbaru.
Untuk menampilkan data di peta asisten rumah:
http://homeassistant.local:8123/local/red_alert_24h.geojson
.Catatan
Jika integrasi Geojson tidak dapat mengakses file GeoJson, buka file configuration.yaml
dan tambahkan persetujuan yang diperlukan, seperti ini:
homeassistant :
allowlist_external_urls :
- http://192.168.86.174:8123 # YOUR HA IP
- http://homeassistant.local:8123
allowlist_external_dirs :
- " /config/www "
Skrip menyimpan data sensor dalam file teks bernama red_alert_history.txt
dan red_alert_history.csv
, keduanya terletak di direktori \homeassistantconfigwww
. Setiap kali peringatan (termasuk peringatan uji) dipicu, file diperbarui. File CSV khusus dapat dibuka di aplikasi spreadsheet apa pun, seperti Excel atau Google Sheets. Anda dapat secara langsung mengakses file -file ini dari browser Anda menggunakan URL yang disediakan: http: //homeassistant.local: 8123/lokal/red_alert_history.txt.
Menampilkan apakah ada peringatan, jumlah peringatan aktif, dan lokasi masing -masing.
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
Dengan menggunakan skrip ini, Anda memiliki fleksibilitas untuk memasukkan informasi tambahan, seperti waktu yang tepat yang dipicu .
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>
Cara lain yang lebih bagus:
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>
Anda memiliki fleksibilitas untuk menghasilkan berbagai tindakan otomatis yang dipicu oleh sensor biner atau sensor anak perusahaannya. Sebagai contoh, salah satu aplikasi potensial adalah mengirimkan pesan peringatan ke layar matriks LED (di PIC: Meneruskan semua peringatan ke jam pintar Ulanzi, yang didasarkan pada ESPHOME32 dan fitur layar).
(Ubah #your phone#
ke Nama Entitas Anda)
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
Sebagai ilustrasi lain, Anda dapat mengonfigurasi lampu RGB Anda untuk mengubah warna berulang kali saat peringatan aktif.
(Ubah light.#light-1#
ke nama entitas Anda)
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
Atribut "Desc" memberikan informasi tentang durasi dalam hitungan menit untuk tetap di dalam ruang aman. Otomatisasi ini akan menghasilkan pengatur waktu berdasarkan data dari atribut ini. Sebelum menerapkan otomatisasi ini, penting untuk membuat pembantu timer.
#your phone#
ke nama entitas Anda) 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 : אפשר לחזור לשגרה
Meskipun Anda perlu menentukan kota-kota di mana sensor biner sekunder akan diaktifkan, Anda juga memiliki fleksibilitas untuk menentukan sub-sensor tambahan berdasarkan sensor utama. Berikut adalah beberapa contoh bagaimana Anda bisa melakukan ini.
Catatan
Untuk membuat sensor yang hanya mengaktifkan ketika serangan terjadi di kota tertentu yang memiliki pola karakter yang sama di nama kota lain, Anda harus menggunakan pendekatan berikut. Misalnya, jika Anda ingin membuat sensor yang diaktifkan ketika hanya "יבנה" dan bukan "גן יבנה" diserang, Anda dapat menggunakan sintaks kode berikut. Jika Anda ingin memicu area tertentu, gunakan fungsi split dan pastikan untuk mengetik nama dan area kota persis seperti yang muncul di 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(', ') }}
Di kota -kota dengan beberapa zona, hanya mengandalkan fungsi split tidak akan efektif jika Anda hanya mendefinisikan nama kota. Jika Anda memerlukan sensor yang memicu semua zona di dalam 11 kota yang dibagi menjadi beberapa zona peringatan, disarankan untuk memanfaatkan fungsi search_regex alih -alih membagi data.
{{ state_attr('binary_sensor.red_alert', 'data') | regex_search("תל אביב") }}
Israel disegmentasi menjadi 30 wilayah metropolitan, memungkinkan Anda untuk menentukan status umum kota -kota terdekat tanpa perlu menentukan masing -masing secara individual. Untuk mencapai ini, Anda dapat menggunakan atribut "Area". Inilah daftar 30 wilayah metropolitan di Israel, disajikan dalam urutan abjad:
אילת, בקעה, בקעת בית שאן, גוש דן, גליל עליון, גליל תחתון, דרום הגולן, דרום הנגב, הכרמל, המפרץ, העמקים, השפלה, ואדי ערה, יהודה, ים המלח, ירושלים, ירקון, לכיש, מנשה, מערב הנגב, מערב לכיש, מרכז הגליל, מרכז הנגב, עוטף עזה, ערבה, צפון הגולן, קו עימות, שומרון, שפלת יהודה ilkanשרון
{{ "גוש דן" in state_attr('binary_sensor.red_alert', 'areas').split(', ') }}
Atribut 'CAT' mendefinisikan jenis peringatan, dengan kisaran dari 1 hingga 13. Anda memiliki opsi untuk mengatur sensor biner untuk jenis peringatan tertentu dengan atau tanpa kota atau area pilihan Anda.
Kucing (nomor) | Jenis peringatan |
---|---|
1 | Serangan missle |
6 | Penetrasi pesawat yang tidak sah |
13 | Infiltrasi teroris |
Pemicu otomatisasi
{{ state_attr('binary_sensor.red_alert', 'cat') == '6' }}
Contoh Peringatan Pemicu untuk Penetrasi Pesawat Tidak Sah di Nahal-Oz
{{ state_attr('binary_sensor.red_alert', 'cat') == '6'
and "נחל עוז" in state_attr('binary_sensor.red_alert', 'data').split(', ') }}