๐จ Alert Call - ืฉืืจืืช ืืชืจืขื ืืืคืื ืืช ืืคืืงืื ืืขืืจืฃ
March 22, 2026 ยท View on GitHub
ืฉืืจืืช ืฉืืืืื ืืืชืจืขืืช ืคืืงืื ืืขืืจืฃ ืืืื ืืืช ืืืชืงืฉืจ ืืืื ืืืืคืื ืืฉืืฉ ืืชืจืขื ืขื ืืจื ืจืงืืืช.
๐๏ธ ืืื ืื ืขืืื
- ืืืืื - ืืฉืืจืืช ืืืืง ืื 2 ืฉื ืืืช ืืช ื-API ืฉื ืคืืงืื ืืขืืจืฃ (real-time + history fallback)
- ืืืื - ืืฉืืืืื ืืชืจืขื ืืืฉื, ืืฉืืจืืช ืืกื ื ืืคื ืืืืืจืื ืฉืืืืจืช
- ืืชืงืฉืจ - ืืืฆืข ืฉืืื ืืืคืื ืืช ืืจื Twilio
- ืืฉืืืข - ืืฉืขืื ืื ืืฉืืื, ืืืฉืืขืช ืืืืขื ืงืืืืช ืืขืืจืืช ืขื ืฉื ืืืืืจ
๐ ืืจืืฉืืช ืืงืืืืืช
1. ืืฉืืื Twilio
- ืืืจืฉื ื-Twilio
- ืงืื Account SID ื-Auth Token ื-Console
- ืงื ื/ืงืื ืืกืคืจ ืืืคืื ืขื ืืืืืช ืฉืืืืช ืืืฆืืืช
2. Python 3.11+
๐ ืืชืงื ื
# 1. ืฉืืคืื ืืคืจืืืงื
git clone https://github.com/YOUR_USERNAME/alert_call.git
cd alert_call
# 2. ืืฆืืจืช ืกืืืื ืืืจืืืืืืช
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # Linux/Mac
# 3. ืืชืงื ืช ืชืืืืืช
pip install -r requirements.txt
# 4. ืืืืจืช ืงืืืฅ ืืืืจืืช
copy .env.example .env # Windows
# cp .env.example .env # Linux/Mac
# ืขืจืื ืืช ืงืืืฅ .env ืขื ืืคืจืืื ืฉืื
โ๏ธ ืืืืจืืช
ืขืจืื ืืช ืงืืืฅ .env:
| ืืฉืชื ื | ืชืืืืจ | ืืืืื |
|---|---|---|
TWILIO_ACCOUNT_SID | Account SID ื-Twilio | ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
TWILIO_AUTH_TOKEN | Auth Token ื-Twilio | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
TWILIO_PHONE_NUMBER | ืืกืคืจ Twilio ืฉืื | +12345678900 |
MY_PHONE_NUMBER | ืืกืคืจ ืืืืคืื ืฉืื | +972501234567 |
MONITORED_AREAS | ืืืืจืื ืื ืืืืจ (ืจืืง = ืืื) | ืชื ืืืื,ืจืืช ืื |
POLL_INTERVAL_SECONDS | ืชืืืจืืช ืืืืงื (ืฉื ืืืช) | 2 |
ALERT_COOLDOWN_SECONDS | ืืื ืืื ืืืื ืืื ืฉืืืืช | 60 |
โถ๏ธ ืืคืขืื
ืืคืขืื ืืงืืืืช
python main.py
ืืืืงืช ืฉืืื
python test_call.py
ืคืจืืกื ื-Azure (24/7)
โ ๏ธ ื-API ืฉื ืคืืงืื ืืขืืจืฃ ื ืืืฉ ืจืง ื-IP ืืฉืจืืื. ืืฉ ืืคืจืืก ืืืืืจ
israelcentral.
# 1. ืืชืืืจ ื-Azure
az login
# 2. ืขืจืื ืืช deploy-azure.ps1 ืขื ืืคืจืืื ืฉืื
# 3. ืืจืฅ ืืช ืกืงืจืืคื ืืคืจืืกื
.\deploy-azure.ps1
๐๏ธ ืืื ื ืืคืจืืืงื
alert_call/
โโโ main.py # ื ืงืืืช ืื ืืกื - ืืืืืื ืืจืืฉืืช
โโโ oref_monitor.py # ืืืืื ื ืืืืจ ืืชืจืขืืช (real-time + history fallback)
โโโ phone_caller.py # ืืืืื ืฉืืืืช ืืืคืื (Twilio)
โโโ config.py # ืืืืจืืช ืืืฉืชื ื ืกืืืื
โโโ requirements.txt # ืชืืืืืช Python
โโโ Dockerfile # ืื ืืืช Docker image
โโโ deploy-azure.ps1 # ืกืงืจืืคื ืคืจืืกื ื-Azure Container Instance
โโโ test_call.py # ืืืืงืช ืฉืืื
โโโ show_alerts.py # ืืฆืืช ืืชืจืขืืช ืืืื
โโโ .env.example # ืชืื ืืช ืืืืืจืืช
โโโ .env # ืืืืจืืช ืืืฉืืืช (ืื ื-git)
โโโ .gitignore
๐ฐ ืขืืืืืช
- Twilio: ~$0.014 ืืืงืช ืฉืืื + ~$1/ืืืืฉ ืืืกืคืจ ืืืคืื
- Azure Container Instance (ืืืคืฆืืื ืื): ~$0.25 CPU + ~$0.003/GB/ืฉืขื โ ืืื ืืืืจืื ืืืืืฉ
- ืกื"ื: ืืื ืืืืจืื ืืืืืื ืืืืืฉ ืขื ืฉืืืืฉ ืจืืื
โ ๏ธ ืืขืจืืช ืืฉืืืืช
- IP ืืฉืจืืื: ื-API ืฉื ืคืืงืื ืืขืืจืฃ ืืืกื ืืืฉื ื-IP ืฉืืื ื ืืฉืจืืื (403). ืื ืืชื ืืจืืฅ ืืขื ื, ืืฉืชืืฉ ืืืืืจ
israelcentral - BOM Response: ื-API ืืืืืจ BOM (Byte Order Mark) ืืฉืืื ืืชืจืขืืช - ืืฉืืจืืช ืืืคื ืืื
- History Fallback: ืื ืืกืฃ ื-real-time API, ืืฉืืจืืช ืืืืง ืื ืืช ื-History API ืื 30 ืฉื ืืืช ืืืืืื
- ืืืื ืืช: ืืฉืืจืืช ืชืืื ืืืืื ืืช ื-API ืฉื ืคืืงืื ืืขืืจืฃ ืืืืืืืจ ืืื ืืจื ื
- ืื ืชืืืืฃ: ืฉืืจืืช ืื ืืื ื ืชืืืืฃ ืืืคืืืงืฆืืืช ืคืืงืื ืืขืืจืฃ ืืจืฉืืืช!