ISPConfig 3: Liste aller Mailkonten

hahni

Active Member
#1
Hallo zusammen,

ein Kunde von mir setzt ISPConfig 3 ein und möchte nun eine Liste (XLS, TXT o.ä.) mit allen auf diesem Server eingerichteten Mail-Konten haben. Wie kann ich ihm so eine Liste generieren oder ist das gar nicht vorgesehen?

Viele Grüße

Hahni
 
#3
Hi,

Ich habe dazu die /usr/local/ispconfig/server/server.php modifiziert. Damit wird die Liste automatisch aktualisiert sobald sich in dem Mailsettings was ändert.

ab Zeile 104:
PHP:
    $mare_logid = file("/usr/local/ispconfig/addons/2mailgate/lastid") ;
    $tmp_rec = $app->dbmaster->queryOneRecord("SELECT datalog_id from sys_datalog where dbtable like 'mail_%' order by datalog_id desc limit 1");
    $mare_globallogid = $tmp_rec['datalog_id'] ;
    if ($mare_globallogid>trim($mare_logid[0]))
    {
    $fp = fopen("/usr/local/ispconfig/addons/2mailgate/lastid",w) ;
    fputs($fp,$mare_globallogid) ;
    fclose($fp) ;
    include("/usr/local/ispconfig/addons/2mailgate/gen.php") ;
    }
Im 2mailgate/gen.php wird dann die Liste der aktuellen Adressen / Aliases / Weiterleitungen erstellt und auf die Mailgateways gepusht.
 

Till

Administrator
#4
Da hätte ich an Deiner Stelle aber lieber ein kleines plugin geschrieben und an die events für mail_domain_insert und mail_domain_update gebunden. Änderungen an der server.php werden ja bei jedem Update überschrieben, ein custom plugin aber nicht.
 

Till

Administrator
#6
Nein. Aber prinzipiell machst Du einfach eine Kopie eines der bestehenden mail_.. plugins im plugins-available Verzeichnis, benennst die Klasse um so dass sie dem Namen der neuen Plugindatei entspricht und fügst innen neuen code hinzu. in Der datei steht dre Name auch noch zweimal am anfang des codes, dort musst Du ihn auch ändern. Der Aufbau ist simpel, schau einfach mal in eines der Plugins rein.

Zum aktivieren erstellst Du einen symlink im pugins-enabled Verzeichnis der auf die Datei im plugins-available Verzeichnis zeigt.
 

Werbung