0

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

Hallo Forum,

ich habe es mit Hilfe dieses youtube Tutorials geschafft das Szenario einzurichten und es funktioniert auch tadellos.

https://youtu.be/UmUeXKvJLpI

Im Tutorial wird aber nicht bechrieben wir man die Anhänge der Records mit versendet.
Ich habe mir dann selbst was zusammengebastelt mit den Modulen "List files from Record" und "Download file from Record".
Das funktoniert auch super, aber nur wenn der Record EINEN Anhang hat.

Gibt es aber  bspw. 2 Anhänge, dann werden leider auch 2 E-Mails gesendet. Ich möchte natürlich erreichen, dass die beiden Anhänge in einer mail gesendet werden.

Ich vermute, dass es mit der Option "Attachements" im Modul EMail zusammenhängt. Dort muss evtl. über "Map" ein Array hinein??
Leider bekomme ich hier nicht weiter.  :-(

Ich habe das Szenario zum anschauen exportiert:
https://drive.google.com/file/d/1SGYYGE8uow3r4_hZ-aVjB9U1_Zx2FoYs/view?usp=sharing

Falls jemand den Kniff kennt, würde ich mich freuen

Danke und Gruß
Oliver M.

72 Antworten

null
    • T_Bartzsch
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hi Oliver,

     

    ich habe da letztens was über das Integromat Tool (das grüne Icon) Aggregator gelesen...

    https://www.integromat.com/en/feature/aggregators

    Vielleicht kommst Du damit weiter?

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Tobias,

    danke für den Hinweis, mit dem Aggregator habe ich auch schon rumgespielt, erschien mir auch logisch.
    Leider komme ich hiermit auch nicht weiter, weil das Ninox Modul "Download File from Record" kein Array anbietet??

    Umgekehrt, also E-Mals mit Anhang nach Ninox senden ist auch mit Anhängen kein Problem. Dort gibt es im EMail Modul ein Array namens "Attachments". Hier hab ich das mit der Hilfe von Himanshu's tutorials gut hinbekommen.

    • T_Bartzsch
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Kannst Du nicht im Integromat über NINOX - Watch Record Events einen Webhook aushängen und dann aus der ninox heraus deine Attachments sammeln und im DATAblock des Webhook übergeben?

    Ich habe mir einen Webhook im Integromat gemacht, wo ich eine Datei des Datensatzes abfrage und dann die Artikelnummer als Variable mit übergebe... der Integromat kann damit dann arbeiten...

    let webhookURL := "https://hook.integromat.com/deinWebhook";
    let data := {
    filename: item(split(item(split(text('Artikelbild'), "/"), 1), "."), 0),
    suffix: item(split(item(split(text('Artikelbild'), "/"), 1), "."), 1),
    recordID: Nr,
    newName: Artikelnummer + ".png",
    };


    let response := http("POST", webhookURL, {
    'Content-Type': "application/json"
    }, data);

     

    Vielleicht geht der Weg ja darüber....

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Das Szenario läuft bereits über den "Watch Record Events" Webhook.
    das klappt wie gesagt auch einwandfrei. (ich komme aber nicht an ein files() Array heran. Die verfügbaren Ninox Module für files spucken nichts aus, bzw. sehe ich das nicht.

    • T_Bartzsch
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hm, ich habe jetzt kein email konfiguriert im Integromat, aber du kannst nach LIST FILES ein Array aggregator einsetzen, der aus dem Modul "List File From Records" den FILENAME zieht.... und in DOWNLOAD FILES FROM RECORD kannst Du das erzeugte Array unter "File" auswählen...

    Bildschirmfoto 2020-07-27 um 13.09.06

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Ähem, soweit war ich auch schon, aber es läuft nicht, also bekomme einen "DataError [404] [Collection]" im Download File From Record Modul.
    Ich krieg das mit den Einstellungen im Array Aggregator wohl nicht hin ???

     

    so geht nicht:

     

    so fehlt mir das data feld:

    • T_Bartzsch
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hm... ich richte mir mal ein EMAIL Modul ein und teste auch mal...

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Ich denke der Aggregator ist falsch eingerichtet.
    Ich habe mal hier meinen Flow beigefügt.

    Bild 1

    Bild 2

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    okay, habe das mal so zusammengebauht und jetzt läuft es bis zum e-mail Modul durch.
    Hier gibt es aber jetzt einen Fehler:


    ist die Attachment Einstellung im E-Mail Modul so richtig?:

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver.

    Schau mal hier:

    Bild 3

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Im eMail Knoten die Attachments nicht mappen.

    Gruss

    UweG

    • T_Bartzsch
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hab das auch gerade mal gecheckt... Du hast bei dem grünen ARRAY noch einen Pulldown Pfeil wo du die Items des Arrays auswählen kannst.

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    UI okay, jetzt läuft es durch, aber ich bekomme 2 E-Mails mit jeweils einem Anhang ??? *doof guck*

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Das ist das Problem mit der Attachment-Abfrage mit dem Ninox-Modul. 

    Er macht aus jedem gefundenen Attachment einen eigenen Prozess und für jeden Prozess eine eMail.

    Ich meine gesehen zu haben, dass statt des Ninox-File AbfrageKnoten  eine HTTPS-Abfrage alle gefundenen Attachments in einen Prozess bündelt und dan per Agregator zusammengefasst werden kann.

    Gruss
    UweG

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    mhm, dann fange ich mal an mit der https Abfrage zu fummeln.
    Hab zwar noch keine Ahnung davon aber mal sehen.

    Falls noch jemand hilfreiche Tipps hat, immer her damit :-)

    Vielen Dank schonmal für die Unterstützung bis hierhin!

    Gruß, Oliver M.

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver
    Ich habe mal etwas gesucht:
    In einem API-Webinar vor langer Zeit hat Himanshu folgendes mit Integromat gebaut und es hat funktioniert mit mehreren Attachments in einer Mail.

    Bildschirmfoto 2020-04-17 um 11.24.12

    Ich bau das mal nach und sende die im Laufe der Woche das Ergebnis wenn du solange warten kannst. Sollte dann auch ohne Webhook, wie bei Dir automatisch beim erstellen des Datensatzes funktionieren.
    Gruss
    UweG

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hey Uwe,

    das ist ja super, vielen Dank schonmal im Voraus
    Bloß kein Streß, ich warte gerne -gut Ding will Weile haben :-)

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Moin Oliver
    Ist es für dich zwingend notwendig mit einem Record-Evend im Integromat zu arbeiten oder würde auch ein Button in Ninox gehen, der den Mailversand auslöst?
    In diesem Fall hätte ich eine funktionierende Lösung.

    MailSent Integromat
    Gruss
    UweG

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Moin Uwe,

    Grundsätzlich erstelle ich in Ninox erstmal einen Record, der eine E-Mail werden soll.
    Die Anhänge des Records sind dann quasi die Mail-Anhänge.

    Los gehts dann halt mit dem Button der den Webhook anspricht, also die Record ID ausliest für Integromat.

    Aber natürlich kann der Button auch anders funktionieren....!?

    Gruß, Oliver

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Mein derzeitige Szenario sieht ja schon fast so aus wie deine Lösung.
    Jetzt geht es wohl nur noch um die Konfiguratiion der 3 Module (List Record, Download Record und Aggregator)

    so sieht es bei mir im Moment aus:

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver
    Ich habe im Webinar die Tabelle 'Email_To_Integromat_Mailhook' (Grünes Palmensymbol) reingestellt.
    Eine Beschreibung und der Integromat Bluebrint sind im ersten Datensatz.

    Habe den Integromat-Flow noch etwas verkürzt auf das Wesentliche.
    Wenn noch Fragen sind einfach hier reinschreiben.
    Gruss
    Uwe

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver

    Noch eine kleine Button-Änderung für die Datenbank:

    let MailhookIntegromat := "Deine Integromat Mailhookadresse";
    let MailFrom := userEmail();
    let vAttachments := files(this);
    let vRecordID := number(Nr);
    sendEmail({
    from: MailFrom,
    subject: text(vRecordID),
    to: MailhookIntegromat,
    text: text(vRecordID),
    attachments: vAttachments
    })

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Uwe,

    erstmal vielen, vielen Dank für den Aufwand!!! :-)
    Die Datenbank habe ich schon angeschaut und auch das Integromat Szenario fertig gemacht.

    Ich denke auch das Prinzip nun verstanden zu haben.

    Mit der sendmail Funktion schickt man die Record ID und die Record files per e-mail an den Webhook.

    Das Get Record Modul holt sich dann die ID vom Webhook.

    Im Email Modul hat man dann Felder von eben diesem Record und kann zusätzlich als Attachment Source die files vom Record als Array vom Webhook mappen.

    Die ersten Tests liefen schon gleich erfolgreich, dank deiner Hilfe
    Also nocheinmal ein dickes Dankeschön! :-)

     

    Abschließend sei erwähnt, das diese Lösung ein bisschen wie "Von hinten durch die Brust ins Auge" ist.
    Schließlich gibt es ja eigentlich das Watch Record Events Modul, welches direkt von Ninox ansprechbar ist.

    Aber leider liefert das "Get Record" Modul ja keine Daten von den Record files.
    Fühlt sich für mich eigentlich wie ein bug an...

     

    Gruß

    Oliver M.

    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver.

    Das "Watch Record Event Modul" ist auch nichts anderes als ein Webhook. Ich habe es bisher noch nie benutzt, da ich das Meiste mit Node-Red erledige.
    Darüber habe ich auch einen Ninox-Mailserver gebaut, mit einstellbarem Spamfilter und automatischer Antwortzuordnung auf aus Ninox gesendete Mails.

    Integromat nutze ich nur zum experimentieren und vergleichen mit Node-Red.
    Ich denke es ist kein Ninox-Fehler, sondern eher dem Datenaufbau in Ninox und der API-Syntax geschuldet.
    Die Attachments werden ja nicht direkt im Datensatz gespeichert wie die anderen Daten, sondern sind über eine Verknüpfung ausgelagert. (So habe ich es mal in einer API-Session von Himanshu verstanden) Deshalb ist es nicht möglich in einem Rutsch die Anhänge zusammen mit den Recorddaten abzurufen. Integromat hat dann das Problem, dass bei mehreren Anhängen für jeden Anhang eine neue Operation erstellt wird und die kann man leider auch nicht einfach per Aggregator zusammenführen. Ich habe zwar einen Weg beim Integromat gefunden, der beim Aggregator ein Array mit mehreren Anhängen in einer Operation erzeugt. Leider bekommt das nachfolgende SMTP-Mailmodul noch nicht alle Anhänge geliefert. Da muss ich noch etwas rumspielen.

    Bastian, von der Firma 'Magic Networks' (Ninox Partner) hat zu diesem Problem einen anderen Lösungsansatz.
    Er hat in der Mail Tabelle eine Untertabelle eingerichtet, die aus Bildfeldern besteht.
    In diese speichert er dann per Button alle möglichen Dateien. Jede Datei ist ein eigener Datensatz(Anhang) zur Mail. 

    Per Button wird aus dem Mail-Record dann ein Webhook an Integromat ausgelöst, der die Daten überträgt, die Integromat für den vollständigen Mailversand benötigt.
    Gruss
    UweG

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Uwe,

     

    vielen Dank für die Informationen, damit kann ich weiterarbeiten.

     

    Gruß, Oliver M.

Content aside

  • vor 1 JahrZuletzt aktiv
  • 72Antworten
  • 6749Ansichten
  • 2 Folge bereits