Das Notes Forum

Lotus Notes / Domino 9 => ND9: Entwicklung => Thema gestartet von: SD am 29.06.20 - 12:57:06



Titel: Per Formelsprache an HTML-Quelltext einer Mail rankommen?
Beitrag von: SD am 29.06.20 - 12:57:06
Guten Tag allerseits!

Ich frage mich, ob es zufällig einen Trick gibt, mit Formelsprache an den HTML-Quelltext einer Mail ranzukommen?

Die Mail hat einen Multi-Part MIME Body.

1. Part ist Content-Type: multipart/alternative;
2. Part ist Content-Type: text/plain;
3. Part ist Content-Type: text/html;

Sowohl @Text als auch @Abstract geben mir nur den zweiten Teil zurück. Was mich interessiert, steht aber im dritten Teil (per ScanEZ z.B. kann ich den Text auslesen). Speziell geht es darum per @Contains Links in HTML-Mails zu erkennen, was ich gerne für eine iQ.Suite-Formelregel benutzen würde.

Ich bräuchte wohl im Grunde sowas wie MIMEEntity.ContentAsText, nur halt als Formel.

(By the way: gibt es einen Trick hier im Forum nach "@Text" zu suchen? Bekomme leider alles, was "text" enthält.)

Gruß
Stefan


Titel: Re: Per Formelsprache an HTML-Quelltext einer Mail rankommen?
Beitrag von: Riccardo Virzi am 30.06.20 - 15:44:40
Das ist meines Wissens nicht mit der Formel Sprache möglich.

Das Problem: die Informationen stehen im Feld Body. Wenn eine Mail vom Notes Client kommt und das Feld Body keinen MIME Inhalt hat, sondern ein Notes Richtext Format ist, gibt es nur ein einziges Feld mit dem Namen Body. Wird die max. Größe des Richtextfelds überschritten, kann es aber auch in dem Fall mehrere Body Felder geben.
Bei Mails im MIME Format sieht das anders aus: pro MIME Abschnitt existiert mindestens ein separates Feld mit dem Namen Body. Mit der Formel Sprache können wir nicht steuern, welches der Felder wir genau benutzen möchten. Wie die Befehle @Text und @Abstract entscheiden, welches Feld verwendet wird, kann ich leider nicht sagen. Mir ist auch kein Formel Befehl bekannt, der das korrekt auswertet.

Mit Lotusscript ist es möglich, auf jedes einzelne Feld (auch doppelte) zuzugreifen. Oder eben über die Methode ContentAsText.