Mar 27 2014

Office365: HTML Signaturen mit Bilder für OWA Benutzer

veröffentlicht in Kategorie Office365  

Kleines Tutorial für alle OWA Nutzer, auch die im SmallBusiness Tarif ohne Disclaimer / Transportregeln. So geht es – mit der Powershell:

Wer schonmal versucht hat, über Outlook WebAccess > Zahnrad > Optionen > Einstellung > Mail eine Signatur in HTML Format mit Bild anzulegen, dürfte ähnlich wie ich der Verzweiflung nahe gewesen sein.

BIlder? HTML? Nö.. wi schraiben zwar das JAhr 2014, aber bei MS ticken die Uhren langsamer..

Bilder? HTML? Nö.. wir schreiben zwar das Jahr 2014, aber bei MS ticken die Uhren langsamer..

Es gibt dutzende Anleitungen, die besagen, man solle sich selbst ne Mail schicken und da den IMG Code raus- und in das Feld da reinkopieren. Und zu jeder dieser Anleitungen gibt es mindestens doppelt soviele Kommentare, dass die Anleitung nicht funktioniert. Langer Rede kurzer Sinn: das hat bei mir bisher immer nur mit GIF Dateien funktioniert, mit nichts anderem. Aber wer kein GIF nutzen kann oder will, braucht ne andere Lösung.

Besitzer eines Medium Business-, Große Unternehmen- und Enterprise Tarifes haben zusätzlich die Möglichkeit, als Signaturersatz einen sogenannten Disclaimer als Transportregel anzulegen, da wird HTML klaglos genommen, aber auch für diese könnte dieser Ansatz hier hilfreich sein. Schaut einfach mal, was Euch am Besten passt. Besitzer eines SmallBUsiness oder der alten P-PLäne haben keinen Zugriff auf Transportregeln, für die gibts keine andere Wahl.

Schritt 1: Alle Bilder auf einen öffentlich zugänglichen Webserver ablegen.

Die Bilder müssen in einem der Internet tauglichen Grafikformat vorliegen. JPG, GIF, PNG sind wohl die geläufigsten.

Die Bilder müssen auf einen jederzeit von der Öffentlichkeit ohne Anmeldung erreichbaren Webserver abgelegt werden, im Zweifel ist das ein Bilderhoster, ein Webspace irgendwo oder eben die eigene Homepage.

Hier ist mein Logo:

logo-owa

logo-owa.jpg – 9,5 KB

Jaja, ich weiss, hübsch ist anders. Ich bin Programmierer, kein Designer – merkt man das? ;-)

Das lege ich mir nun mit einem FTP Programm oder welche Methode zum Dateiupload Eure Seite auch immer vorsieht in den öffentlichen Bilderordner meiner Webseite und merke mir die URL des Bildes: in meinem Fall ist die URL: http://www.mountainprophet.de/images/logo-owa.jpg . Wenn ich im Browser http://www.mountainprophet.de/images/logo-owa.jpg in die URL-Zeile tippe, muss mein Bild angezeigt werden, jederzeit, egal von wo ich mich befinde, tut es das nicht, stimmt was nicht und die Signatur wird nicht funktionieren.

Achtet auch auf:

  • groß-Kleinschreibung – am besten alles klein schreiben
  • keine Sonderzeichen, Leerzeichen, Umlaute oder sonstige Scherze im Dateinamen: aA-zZ0-9 – sonst nix.

Schritt 2: Erstellen des HTML Quellcodes der Signatur

Haltet die Quellcodes simpel, viele eMail Programmen unterstützen nur ein kleines Subset der HTML Befehle. “HTML für eMail Clients schreiben” ist eine meiner meist gehassten Tätigkeiten, weil ständig irgendwo was nicht funktioniert. Gutes altes HTML3 mit Tabellen ohne Schnickschnack ist meistens OK. Zur Not hilft Euch Euer Webmensch, der kann sowas hoffentlich noch im Schlaf.

Ein einfaches Beispiel für eine HTML Signatur mit Bild:

<hr><img src=””http://www.mountainprophet.de/images/logo-owa.jpg””><br><br><b>Max Muster</b><br>Musterstrasse 28<br>123456 Musterstadt

  • Bei <img src=””…””> muss exakt die Bild-URL aus Schritt 1 eingefügt werden, ist das nicht exakt genau gleich, dann geht es nicht.
  • Das ist übrigens kein Tippfehler mit den doppelt vorhandenen Anführungszeichen <img src=””http://www.mountainprophet.de/images/logo-owa.jpg””> die Powershell will das so, da wir das nachher in einem String übergeben.  (zwei “” nacheinander ist eine Art, wie man in der Powershell Strings “escapen” kann, mehr Infos dazu und andere Escape Methoden in der Powershell findet ihr hier: http://ss64.com/ps/syntax-esc.html )
  • Macht den Quellcode nicht zu lang, Office365 hat ein sehr knapp bemessenens Zeichenlimit für die Länge des Signaturfeldes!
  • Achtung: wenn ihr Code hier aus dem Blog rauskopiert, denkt dran, dass WordPress die Anführungszeichen kaputt macht, das müsst ihr dann noch reparieren, bevor die Codestücke funktionieren

