Internal Flask app that monitors the epi-helpdesk.zammad.com tickets via the Zammad API, deployable as a systemd service behind Apache under /episupport. Features: - Poller: session-login API sync, snapshot diff to detect agent changes (status, owner, priority, closures, new replies); email notifications - Dashboard: ticket overview with sorting, "not closed" filter and highlighting of tickets with unconfirmed changes; per-item and bulk "mark as read" - Analytics: KPIs, response/resolution times, monthly SVG trend chart, distributions (status/priority/group/agent), Excel export - Conversation view: full per-ticket thread cached in the DB (avoids proxy timeouts), inline image attachments, safe HTML-to-text rendering - Write actions: reply to tickets and create new tickets with a confirmation step and attachment upload (incl. clipboard paste); self-triggered actions are synced back so they aren't flagged as changes - Local timezone display (Europe/Berlin) for all timestamps Includes deploy tooling: setup.sh, systemd units and Apache config. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
23 lines
895 B
Plaintext
23 lines
895 B
Plaintext
# EPI-Support Monitor – Apache-Einbindung unter /episupport
|
||
#
|
||
# Diese Datei wird nach /etc/apache2/conf-available/episupport.conf kopiert
|
||
# und mit "a2enconf episupport" aktiviert. Sie hängt sich in den bestehenden
|
||
# Apache-VirtualHost (srhnweb) ein – ein eigener VHost ist nicht nötig.
|
||
#
|
||
# Voraussetzung: Module proxy, proxy_http, headers aktiv
|
||
# a2enmod proxy proxy_http headers
|
||
|
||
<Location /episupport>
|
||
ProxyPreserveHost On
|
||
ProxyPass http://127.0.0.1:8071/ timeout=120
|
||
ProxyPassReverse http://127.0.0.1:8071/
|
||
|
||
# Damit die App ihre Links korrekt mit /episupport-Präfix erzeugt
|
||
RequestHeader set X-Forwarded-Prefix "/episupport"
|
||
RequestHeader set X-Forwarded-Proto "https" env=HTTPS
|
||
|
||
# Optional: Zugriff aufs interne Netz beschränken (anpassen/auskommentieren)
|
||
# Require ip 192.168.0.0/16 10.0.0.0/8 127.0.0.1
|
||
Require all granted
|
||
</Location>
|