Integromat - E-Mails aus Datenbank senden, mit Anhängen

L

Ich habe Importiert, die Anhänge (.pdf + Bilder) befinden sich nicht in Bildfeldern sondern im Anhang.

 

let vAPIKey := "Bearer A-P-I";
let vWebhook := "https://hook.integromat.com/......";
let vRecordID := text(number(this));
let vAttachments := files(this);
let data := {
APIKEY: vAPIKey,
TeamID: teamId(),
DatabaseID: databaseId(),
TableID: tableId("Protokoll"),
RecordID: vRecordID,
vMailAn: Mail,
vBetreff: "Protokoll über illegale Müllentsorgung " + ProtokollnummerText,
vTextPlain: ProtokollnummerText,
attachments: vAttachments
};
do as server
http("POST", vWebhook, {
'Content-Type': "application/json"
}, data)
end

U

Hallo Lars
Die Zeile attachments: vAttachments verstehe ich nicht.
Die Anhänge werden nicht über den Webhook übertragen. (Das kann Ninox nicht!!!)
Der http-Request in Integromat zieht sich die Namen der im Anhang gespeicherten Files des Records.
Man benötigt den Iterator und Aggregator in Integromat wenn man mehr als einen Anhang mitsenden möchte für jeden Anhang nicht eine eigene eMail erzeugt.
Der Iterator nimmt sich die vomm HTTP-Node geholten Attachments-Namen und splittet sie für den nachfolgenden Ninox-Node auf.
Dieser holt sich dann die Anhänge einzeln von Ninox.
Der Aggregator führt diese wieder zu einem Strom zusammen, damit diese in einer Mail versandt werden können.
Ich gehe davon aus, das du die Variable im Itterator verändert hast und es deshalb nicht funktioniert.
Lade nochmal die 'Mail with Integromat'-Datenbank in dein Team und kopiere in Integromat den Blueprint.
Trage in der Datenbank die erzeugte Webhook-Adresse ein und wie beschrieben deinen API-Key als Variable.
Im Integromat Flow die API-Key Variable in den HTTP-Node und im Ninox-Node die Daten für den Datenbankzugriff und deine MailServer-Daten für den Versand.
Nutze die Datenbank um zu verstehen, wie der Mailversand über Integromat funktioniert und du sie für andere Projekte anpassen kannst.
 

Ninox Profile

Hallo

Ich habe es so gelöst:

let MailhookIntegromat := "............hook.integromat.com";
let MailFrom := userEmail();
let vAttachments := files(this);
let vRecordID := number(Nr);
sendEmail({
from: MailFrom,
subject: Subject,
to: MailhookIntegromat,
text: text(vRecordID),
attachments: vAttachments
})

So viel auf der Ninox seite

Der Rest erledigt Integromat

Gruß Richard

L


Hallo Uwe, hallo Ryszard,

@ Ryszard - über den Custom Mailhook läuft das bei mir auch. Ich würde gerne verstehen, warum die andere Möglichkeit nicht rennt.

Uwe, ich glaube, dass HTTP Modul holt sich keine Anhänge (im Modul inspector sehe ich keinen Hinweis auf übermittelte Dateien). Aufgrund dessen der Versuch mit vAttachments (analog zu der Mailhook-Version in der DB). Das Ninox Modul wirft den Fehler raus, dass der Wert im erforderlichen Feld "File" fehlt. "File" bezieht sich im Blueprint auf den Iterator-Parameter "name" - dieser ist aber nicht vorhanden und steht auch nicht zur Auswahl (im Ninox-Modul ist das "name" im Feld "File" nicht grün ausgefüllt sondern das Feld ist nur grün umrandet).

U

Hallo Lars.
Das HTTP-Modul holt sich nur die Namen der angehängten Dateien im Record.
Die tatsächlichen Dateien werden erst mit dem Ninox-Node geholt.
Ninox ist nicht in der Lage Dateien als JSON-Objekt zu versenden.
Das von Richard benutzte Script nutzt die Ninox eigene sendEmail() Funktion.
Damit kann als AbsenderMailadresse nur die in Ninox hinterlegte Mailadresse als Absender genutzt werden. 
Ein weiterer Nachteil kann darin liegen, dass auf Empfängerseite die mit sendEmail() versandten Mails in den Spam-Ordner landen.
Wie gesagt, der in der Datenbank hinterlegte Integromat-Blueprint funktioniert mit der Datenbank aus dem Webinarteam DE 2021.
Der Vorteil liegt bei der Nutzung mit Integromat darin, dass man seinen eigenen Mailprovider benutzen kann und in damit auch mehrere unterschiedliche Mailadressen als Absender.
Bspw. Info@Firma.De, MitarbeiterName@Firma.de etc.
Ich habe den Integromat-Flow gerade nochmal getestet.
Der funktioniert mit der Ninox DB 'eMail to Integromat' einwandfrei.
Im HTTP-Node erhalte ich als Output ein Data, in dem der Name des im Record angehängten Files aufgeführt wird. Damit arbeitet Integromat weiterErfolgreicher Integromat-Flow 2021-06-24 um 15.54.54

U

Hier ei Screenshot vom Output des HTTP-Node

Output HTTP-Node 2021-06-24 um 15.53.30

U

Hallo Lars.
Anbei meine Mailadresse (nodered.uweg@gmx.de). Wenn du mir eine Mail sendest, schicke ich dir Screenshots der einzelnen Integromat Nodes und wir können Schritt für Schritt durchgehen wo der Fehler liegt.

L

Hallo Uwe,

ich verstehe den Unterschied in den zwei Varianten und ich verstehe, wie alles läuft, wenn es läuft.

Aber mein Problem ist tatsächlich, dass im HTTP-Node keinerlei Output Data zu finden ist. Sondern nur dieser "Zahlencode". Eigentlich sollten unter Data ja alle Anhänge durchnummeriert mit den jeweiligen Eigenschaften (name. contentType,...) aufgelistet sein - sieht man ja in deinem Screenshot - und der Ninox-Node holt sich über den Iterator die Dateinamen und lädt diese. In dem Datensatz den ich versenden will sind aber 3 .jpg - diese tauchen, wie gesagt, nirgends im Integromat auf.

Neuer Status: während des Schreibens habe ich weiter herrumgespielt. Jetzt klappt es mit der Anzeige der Dateien im HTTP-Nodes. Aber der Ninox-Node wirft einen neuen Fehler aus: [404] Collection. Wurde in diesem Thread auch schon behandelt (aggregator falsch eingestellt?).Unbenannt3

U

Hallo Lars
Wie sieht denn der Screenshot deines HTTP Output aus?

U

Und die Einstellung im HTTP-Node sie wie folgt aus?Bildschirmfoto 2021-06-24 um 17.10.44

Reply