Automatsch Email aus Texteditor versenden
Liebe IT Wissenden,
folgende Herausforderung:
Die Störmeldung der Gebäudeleittechnik, der von mir betreuten Immobilien, läuft derzeit eher schlecht als recht über Modem. Dieses wird in Kürze Geschichte sein.
Jede der Anlagen verfügt über einen Windows PC zur Anlagenvisualisierung. Die eigentliche Regelung machen die dezentralen SIEMENS Baugruppen. Sämtliche Störmeldungen werden auf dem PC in einem Texteditor niedergeschrieben. Mein Gedanke ist nun der, dass sobald eine Information in diesen Texteditor geschrieben wird ein beliebiges Emailprogramm ( Outlook ) diese Information als Email versendet. Den Informationen sind führend Sterne entsprechend der Wertigkeit vorangestellt (*; ; *). Genial wäre, wenn entsprechend der Wertigkeit bestimmte Gruppen realisiert werden können, welche informiert werden.
Frage: Geht das überhaupt? Kann jemand da ein entsprechendes Tool schreiben und welche Kosten entstehen?
Vielen Dank im Voraus.
Mit freundlichen Grüßen.
F. Morgenstern
folgende Herausforderung:
Die Störmeldung der Gebäudeleittechnik, der von mir betreuten Immobilien, läuft derzeit eher schlecht als recht über Modem. Dieses wird in Kürze Geschichte sein.
Jede der Anlagen verfügt über einen Windows PC zur Anlagenvisualisierung. Die eigentliche Regelung machen die dezentralen SIEMENS Baugruppen. Sämtliche Störmeldungen werden auf dem PC in einem Texteditor niedergeschrieben. Mein Gedanke ist nun der, dass sobald eine Information in diesen Texteditor geschrieben wird ein beliebiges Emailprogramm ( Outlook ) diese Information als Email versendet. Den Informationen sind führend Sterne entsprechend der Wertigkeit vorangestellt (*; ; *). Genial wäre, wenn entsprechend der Wertigkeit bestimmte Gruppen realisiert werden können, welche informiert werden.
Frage: Geht das überhaupt? Kann jemand da ein entsprechendes Tool schreiben und welche Kosten entstehen?
Vielen Dank im Voraus.
Mit freundlichen Grüßen.
F. Morgenstern
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 291825
Url: https://administrator.de/forum/automatsch-email-aus-texteditor-versenden-291825.html
Ausgedruckt am: 06.04.2025 um 18:04 Uhr
5 Kommentare
Neuester Kommentar
Ja.
Kann jemand da ein entsprechendes Tool schreiben ...
Ja.
... und welche Kosten entstehen?
kommt drauf an, wie die Gegebenheiten sind udn welcher "Comfort" benötigt wird. Pauschal würde ich da mindestens mit einer mannstunde rechnen, was mit ca. 80-100€ zu Buche schlagen würde. Wenn Du Glück hast, shüttelt Uwe/Colinardo Dir das Skript kostenlos aus dem Ärmel.
Eine einfache Möglichkeit wäre ein kleines skript zu schreiben, das periodisch überprüt, ob sich die Datei geändert hat und bei treffer eine Mail schickt. ür leute mir Erfahrung ist das in 5 Minuten gemacht, aber das hauptproblem dürfet eher sein, was bei Dir vorzufinden ist.
lks
Moin,
klar kann man sowas einfach machen... Java-Programm dafür is vermutlich weniger als 1h, wenns Konfigurierbar sein soll (z.B. mehrere Empfänger der Mail usw.) etwas mehr.
Allerdings: Ich würde mir aus Bequemlichkeit was anderes überlegen - die Datei nicht per Email versenden sondern irgendwo zentral ablegen (je nachdem wieviele du überwachen willst/sollst). Da dann ein Icinga rauf und schon habe ich ein komplettes Monitoring. Dauert auch nicht soviel länger, erlaubt aber dafür zu prüfen wie alle Systeme aussehen (auf einem Blick) und erlaubt auch eine History über die "Services". So siehst du z.B. leichter ob meinetwegen immer am Donnerstag um 3:00 morgens im Gebäude X das System Y eine (ggf. unkritische) Störung meldet...
Ist halt ne Frage wieviel Aufwand du dafür betreiben willst...
Schönen Gruß,
Mike
klar kann man sowas einfach machen... Java-Programm dafür is vermutlich weniger als 1h, wenns Konfigurierbar sein soll (z.B. mehrere Empfänger der Mail usw.) etwas mehr.
Allerdings: Ich würde mir aus Bequemlichkeit was anderes überlegen - die Datei nicht per Email versenden sondern irgendwo zentral ablegen (je nachdem wieviele du überwachen willst/sollst). Da dann ein Icinga rauf und schon habe ich ein komplettes Monitoring. Dauert auch nicht soviel länger, erlaubt aber dafür zu prüfen wie alle Systeme aussehen (auf einem Blick) und erlaubt auch eine History über die "Services". So siehst du z.B. leichter ob meinetwegen immer am Donnerstag um 3:00 morgens im Gebäude X das System Y eine (ggf. unkritische) Störung meldet...
Ist halt ne Frage wieviel Aufwand du dafür betreiben willst...
Schönen Gruß,
Mike
Hallo zusammen,
uaahhhhh gäähhhnn...
Hier mal ein Powershelll-Beispielscript anhand deiner wenigen Infos.
Das Skript überwacht eine Datei kontinuierlich auf hinzugekommene Änderungen einer beliebigen Textdatei. Dabei wird jede nicht leere Zeile am Anfang jeder Zeile ausgewertet ob sie mindestens mit einem Sternchen anfängt (*). Ist das der Fall wird die Mail-Adresse aus der Hashtable in Zeile 7 ermittelt. Hatte die Zeile keine Sternchen zu Beginn oder eine nicht in der Hashtable definierte Anzahl an Sternchen wird sie der UNKNOWN Kategorie zugeordnet und an die entsprechende Backup-Mailadresse verschickt welche ebenfalls in der Hashtable vermerkt ist.
Für den Fall das mehrere Alerts bei einem einzigen Update der Textdatei vorkommen die ein und die selbe Wertigkeit (z.B zwei Sterne besitzen) werden diese zu einer einzigen Mail zusammengefasst und verschickt.
Den SMTP-Server/Absenderadresse/Subject/Username/Passwort/SSL = JA/NEIN etc. sind in der Send-MailMessage-Zeile (Zeile 37) anzupassen.
Wer's gebrauchen kann, viel Spaß damit. Das Skript ist kostenlos verwendbar, nachträgliche individuelle Anpassungen jedoch kostenpflichtig.
Bei Interesse für Anpassungen einfach kurze PM.
Ich zieh mich derweil wieder in meine Höhle zurück
Frohes Neues schon mal
Grüße Uwe
Falls der Beitrag gefällt, seid so nett und unterstützt mich durch eine kleine Spende / If you like my contribution please support me and donate
Zitat von @Lochkartenstanzer:
Wenn Du Glück hast, shüttelt Uwe/Colinardo Dir das Skript kostenlos aus dem Ärmel.
Wer weckt mich da aus dem Winterschlaf Wenn Du Glück hast, shüttelt Uwe/Colinardo Dir das Skript kostenlos aus dem Ärmel.
Hier mal ein Powershelll-Beispielscript anhand deiner wenigen Infos.
Das Skript überwacht eine Datei kontinuierlich auf hinzugekommene Änderungen einer beliebigen Textdatei. Dabei wird jede nicht leere Zeile am Anfang jeder Zeile ausgewertet ob sie mindestens mit einem Sternchen anfängt (*). Ist das der Fall wird die Mail-Adresse aus der Hashtable in Zeile 7 ermittelt. Hatte die Zeile keine Sternchen zu Beginn oder eine nicht in der Hashtable definierte Anzahl an Sternchen wird sie der UNKNOWN Kategorie zugeordnet und an die entsprechende Backup-Mailadresse verschickt welche ebenfalls in der Hashtable vermerkt ist.
Für den Fall das mehrere Alerts bei einem einzigen Update der Textdatei vorkommen die ein und die selbe Wertigkeit (z.B zwei Sterne besitzen) werden diese zu einer einzigen Mail zusammengefasst und verschickt.
Den SMTP-Server/Absenderadresse/Subject/Username/Passwort/SSL = JA/NEIN etc. sind in der Send-MailMessage-Zeile (Zeile 37) anzupassen.
# Datei die auf Änderung überwacht werden soll
$statefile = 'C:\alerts\alertlog.txt'
# Datei speichert die Anzahl der Zeilen der Textdatei zwischen.
$posfile = 'C:\alerts\pos.txt'
# Mail-Gruppen nach Wertigkeit erstellen
$notify_groups = @{
'*' = 'low@domain.de'
'**' = 'mid@domain.de'
'***' = 'high@domain.de'
'UNKNOWN' = 'unknown@domain.de'
}
if (!(Test-Path $posfile)){Set-Content $posfile -Value "0" -Force}
if (Get-EventSubscriber -SourceIdentifier StateChange -EA SilentlyContinue) {Unregister-Event StateChange}
$fsw = New-Object IO.FileSystemWatcher ([System.IO.Path]::GetDirectoryName($statefile)), ([System.IO.Path]::GetFileName($statefile)) -Property @{IncludeSubdirectories = $false;NotifyFilter = [IO.NotifyFilters]'LastWrite'}
Register-ObjectEvent $fsw Changed -SourceIdentifier StateChange -Action {
$currentContent = [array](gc $statefile)
$pos = [double](gc $posfile)
if ($currentContent.length -gt $pos){
$currentContent[$pos..($currentContent.Length -1)] | ?{$_ -ne ""} | group {[regex]::match($_,'^(\*+)').Groups[1].Value} | %{
write-host "`n--> ALERT:`n $($_.Group)" -F Yellow
if ($_.Name -match '^(\*+)'){
$mail = $notify_groups[$Matches[1]]
if ($mail){
write-host "Benachrichtige Gruppe: $mail"
}else{
$mail = $notify_groups.UNKNOWN
}
}else{
$mail = $notify_groups.UNKNOWN
}
if ($mail -eq $notify_groups.UNKNOWN){
write-host "Fehlerkategorie wurde nicht erkannt. Meldung geht an: '$mail'" -F Red
}
Send-MailMessage -From 'sender@domain.de' -To $mail -Subject 'ALERT' -Body ($_.Group -join "`r`n") -SmtpServer 'smtp.server.de' -Credential (new-Object PSCredential('username',(ConvertTo-SecureString 'Passw0rd' -AsPlainText -Force))) -UseSsl
}
Set-Content $posfile -Value $currentContent.Length
}
} | out-null
cls
write-host "Waiting for Alerts..." -F Green
while($true){
sleep(1)
}
Bei Interesse für Anpassungen einfach kurze PM.
Ich zieh mich derweil wieder in meine Höhle zurück
Frohes Neues schon mal
Grüße Uwe
Falls der Beitrag gefällt, seid so nett und unterstützt mich durch eine kleine Spende / If you like my contribution please support me and donate
Hallo F.Morgenstern,
Pro PC eine Textdatei?
Mit PRTG (kostenlose Version gibt es) kannst Du die Textdateien überwachen und noch viel mehr...
Ist auch nicht kompliziert und gerade im Bereich Gebäudeleittechnik/Automatisierung eine zukunftssichere Lösung.
vG
LS
Sämtliche Störmeldungen werden auf dem PC in einem Texteditor niedergeschrieben
Wer schreibt denn da? Menschen, oder schreiben Programme in eine Textdatei?Pro PC eine Textdatei?
Mit PRTG (kostenlose Version gibt es) kannst Du die Textdateien überwachen und noch viel mehr...
Ist auch nicht kompliziert und gerade im Bereich Gebäudeleittechnik/Automatisierung eine zukunftssichere Lösung.
vG
LS