Skip to main content

alarm aux

Hakee annetusta sähköpostilaatikosta hälytysviestejä osaksi Actiweb järjestelmää

 

Käyttöönotto

Paketti asennetaan kopioimalla src -hakemisto aplikaatioksi. Tarkemmat tekniset ohjeet löytyvät app.info -tiedostosta. 

Tämä aplikaatio on tarkoitettu yleiseksi ratkaisuksi, ja siksi se vaatii kohdekohtaisen parsintaskriptin polkuun "/opt/slc/bin/handlers/{SOURCE}.py". "{SOURCE}:{EMAIL}" -pari , jossa {EMAIL} on hälytysten lähettäjän osoite tai sen osa, lisätään alarmsaux.config -tiedoston kenttään "handlers". Tätä tiedostoa pääsee muokkaamaan myös sivulla "system/alarms_aux". 

Edellä mainittuun tiedostoon konfiguroidaan myös sähköpostin IMAP kirjautumisasetukset. 

Kohdekohtaisessa parsintaskriptissä tulee olla parse -niminen funktio, jolle annetaan parametreinä sähköpostin sisältö, ja ulkoisten hälytysten tiedostopolku. Skriptin tulee lisätä polkuun kuvaava alakansio ja tallentaa viestin sisällöstä parsittu hälytys sinne tiedostona. Sovellus vaatii riittävän uuden bitware version, koska ulkoiset hälytykset luetaan libalarmsaux.lua tiedoston funktioilla. "Parse" palauttaa tekstimuodossa rivin, joka tallennetaan tapahtumalogiin. 

 

Käyttö

 

Kaikki konfiguroituun sähköpostiosoitteeseen lähetetyt viestit haetaan ulkoisiksi hälytyksiksi järjestelmään. Ulkopuoliset hälytykset eivät tallennu tietokantaan, vaan JSON objekteina omiin tiedostoihinsa /opt/slc/data/alarms/{SOURCE}. Mikäli lähettäjän sähköpostiosoite ei vastaa yhtäkään parsintaskriptiä(handlers), tallennetaan se parsimattomana alahakemistoon "default".

Ulkoiset hälytykset näkyvät hälytyslistassa ja -indikaattorissa muuten normaalisti, mutta listassa niitä ei voi kuitata, vaan poistaa. Poistaminen tarkoittaa tiedoston poistamista levyltä, eikä hälytyksen lähettäjälle ilmoteta kuittauksesta. Toiminto on rakennettu sillä oletuksella, että hälytysvalvomoon lähetetään poistokomento, kun tilanne on normalisoitunut, ja hälytyslistan "poista" -nappi on virhetilanteita varten. Ulkoiselle hälytykselle voi antaa "alarmGroup" -kentän, joka näkyy listassa, mutta jota ei voi linkittää tietokannan "alarmGroup" -tyyppisii pisteisiin.