📋 ΔΕΔΔΗΕ Outages API - Τεκμηρίωση

Version: 2.1 | Base URL: http://localhost:5000

👨‍💻 Δημιουργός (Creator): Bairaktaris Emmanuel
📅 Ημερομηνία Δημιουργίας: 2026
© Copyright: All Rights Reserved

1. Documentation & Web Interface

EndpointΜέθοδοςΠεριγραφή
/ NEWGETHTML τεκμηρίωση (αυτή η σελίδα)
/docs NEWGETΑνακατεύθυνση στην τεκμηρίωση
/documentation.cssGETStylesheet της τεκμηρίωσης (αρχείο documentation.css)
/api/municipalitiesGETJSON νομών/δήμων (για τη φόρμα προβολής παρακάτω)
/api/outages/previewGETΆμεση προβολή διακοπών από ΔΕΔΔΗΕ (?prefecture_id=&municipality_id=) — χωρίς αποθήκευση

2. Προβολή διακοπών ανά νομό / δήμο (μόνο εμφάνιση)

Εδώ επιλέγετε οποιονδήποτε νομό και δήμο για να δείτε τι επιστρέφει η ιστοσελίδα της ΔΕΔΔΗΕ αυτή τη στιγμή. Τα αποτελέσματα εμφανίζονται ως πίνακας· δεν αποθηκεύονται στη βάση της εφαρμογής και δεν επηρεάζουν τις ειδοποιήσεις Telegram.

Φόρτωση ρυθμίσεων εφαρμογής…

Η μόνιμη παρακολούθηση (scheduler, Telegram, SQLite) ορίζεται στο αρχείο app_config.json — όχι από αυτή τη φόρμα.

3. REST API Endpoints

ΒΑΣΙΚΑ ENDPOINTS

EndpointΜέθοδοςΠεριγραφή
/api/outagesGETΌλες οι ενεργές διακοπές (JSON)
/api/outages/latest?limit=10GETΟι τελευταίες Ν διακοπές
/api/outages/checkGETΆμεσος έλεγχος για νέες διακοπές
/api/outages/export/csvGETCSV export (όλες)
/api/outages/export/csv?days=30GETCSV export (τελευταίες 30 ημέρες)
/api/outages/statsGETΣτατιστικά
/api/statusGETStatus server

ΠΑΡΑΔΕΙΓΜΑΤΑ ΚΛΗΣΕΩΝ

GET / (Documentation)
curl http://localhost:5000/
Ανοίγει αυτή την HTML σελίδα
GET /api/outages
curl http://localhost:5000/api/outages
GET /api/outages/export/csv?days=30
curl http://localhost:5000/api/outages/export/csv?days=30 -o outages.csv
GET /api/status
curl http://localhost:5000/api/status

4. Λειτουργίες Telegram

5. Λειτουργίες CSV/Excel

6. Scheduler Tasks UPDATED

Χρονική στιγμήΕνέργεια
Κάθε N λεπτά (ρύθμιση: check_interval_minutes στο app_config.json, προεπιλογή 60)Έλεγχος για νέες διακοπές
Ίδιο διάστημαΈλεγχος για ολοκληρωμένες διακοπές
Κάθε ΚυριακήΕκκαθάριση παλιών (>60 ημέρες)
1η κάθε μήνα, 10:00 π.μ.Μηνιαία αναφορά

Το διάστημα αλλάζει από το app_config.json (προηγούμενη προεπιλογή: 60 λεπτά).

7. Database Structure

8. Παράδειγμα Response

GET /api/outages
[
  {
    "id": 1,
    "from_date": "2026-04-10 08:00:00",
    "to_date": "2026-04-10 14:00:00",
    "municipality": "ΔΗΜΟΣ ΚΥΜΗΣ ΑΛΙΒΕΡΙΟΥ",
    "area": "Οδός Εθνικής Αντιστάσεως",
    "note_number": "2026-1234",
    "purpose": "Αναβάθμιση δικτύου",
    "detected_at": "2026-04-09T10:30:00"
  }
]

9. Εγκατάσταση & Εκτέλεση

# 1. Εγκατάσταση dependencies
pip install requests beautifulsoup4 flask flask-cors schedule

# 2. Εκτέλεση
python outages_api_clean.py

# 3. Έλεγχος λειτουργίας
# Άνοιξε browser: http://localhost:5000/

10. Ρύθμιση Windows Server (Startup)

# Μέθοδος 1: Task Scheduler
- Άνοιξε Task Scheduler
- Δημιούργησε νέα εργασία "DEDDIE Outages Monitor"
- Trigger: "When the computer starts"
- Action: python.exe με arguments outages_api_clean.py

# Μέθοδος 2: Windows Service (NSSM)
nssm install DEDDIEOutagesMonitor
nssm start DEDDIEOutagesMonitor

11. Troubleshooting

12. Άδεια Χρήσης (License)