Import Tool

Από IANIC WiKi
Μετάβαση στην πλοήγηση Πήδηση στην αναζήτηση

FTP συγκεντρωτών

Σε κάθε έργο δίνουμε ένα FTP Account που αντιστοιχεί σε έναν FTP folder. Οι συγκεντρωτές αρχικά θα πρέπει να σεταριστούν ώστε να στέλνουν τα αρχεία σε αυτόν τον φάκελο. Συχνά κατά το test σύνδεσης αφήνουν κάποια αρχεία TEST.

Κάθε Χ ώρα οι συγκεντρωτές ανοίγουν μια FTP συνεδρία και αποστέλνουν αρχεία CSV. τα αρχεία CSV περιέχουν μετρήσεις μετρητών. Κάθε συγκεντρωτής έχει την δική του γραμμογράφηση και για αυτό κάθε τύπος συγκεντρωτή πρέπει να έχει δικό του FTP Account ανά τύπο ανά έργο, ώστε να γίνεται σωστά η γραμμογράφηση και το ματσάρισμα των στηλών.

Κάθε γραμμή των αρχείων περιέχει μία μέτρηση. Εξαιρείται η πρώτη γραμμή που περιέχει τις επικεφαλίδες. Συνήθως οι στάνταρ στήλες είναι ο κωδικός του υδρομέτρου, η ημερομηνία και ώρα μέτρησης (μπορεί δηλαδή να είναι διαφορετική από την αποστολή του αρχείου) και η τιμή κατάμετρησης.

Το όνομα του αρχείου αποτελείται από τον μοναδικό κωδικό του συγκεντρωτή, τον τύπο της καταγραφής αρχείου RDS/RAW και την ημερομηνία. Π.χ.: GTW_0479B7AF9EA6_RAW_20220302_030000.csv

Η συνήθης διαδικασία εισαγωγής μετρήσεων από συστήματα όπως είναι το SmartVille, είναι:

  • Κάθε 1 ώρα γίνεται ένα FTP listing και επιλέγονται τα CSV αρχεία
  • Ανά CSV αρχείο γίνεται η ανάγνωση γραμμή προς γραμμή και
  • Ανάλογα το ματσάρισμα δημιουργείται η εγγραφή στις μετρήσεις
  • Όταν ολοκληρωθεί η διαδικασία το αρχείο μεταφέρεται στον φάκελο READ

στην περίπτωση που μέσα στον φάκελο READ υπάρχει άλλος φάκελος READ σημαίνει πως μια 2η μηχανή όπως το SmartVille σαρώνει και αποθηκεύει μετρήσεις από τον συγκεκριμένο FTP.

CSV από FTP ασυγκέντρωτων Sensus

Για να ξεκινήσει η διαδικασία σάρωσης θα πρέπει να δημιουργηθεί μια νέα ρύθμιση CSV όπου θα είναι συμπληρωμένα οι FTP ρυθμίσεις, μία επιλογή στο ρυθμίσεις επανάληψης και το ματσάρισμα των πεδίων:

{​​​​

   "code": "METER_ADDRESS",
   "READING_DATE": "READING_DATE",
   "LEAK_ALR": "LEAK_ALR",
   "collector_id": "collector_id",
   "BACK_FLOW_ALR": "BACK_FLOW_ALR",
   "EMPTY_PIPE_ALR": "EMPTY_PIPE_ALR",
   "BROKEN_PIPE_ALR": "BROKEN_PIPE_ALR",
   "LOW_BATTERY_ALR": "LOW_BATTERY_ALR",
   "METER_ERROR_ALR": "METER_ERROR_ALR",
   "READING_VALUE_L": "READING_VALUE_L",
   "SPECIFIC_ERROR_ALR": "SPECIFIC_ERROR_ALR",
   "MAGNETIC_TAMPER_ALR": "MAGNETIC_TAMPER_ALR"

}​​​​​​​​​​​

  • όπου collector_id το πρόγραμμα υπολογίζει μόνο του από το όνομα του αρχείο τον κωδικό του συγκεντρωτή.