Zum Hauptinhalt springen
Weil einfach - produktiver ist

Der Daten Spezialist

Konvertieren Sie die Daten mühelos zwischen verschiedenen Formaten ohne Programmierkenntnisse dank Visual Designer. Effizient und super einfach.
Flowheater Chart

Import zu InnovaPhone Contacts-App

  • FlowHeater-Team
  • avatar Autor
  • Offline
  • Administrator
  • Administrator
Mehr
4 Jahre 2 Monate her - 4 Jahre 2 Monate her #3991 von FlowHeater-Team
Import zu InnovaPhone Contacts-App wurde erstellt von FlowHeater-Team
Moin zusammen,

ich nutze seit Jahren immer mal wieder erfolgreich FlowHeater. Nun habe ich ein weiteres Einsatzfeld gefunden und frage mich, ob Sie Interesse haben meinen Lösungsansatz etwas besser zu gestalten.

Kurz zur Aufgabenstellung:
Innovaphone ist eine Telefonsystem aus Deutschland mit stark wachsenden Marktanteilen, welches mit seiner neuen Softwareversion 13 endlich auch direkt Kontakte auf dem System hosten kann (bisher nur externe LDAP-Server). Leider muss man die Daten manuell in die Contacts-App als CSV (UTF8) hochladen. Die CSV kann ich natürlich aus meinen Datenquellen mittels FlowHeater erstellen. Auch das Hochladen geht über ein PowerShell-Script ( http://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_App_Contacts#Upload_Data_by_HTTP_Post ) .

Nun zu meiner Anfrage / Anregung:
Toll wäre es ja, wenn man das nachlaufende PowerShell-Script sparen könnte und im FlowHeater bereits ein Ziel ‚Innovaphone Contacts-App‘ oder allgemeiner ‚http-Post‘ hat, welche die Daten automatisch auf das System postet. Http wäre im Übrigen  auch als Importer für z.B. SalesForce interessant.

Vielen Dank
N. Hansen
Anfrage per Email erhalten

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Letzte Änderung: 4 Jahre 2 Monate her von FlowHeater-Team.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • FlowHeater-Team
  • avatar Autor
  • Offline
  • Administrator
  • Administrator
Mehr
4 Jahre 2 Monate her #3992 von FlowHeater-Team
FlowHeater-Team antwortete auf Import zu InnovaPhone Contacts-App
Hallo Herr Hansen,

das können Sie über untenstehendes C# Skript und dem .NET Script Heater erledigen. Sie müssen hierzu einen .NET Script Heater auf den Designer ziehen und „Ausführen bei“ auf „Ende“ einstellen. Zusätzlich müssen Sie auf dem Reiter erweitert bei Usings/Imports folgendes eintragen, siehe Screenshot.

Das Skript wird so am Ende des Verarbeitungsschrittes aufgerufen, auf dem der .NET Script Heater platziert wurde. Macht dann im Prinzip genau das gleich wie das PowerShell Script. Liest die erzeugte Textdatei ein und übergibt das an die angegebene URL per HTTP POST.

Achtung: Das Skript ist mangels Testumgebung ungetestet. Am besten mal versuchen und ggf. Fehlermeldungen, Änderungswünsche, etc. posten.

Im Angang finden Sie auch eine kleine Beispieldefinition dazu.

C# Skript um InnovaPhone Contact App per HTTP POST zu beliefern
Code:
public object DoWork() {   TextFileAdapter write = (TextFileAdapter)AdapterWrite;   // Name und Inhalt der erzeugten Textdatei holen   byte [] buf = File.ReadAllBytes(write.Filename);   // WebRequest holen, Domain und URL anpassen   WebRequest request = WebRequest.Create("https://www.test.xyz/site.php");   request.Method = "POST";   request.ContentType = "application/octet-stream";   request.ContentLength = buf.Length;     Stream data = request.GetRequestStream();   data.Write(buf, 0, buf.Length);   data.Close();   WebResponse response = request.GetResponse();     // Rückgabe bei Ausführen bei Ende nicht notwendig!   return null;   }





Dateianhang:

Dateiname: web-request-post.zip
Dateigröße:5 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
4 Jahre 2 Monate her #3994 von Muschelpuster
Muschelpuster antwortete auf Import zu InnovaPhone Contacts-App
Danke, grundsätzlich wurde die Frage beantwortet, funktioniert aber noch nicht. Das Script muss sich natürlich noch am Webdienst authentifizieren, sprich da müssen noch Benutzer und Passwort rein.

Niels

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • FlowHeater-Team
  • avatar Autor
  • Offline
  • Administrator
  • Administrator
Mehr
4 Jahre 2 Monate her #3995 von FlowHeater-Team
FlowHeater-Team antwortete auf Import zu InnovaPhone Contacts-App
Hallo Niels,
Vielen Dank für die Rückmeldung. Hier das angepasste C# Skript, das auch mit einer HTTP „Basic“ Anmeldung umgehen kann.

Im Anhang wurde die Definition dazu ebenfalls aktualisiert.


Angepasstes C# Skript um InnovaPhone Contact App per HTTP POST zu beliefern, inkl. Benutzer Anmeldung
Code:
public object DoWork() {   TextFileAdapter write = (TextFileAdapter)AdapterWrite;   // Name der erzeugten Textdatei holen   byte [] buf = File.ReadAllBytes(write.Filename);   // Domain und URL anpassen   Uri uri = new Uri("https://www.test.xyz/site.php");   // HttpWebRequest holen   HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(uri);   // Username und Passwort anpassen   NetworkCredential credential = new NetworkCredential("benutzer", "passwort");   CredentialCache cache = new CredentialCache();   cache.Add(uri, "Basic", credential);   request.Method = "POST";   request.Credentials = cache;   request.PreAuthenticate = true;   request.ContentType = "application/octet-stream";   request.ContentLength = buf.Length;     Stream data = request.GetRequestStream();   data.Write(buf, 0, buf.Length);   data.Close();   WebResponse response = request.GetResponse();     // Rückgabe bei Ausführen bei Ende nicht notwendig!   return null;   }

Dateianhang:

Dateiname: http-web-r...post.zip
Dateigröße:5 KB


PS: Mangels Testumgebung ist das C# Skript ungetestet.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
4 Jahre 1 Monat her #4000 von Muschelpuster
Muschelpuster antwortete auf Import zu InnovaPhone Contacts-App
So, jetzt hatte ich endlich Zeit das Ganze zu testen. Wenn ich die hier zum Download angebotene Definition ausführe, dann läuft sie erst einmal ohne Fehler durch. Kopiere ich das Script in meine Definition, dann gibt es einen Haufen Fehler:
Irgendwo muss ich da sicher noch was definieren, nur wo?

Niels

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • FlowHeater-Team
  • avatar Autor
  • Offline
  • Administrator
  • Administrator
Mehr
4 Jahre 1 Monat her - 4 Jahre 1 Monat her #4001 von FlowHeater-Team
FlowHeater-Team antwortete auf Import zu InnovaPhone Contacts-App
dann fehlt lediglich eine “using System.Net;” Angabe auf dem Reiter "Erweitert", siehe Screenshot.


gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Letzte Änderung: 4 Jahre 1 Monat her von FlowHeater-Team.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
4 Jahre 1 Monat her #4003 von Muschelpuster
Muschelpuster antwortete auf Import zu InnovaPhone Contacts-App
Danke, das habe ich auch kapiert. Trotzdem klemmt es noch:

Die Datei ist da und sieht auch ok aus. 

Niels

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • FlowHeater-Team
  • avatar Autor
  • Offline
  • Administrator
  • Administrator
Mehr
4 Jahre 1 Monat her #4005 von FlowHeater-Team
FlowHeater-Team antwortete auf Import zu InnovaPhone Contacts-App
Hallo Nils,

Sorry, mein Fehler. Das Problem ist, dass die Datei hier noch exklusive vom TextFile Adapter geöffnet ist.

Um das zu lösen habe ich die Definition um einen weiteren Verarbeitungsschritt erweitert. Hierüber kann nun problemlos auf die Datei zugegriffen werden.

Im ersten wird die Datei erzeugt und per System Heater sowie Set Parameter Heater wird hier der erzeugte Dateiname in einem FlowHeater Parameter gespeichert. Dieser wird nun um zweiten Verarbeitungsschritt im Skript verwendet um die Datei zu lesen. Dieser Schritt ist nur ein Dummy Verarbeitungsschritt! Hier wird lediglich eine Test Datensatz über den TestData Adapter generiert, der dann in eine InMemory Adapter geschrieben wird, das können Sie ignorieren.

Angepasstes C# Skript um InnovaPhone Contact App per HTTP POST zu beliefern (per Dummy Step)
Code:
public object DoWork() {   // Name der erzeugten Textdatei holen, vorheriger Verarbeitungsschritt!   string sFilename = Parameter["FILENAME"].Value.ToString();     byte [] buf = File.ReadAllBytes(sFilename);   // Domain und URL anpassen   Uri uri = new Uri("https://www.test.xyz/site.php");   // HttpWebRequest holen   HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(uri);   // Username und Passwort anpassen   NetworkCredential credential = new NetworkCredential("benutzer", "passwort");   CredentialCache cache = new CredentialCache();   cache.Add(uri, "Basic", credential);   request.Method = "POST";   request.Credentials = cache;   request.PreAuthenticate = true;   request.ContentType = "application/octet-stream";   request.ContentLength = buf.Length;     Stream data = request.GetRequestStream();   data.Write(buf, 0, buf.Length);   data.Close();   WebResponse response = request.GetResponse();     // Rückgabe bei Ausführen bei Ende nicht notwendig!   return null;   }

Dateianhang:

Dateiname: http-web-r...9-30.zip
Dateigröße:8 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
4 Jahre 1 Woche her #4085 von Muschelpuster
Muschelpuster antwortete auf Import zu InnovaPhone Contacts-App
Moin,

leider klemmte es etwas an der Zeit für das Projekt. Jetzt habe ich mich am Wochenende nochmal mit beschäftigt und es funktioniert leider nicht. Da ich C# noch weniger beherrsche als VB, habe ich es mal via VB im Visual Studio versucht. Ich bekomme immer 401 - Authentifizierungsfehler . Dass die Zugangsdaten stimmen, kann ich jedoch prima über das PowerShell-Script prüfen. Ich vermute, dass die Digest-Authentifizierung nicht klappt. Hier bekommt man ja auch über eine 401-Meldung seinen Token zur Verschlüsselung der Anmeldedaten. 
Ich überlege nun, wie das PowerShell-Script die CURL-Ressource zu nutzen...

erfolglose Grüße
Niels

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • FlowHeater-Team
  • avatar Autor
  • Offline
  • Administrator
  • Administrator
Mehr
4 Jahre 1 Woche her #4087 von FlowHeater-Team
FlowHeater-Team antwortete auf Import zu InnovaPhone Contacts-App
Hallo Niels,

die Suche nach dem Fehler kann Stunden in Anspruch nehmen, das kann leider hier im Rahmen des kostenlosen Supportes nicht mehr durchgeführt werden.

Workaround
Sie können über den CMD Heater das PowerShell Skript auch aus der Definition am Ende der Verarbeitung aufrufen.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.347 Sekunden
FlowHeater Logo

FlowHeater - Der Daten Spezialist

Effiziente Datenintegration und Transformation mit FlowHeater - Ihre Lösung für nahtlosen Datentransfer.

Rechtliches

Support & Kontakt

Kontaktinformation

Telefon:
0951 / 99339792

E-Mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.


Copyright © 2009-2024 by FlowHeater GmbH. Alle Rechte vorbehalten.