Logbuch Report/Benachrichtigung
-
Hallo zusammen,
in unserem Netzwerk wird täglich eine Jdisc Discovery durchgeführt und das ergebnis in der nacht zu I-Doit importiert.
Ich versuche zurzeit einen weg zu finden wie mein Kollege und ich täglich darüber benachrichtigt werden wen ein neues Objekt in i-doit angelegt oder bestimmte Kategorien geändert werden.Meine erste Idee war dies mit einem Report zu lösen welcher das Logbuch nach angelegten Objekten prüft. Ich komme jedoch nicht ganz mit den Konditionen klar. Ich habe eine einzige Kondition mit der Kategorie "Logbuch" und dem Attribut "Ereignis = [{Type}]: [{Name}] wurde angelegt"
Dieser Report gibt mir allerding nichts zurück obwohl in dem Logbuch solche enträge existieren.
Meine Erste Frage ist nun ob ich auf dem Richtigen Weg bin oder ob es eine geschicktere Möglichkeit dies zu realisieren.
Die Zweite Frage, was muss ich bei den Konditionen beachten bzw was mache ich Falschgrüße
Florian -
Auf unserer Online Demo haben wir ein paar exemplarische Reporte mit SQL dahinter, die kannst Du glaube ich ganz gut nutzen. Dabei wird gar nicht über das Logbuch gegangen sondern über eine sogenannte dynamische Property, die den Zeitpunkt der letzten Änderung ausgibt.
Beispiel: Changed objects last 24 hours
Wenn Du den Report in einer Benachrichtigung verarbeitest oder einfach per Cron exportierst und versendest, sollte das deine Anforderungen erfüllen.
-
Hallo Daniel,
vielen dank die Beispiele in der Online Demo haben mir geholfen und nach kleinen Anpassungen habe ich Jetzt einen Report der mir die Objekte liefert die ich haben will.
Das Automatische versenden der Benchrichtigung in einem Gewissen Zeitinvervall funktioniert auch super.Einzig und allein die Fomatierung in der E-Mail lässt noch zu wünschen übrig, gibt es hier etwas das ich tun kann damit die Tabelle so aussieht wie in der Konsole, besonders wenn es mal mehr Objekte werden kann es Schwer sein da was zu erkennen ?
Gruß
Florian -
Hi,
die Formatierung sieht deswegen in den meisten E-mail Clients komisch aus, da ein Monospace Font benötigt wird, um das sauber darzustellen. Tabellen mit Ascii Zeichen auszugeben ist halt etwas 80er (deswegen haben wir es ja auch implementiert =).
Du kannst also nur versuchen, deinem E-mail Client einen Monospace Font "unterzujubeln" oder Du benutzt die console.php Funktion, um einen Report über die Console als PDF zu exportieren und per E-Mail zu verschicken.
Dazu musst du Deinem Linux System natürlich das mailen beibringen (Im einfachsten Fall mit nullmailer beispielsweise) und dann einen Cron Job erstellen.Beispiel auf einem Debian, ausgehend davon, dass Mailing grundsätzlich eingerichtet ist):
apt install mailutils
um den Command Line Mailclient zu bekommen.
Achtung, Oneliner:
/var/www/html/console.php report-export --user=admin --password=admin --reportId=3 --exportPath=/var/www/html/temp --exportFileType=pdf && echo Mein Report | /usr/bin/mail -s "Mein Report" test@example.com -A /var/www/html/temp/test.pdf
Damit verschicke ich den Report mit der ID 3 und dem Titel "test" per E-Mail. Der Titel in i-doit ("test") ist gleichzeitig immer der Dateiname. Um das zu automatisieren müsstest Du den String natürlich in einen Crontab verpacken:
vi /etc/crontab
Und dann die Zeile (angepasst) ergänzen:
23 5 * * * www-data /var/www/html/console.php report-export --user=admin --password=admin --reportId=3 --exportPath=/var/www/html/temp --exportFileType=pdf && echo Mein Report | /usr/bin/mail -s "Mein Report" test@example.com -A /var/www/html/temp/test.pdf
Vielleicht hilft Dir das ja. Ansonsten checke ich jetzt mal, ob man die Benachrichtigungsvorlagen mit HTML Tags versehen kann - wenn das nicht geht stelle ich es mal als Feature Request ein. Das wird aber ggf. etwas dauern, bis das umgesetzt wird.
-
Nachtrag: HTML in den E-Mails geht so nicht, ich mach dann mal einen Feature Request daraus.
-
Vielen Dank für die Erstellung des Feature Requests.
Bis das in vielleicht in einer neuen Version umgesetzt wird probiere ich ihren Lösungsvorschlag aus.
Grüße
Findus