Schritt 3: Vorbereiten des Powershell “Befehls”

Jetzt nehmen wir unseren HTML Quellcode von Schritt 2 und machen da einen Powershell Befehl draus, am besten in ner kleinen Textdatei, damit wir den nachher nur noch per Copy & Paste in die Powershell einsetzen müssen. Das Cmdlet zum Setzen der Signatur lautet:

Set-MailboxMessageConfiguration

siehe Doku im TechNetAls zwingenden Parameter müssen wir angeben, welche Mailbox wir denn mit der Signatur beglücken wollen, das tun wir über den -Identity Parameter gefolgt von der eMail Adresse für die wir die Signatur setzen möchten. Beispiel:

-Identity max.muster@meinefirma.de

Gleichzeitig sollten wir die Signatur auch grad noch einschalten, das geht mit dem Parameter

-AutoAddSignature $True

Jetzt kommts, jetzt müssen wir im Parameter -SignatureHTML unseren Quellcode verpacken. Das geht so

-SignatureHtml “mein quellcode aus Schritt 2 hier”

Achtet auf die Anführungszeichen, hier nutzen wir ganz normal die ” Anführungszeichen, im Quellcode aus Schritt 2 müssen die jeweils doppelte vergeben sein <img src=””url.de/xyz.jp””>!

Vollständig mit dem Quellcode aus Schritt 2 sieht der Befehl nun so aus:

Set-MailboxMessageConfiguration -Identity max.muster@meinefirma.de -AutoAddSignature $True -SignatureHtml “<hr><img src=””http://www.mountainprophet.de/images/logo-owa.jpg””><br><br><b>Max Muster</b><br>Musterstrasse 28<br>123456 Musterstadt”

 

Achtung: wenn ihr das per Copy&Paste hier rauskopiert, dann müsst ihr das erst in eine Textdatei kopieren und dort die Anführungszeichen korrigieren. WordPress macht aus dem beim Programmieren üblicherweise benutzten Hochkommas, Anführungszeichen, Inch Zeichen, etc nämlich automatisch und ungefragt die (typografischen) Anführungszeichen und die funktionieren nicht korrekt in der Powershell. Also hier rauskopieren, Anführszeichen reparieren, dann gehts in Powershell.

Falsche Anführungszeichen aus WordPress rauskopiert

Falsche Anführungszeichen aus WordPress rauskopiert (Klick macht groß)

Schritt 4: Verbinden mit Exchange & Ausführen des Befehls aus Schritt 3

Hier meine Anleitung zur Verbindung mit Powershell zu Exchange. Nutzt einen Office365 Nutzer mit Adminrechten für die Powershell Verbindung. Sobald die Verbindung steht und die Session importiert wurde, sieht das in der Powershell dann so aus:

Verbindung zu Exchange steht und Session ist importiert

Verbindung zu Exchange steht und Session ist importiert

Nun kopiert Euch den Befehl aus Schritt 3 in die Zwischenablage (Strg-C) und klickt dann mit der rechten Maustaste ins Powershell Fenster, um den Befehl einzufügen:

Nun einfach Return drücken und nach ein paar Sekunden erscheint wieder der Prompt mit dem blinken Cursor, das wars. Mehr passiert da gar nicht. Zur Kontrolle können wir das ganze per

Get-MailboxMessageConfiguration max.muster@meinefirma.de 

prüfen, das schaut dann so aus:

Kontrolle ob alles geklappt hat

Kontrolle ob alles geklappt hat

Die <HTML> und <BODY> Tags fügt Exchange selber hinzu…

Wenn wir uns nun neu im OWA anmelden, sollte unsere HTML Signatur inkl. Bild bereit stehen:

Ich sagte ja, hübsch ist anders.. aber: es funktioniert!

Ich sagte ja, hübsch ist anders.. aber: es funktioniert!

Wie gehts nun weiter?

Das hier ist ja nur ein ganz simples Beispiel zu Demonstration, wie sowas geht. Wer nur ne Handvoll User hat, der kommt vielleicht so schon zurecht. Richtig sexy wird das, wenn wir nun unser Powershell Script so richtig aufmotzen,

.

12 responses so far

