1

Datenimport aus Mail oder vom Webseiten Kontaktformular

Ich bekomme Anfragen via Kontaktformular (Webseite) und möchte diese empfangenen Daten nicht noch einmal manuell in Ninox eingeben. Kann ich es irgendwie realisieren, das es hier einen Automatismus gibt? Am besten direkt, aus einer mySQL Datenbank heraus oder "einfach" per CSV. Vielen Dank

14 Antworten

null
    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Torsten, ich benötige diese Funktion ebenfalls dringend. Bisher gibt es aus NinoxDB meines Wissens keine derartige Import-Funktion. Ich gehe wie folgt vor:

    1. Ich habe auf meinem Webspace das Webmail-Tool "rainloop" installiert - ist OpenSource. Das besondere daran ist, dass man dieses Webmail Tool in einem iFrame darstellen kann, was andere Webmailer nicht mehr zulassen.

    2. In Rainloop konfiguriere ich den IMAP-Zugang auf das abzurufende Postfach. Es sind auch mehrere möglich.
    3. In NinoxDB binde ich rainloop in einem iFrame in ein Berechnungsfeld html([URL]) ein.
    4. In diesem iFrame öffne ich die Email und kann diese dann einfach komplett markieren und dann per copy+paste in ein Formatiertes Textfeld in NinoxDB copieren.

    5. Von da aus kann man den Inhalt der Mail oder des kopierten Textteiles dann in Ninox weiterbearbeiten....

    Im Moment noch etwas umständlich, aber die praktikabelste Lösung, mit der man mit wenigen Handgriffen Emails importierern kann.ninox_email

    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Wenn Du das so machen willst und Fragen hast - da gibt's ein paar Kniffe, die das alles erleichtern - kann ich Dir gerne helfen. Hab das mehrfach so am laufen....

    • Torsten.1
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Dirk, 

    Vielen Dank ersteinmal für Deine Idee...

    Ich hatte eher daran gedacht das ich mir von meinem Kontaktfomular eine CSV erstellen lasse und die dann übernehme. Allerdings ist das mit dem Import noch zu aufwendig für die Person die das nachher bedient.

    Mit deiner Version könnte ich mir auch meinen Webmailer im iframe anzeigen lassen. Das wäre zumindest dann schon einmal alles in einem System.

    Am besten wäre man könnte an einer Datenbank andocken und per Knopfdruck importieren.

    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Ja, per Knopfdruck geht noch nicht. Aber Mail öffnen, Copy-Paste in ein Textfeld und dann natürlich per Knopfdruck (Trigger-Button) den kopierten Text in seine Einzelteile zerlegen (Vorname, Name, Strasse, Email....) und so dann automatisch in die Felder übernehmen. So mach ich das. Dann bleibt praktisch nur noch anfänglich der copy-paste Schritt manuell.

    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Ich bau gerade dieses Script zum 'zerlegen' um - wenn's tut kann ich es hier ja posten....

    • Torsten.1
    • vor 6 Jahren
    • Gemeldet - anzeigen

    ja cool, wäre toll.

    Ich muss zugeben, Ninox überfordert mich auch etwas. Ich finde die Referenz und Tutorials etwas dürftig.

    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Naja, ab einem gewissen Niveau - wenn man komplexere Dinge tun muss - sollte man etwas Erfahrung in solchen Scriptsprachen mitbringen. Mir ist manche Syntax auch nicht so geläufig und die Tutorials decken nicht alle möglichkeiten ab. Aber zum Glück bekommt man hier ja gute Hilfe und lernt so immer was dazu.

    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    So, ich habe ein Script gebaut, welches ein Adressfeld aus einem Kontaktformular in seine Bestandteile zerlegt und in die einzelnen Datenfelder füllt. Es dient als Beispiel und muss ggf. angepasst werden.

    Ausgangspunkt:

    Im Kontaktformular sehen die Daten so aus: (Phantasie-Daten)

    Verson 1:

    Name: Herr Uwe Bauer
    Straße: Hauptstr .2
    PLZ/Ort: 72072 Tübingen
    Telefon: 015226226514
    E-Mail: uwe.bauer@web.de
    Nachricht des Interessenten
    "Ich interessiere mich für Ihr Angebot und möchte gerne einen Besichtigungstermin vereinbaren. Bitte rufen Sie mich zurück. "

    Oder auch so - wenn nicht alle Felder gefüllt  sind:

    Name: Herr Uwe Bauer
    PLZ/Ort:
    Telefon: 015226226514
    E-Mail: uwe.bauer@web.de

    Ich kopiere per copy/paste diesen Textblock aus der Email in ein mehrzeiliges Textfeld 'Textblock'.
    Beim betätigen des Buttons "Neue Adresse" wird in der verknüpften Tabelle '11_Kontakte' ein neuer Datensatz angelegt und die Adressfelder (z.B. 11_Kontakte.Vorname, 11_Kontakte.Name usw. befüllt:

    Kontakt := (create '11_Kontakte');
    let Tmp_Text := ""
    let Tmp_Textblock := Textblock;
    Tmp_Textblock := replace(Tmp_Textblock, "Name:", "[1]");
    Tmp_Textblock := replace(Tmp_Textblock, "Straße:", "[2]");
    Tmp_Textblock := replace(Tmp_Textblock, "PLZ/Ort:", "[3]");
    Tmp_Textblock := replace(Tmp_Textblock, "Telefon:", "[4]");
    Tmp_Textblock := replace(Tmp_Textblock, "E-Mail:", "[5]");
    Tmp_Textblock := replace(Tmp_Textblock, "Nachricht des Interessenten", "[6]");
    let Name_start := index(Tmp_Textblock, "[1]");
    let Strasse_start := index(Tmp_Textblock, "[2]");
    let Ort_start := index(Tmp_Textblock, "[3]");
    let Tel_start := index(Tmp_Textblock, "[4]");
    let Mail_start := index(Tmp_Textblock, "[5]");
    let Nachricht_start := index(Tmp_Textblock, "[6]");
    if Name_start != -1 then
    let Next_start := Strasse_start;
    if Next_start = -1 then
    Next_start := Ort_start
    end;
    let Tmp_Vollname := substr(Tmp_Textblock, 4, Next_start - 4);
    if substr(Tmp_Vollname, 0, 4) = "Herr" then
    Kontakt.(Anrede := 1);
    Tmp_Vollname := substr(Tmp_Vollname, 5, length(Tmp_Vollname) - 5)
    end;
    if substr(Tmp_Vollname, 0, 4) = "Frau" then
    Kontakt.(Anrede := 2);
    Tmp_Vollname := substr(Tmp_Vollname, 5, length(Tmp_Vollname) - 5)
    end;
    let Tmp_Text := substr(Tmp_Vollname, 0, index(Tmp_Vollname, " "));
    Kontakt.(Vorname := Tmp_Text);
    let Tmp_Text := substr(Tmp_Vollname, index(Tmp_Vollname, " ") + 1, length(Tmp_Vollname) - index(Tmp_Vollname, " ") - 1);
    Kontakt.(Nachname := Tmp_Text)
    end;
    if Strasse_start != -1 then
    let Next_start := Ort_start;
    if Ort_start = -1 then
    Next_start := Tel_start
    end;
    let Tmp_Text := substr(Tmp_Textblock, Strasse_start + 4, Next_start - Strasse_start - 4);
    Kontakt.(Strasse := Tmp_Text)
    end;
    if Ort_start != -1 then
    if Tel_start - Ort_start > 5 then
    let Next_start := Tel_start;
    void
    end;
    if Tel_start = -1 then
    let Next_start := Mail_start;
    void
    end;
    let Tmp_Ort := substr(Tmp_Textblock, Ort_start + 4, Tel_start - Ort_start - 4);
    Kontakt.(Postleitzahl := substr(Tmp_Ort, 0, 5));
    Kontakt.(Stadt := substr(Tmp_Ort, 5, length(Tmp_Ort) - 5))
    end;
    let Tmp_Text := substr(Tmp_Textblock, Tel_start + 4, Mail_start - Tel_start - 4);
    Kontakt.('Telefon Privat' := Tmp_Text);
    let Next_start := Nachricht_start;
    if Next_start = -1 then
    Next_start := length(Tmp_Textblock)
    end;
    let Tmp_Text := substr(Tmp_Textblock, Mail_start + 4, Next_start - Mail_start - 4);
    Kontakt.('E-Mail' := Tmp_Text)

    • Ninox Premiumpartner
    • Bastian_Vorholt
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Torsten, ich mach es aktuell mit einem CSV Export. Welches System nutzt du mit wordpress würde ich mir das Plugin https://wordpress.org/plugins/advanced-cf7-db/ laden damit kannst CSV erstellen und exportieren diese dann wiederum in Ninox impoertieren. 

    • Dirk_Pulver_2020
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Gar nicht - ich kann so jedes Webmail-Postfach mit 2 Mausklicks importieren - natürlich einzeln die Mails...

    • Knickygo
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hi Dirk, tolle Idee. Ich mache aber irgendetwas falsch. Bekomme Fehlermeldungen. Kannst du die Datenbank einmal anhängen, das ich suchen und vergleichen kann, wo mein Fehler liegt.

    gruss Knicky 

    • Ninox Premiumpartner
    • Bastian_Vorholt
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hey habe das ganze jetzt mit der api realisiert. Werde dazu auch noch einen Eintrag machen. Das ganze funktioniert so die Kontaktanfragen werden direkt in Ninox gespeichert. Die API kommt erst mit dem kommenden Ninox Update, also noch ein wenig Geduld.

    • VVW-Internethandel
    • Wolf_Karl
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Dirk wie lautet der Ansatz um eine Webseite einzubinden.

    "In NinoxDB binde ich rainloop in einem iFrame in ein Berechnungsfeld html([URL]) ein."

    würde gerne etwas versuchen

    • VVW-Internethandel
    • Wolf_Karl
    • vor 4 Jahren
    • Gemeldet - anzeigen

    habe es gefunden um Sendungenabzufragen

    html("<iframe src=' https://www.paketda.de/paketverfolgung-iframe.php?lang=en ' width='100%' height='100%'</iframe>")

    gruss Wolf