Files
worldmonitor/data/oref-threat-translations-he-en.json
Elie Habib 29925204fa feat(oref): Tzeva Adom as primary alert source + Hebrew translation dictionaries (#2863)
* feat(oref): add Tzeva Adom as primary alert source with Hebrew translations

Tzeva Adom API (api.tzevaadom.co.il/notifications) is now the primary
source for Israeli siren alerts. Free, no proxy needed, works from any
IP. OREF direct (via residential proxy) remains as fallback.

Includes Hebrew→English translation dictionaries:
- 1,305 Israeli localities from CBS data
- 28 threat type terms (missiles, rockets, drones, infiltration, etc.)

Alert titles and location names are now served in English.

Fallback chain: Tzeva Adom (primary) → OREF direct (proxy, fallback)

* fix(oref): add threat categorization + misplaced-city guard to Tzeva Adom

- categorizeOrefThreat() classifies Hebrew/English alerts into
  MISSILE/ROCKET/DRONE/MORTAR/INFILTRATION/EARTHQUAKE/TSUNAMI/HAZMAT
- Detects when API puts a city name in the threat field and moves it
  to locations (known API quirk)

* fix(oref): decouple siren poll loop from OREF proxy availability

SIREN_ALERTS_ENABLED is always true (Tzeva Adom needs no proxy).
OREF_PROXY_AVAILABLE gates only the OREF fallback path.
The poll loop now starts regardless of proxy config, using Tzeva Adom
as primary and OREF as fallback only when OREF_PROXY_AUTH is set.

Response payloads report configured: true so the panel activates.

* fix(oref): preserve error state when both siren sources fail

When Tzeva Adom returns null and OREF proxy is unavailable, return
early with lastError set instead of falling through and clearing
the error. Prevents a false green state in the panel when both
sources are down.

* fix(oref): rebuild response cache on source outage

Without calling orefPreSerializeResponses() in the failure branch,
the /oref/alerts handler keeps serving stale _alertsCache from the
last successful poll, masking the outage.
2026-04-09 12:39:34 +04:00

31 lines
1.1 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"ירי רקטות וטילים": "Rocket and Missile Fire",
"ירי רקטות": "Rocket Fire",
"ירי טילים": "Missile Fire",
"טיל בליסטי": "Ballistic Missile",
"טילים": "Missiles",
"רקטות": "Rockets",
"חדירת כלי טיס עוין": "Hostile Aircraft Intrusion",
"חדירת כטבם": "UAV Intrusion",
"כלי טיס עוין": "Hostile Aircraft",
"כטבם": "UAV/Drone",
"כטב\"ם": "UAV/Drone",
"חדירת מחבלים": "Terrorist Infiltration",
"חדירה": "Infiltration",
"רעידת אדמה": "Earthquake",
"צונמי": "Tsunami",
"חומרים מסוכנים": "Hazardous Materials",
"אירוע חומרים מסוכנים": "Hazmat Incident",
"אירוע רדיולוגי": "Radiological Event",
"התרעה": "Alert",
"התרעת צבע אדום": "Red Alert Warning",
"צבע אדום": "Red Alert",
"היכנסו למרחב המוגן": "Enter Protected Space",
"היכנסו למבנה": "Enter Building",
"טיל": "Missile",
"מטוס": "Aircraft",
"מסוק": "Helicopter",
"מל\"ט": "Drone",
"רחפן": "Drone"
}