12 Responses to “Office365: HTML Signaturen mit Bilder für OWA Benutzer”

  1. Lukason 09 May 2014 at 08:04

    Was kann denn das Problem sein, wenn die Bild-URL nicht übernommen wird? Wenn ich also am Schluss mit Get-MailboxMessageConfiguration überprüfen will, steht bei img src nur “” – auch wenn ich deinen code 1:1 übernehme…?

  2. adminon 09 May 2014 at 08:42

    Lukas,

    er übernimmt also alles, nur das zwischen den 2 ” im IMG Tag nicht? Den Rest nimmt er? Der Pfad zum Bild stimmt? Hmmm mus sich mal testen, schick mir doch mal deine eMail übers Kontaktformular, da redet sichs einfacher..

  3. Lukason 09 May 2014 at 09:58

    ja alles ausser das zwischen den 2 ”
    pfad zum bild stimmt und enthält keine sonderzeichen

    meine email: thx!

  4. adminon 10 May 2014 at 05:43

    Ok, melde mich im Laufe des Tages an die angegbene eMail. Danke!

  5. adminon 10 May 2014 at 14:13

    Ok, das Problem ist gefunden, mein Beispielcode ist kaputt.

    Ein String in einfachen Hochkommas darf heute keine unescapten (wasn Wort) Doppelten-Anführungszeichen mehr enthalten, statt dessen muss der String selbst doppelte Anführungszeichen bekommen und dann müssen die ” im IMG Source dann zweimal hintereinander getippt werden zum escapen. Ich red hier glaub grad völligen Kauderwelsch, oder?

    Das entscheidende sind die Anführungsstriche, hier, so gehts aktuell:

    SignatureHTML “…< img src=""http://www.mountainprophet.de/images/logo-owa.jpg"" > … ”

    String=”mit “”…”” eingebettet”

    So, und nun muss ich die ganzen Beispiele oben aktualisieren.. ;-)

  6. adminon 10 May 2014 at 14:30

    Tutorial oben aktualisert und getestet, bei mir gehts nun wieder..

  7. lukason 10 May 2014 at 18:30

    cool, danke tausendmal!!

  8. adminon 10 May 2014 at 18:31

    Immer gerne & danke fürs melden.. Das hätte ich nie gemerkt, dass das nimmer tut.

  9. Marieon 07 Aug 2014 at 15:59

    Hey,

    ich hab das gleiche Problem wie Lukas und das trotz doppelter Anführungszeichen um den Link.
    Hast du noch eine Idee?

  10. adminon 07 Aug 2014 at 16:53

    Marie,

    kann es sein, dass du das per Copy&Paste von da oben kopiert hast? Wenn ja, dann liegts an meinem WordPress, das macht aus den Anführungszeichen immer die “geschwungenen Anführungszeichen”, die sehen zwar hübsch aus, aber funktionieren in der Powershell nicht.

    Ich muss mir mal was überlegen, wie ich das abstellen kann. Derweil: kopiere den Text erst mal in eine Textdatei und mach dann die richtigen Anführungszeichen rein, dann sollte der Beispielcode gehen. Ich hab ihn zumindest gerade eben so getestet und es hat funktioniert. Ich hab oben mal noch nen Hinweis ergänzt. Wenns immer noch nicht geht, sag Bescheid.

    PS: hier eine Übersicht über andere Arten des “escapens” in der Powershell: http://ss64.com/ps/syntax-esc.html

  11. Pamelaon 21 Oct 2016 at 21:45

    Hallo Bergprophet,
    kann man dieses Problem (jpg in OWA-Signatur) auch ohne Office365 lösen? Ich habe dieses nämlich nicht und gerade festgestellt, dass es etwas kosten würde, das zu kaufen – worauf ich gern verzichtete…

    Dementsprechend musste ich bei dem Punkt 4, “Verbinden mit Exchange” aufgeben.

    Wahrscheinlich geht aus meiner Frage bereits ehrvor, dass ich keinen blassen Schimmer von der Materie der Skripte mitbringe… Ich würd gern einfach meine Signatur mit einem extra dafür designten Bildchen aufpeppen und verzweifle darüber, dass dies nicht geht…

    btw, (auch wenn du nicht antwortest!): cooler Blog! Scheint ja gemütlich bei Euch zu sein… Da möchte ich auch gleich männlich und zu alt sein und diese symphatische Amerikanerin haben. Leider bin ich weiblich, mittelmäßig alt und wohne mit Familie am Meer… Mist! :)

  12. adminon 22 Oct 2016 at 01:17

    Moin Pamela,

    Meer klingt aber auch nicht schlecht :-)

    Die Anleitung ist speziell für das Webinterface (“OWA”) von Exchange gemünzt. Mir ist leider nicht ganz klar, wie sich das auf Dein Mailprogramm umstricken lässt.

    Nutzt Du Outlook als eMail Programm?

    PS: Nur wegen JPG in der Signatur würde sich ein Office365 auch nicht lohnen. Das muss auch anders gehen.

Comments RSS

Kommentar dazu? (Geht anonym und ganz ohne Anmeldung)