hallo an alle Bin immer noch mit der web-anbindung vom avr web-io beschäftigt. Internetverbindung haben ich nun ,entweder mit der Fa.Medex über openVPN oder öffentliche adresse. Nun möchte ich auf meine internet server ,da wo meine homepage zb. liegt eine Datei anlegen ,öffnen, beschreiben usw. Wie bekommt man das hin? Gibt es html oder js befehle die das machen? oder muss ich auf eine ganz ander ebene ,da es ja kein html protokoll ist? Gruß juppo
Und wenn du uns das jetzt noch mal in verständlicher Form schreiben würdest, dann könnte man dir auch helfen...
Ok Also AVR-WEB-IO (Pollin) Hardware mit Radig Software vorhanden. Am Ehternet Port ein GSM Modem das eine TCP Internet verbindung herstellt. Das GSM Modem hat eine öffentliche IP Nummer (momentan 80.187.24.221:81) Das läuft wunder bar. Nun möchte ich zb.die Temperaturen die der AVR einsammelt alle 5 min in eine Date auf meinen Wepspace speichern. Mit Filezilla kann ich die Daten dann einsehen. also eine FTP Client erstellen,oder gibt es Javascript/html befehle die das erledigen. Gruß Juppo
>also eine FTP Client erstellen,oder gibt es Javascript/html befehle die >das erledigen. Einen FTP-Client zu programmieren stelle ich mich schon interessant vor... Einfacher wäre es wohl, per PHP-Script die NETIO-Website in gewissen Zeitabständen herunter zu laden und dort dann die Werte aus dem HTML-Code herauszufiltern.
Über HTML/JS kannst du von "außerhalb" prinzipiell nichts auf dem Server speichern. Das wäre ja ein Einfallstor für jeden Hacker... Du kannst allerdings auf dem Server ein Script laufen lassen, dass für dich die Daten speichert. In der URL übergibst du dann deinen Datensatz (Stichwort PHP GET). So eine URL könnte z.B. so aussehen www.meinserver.de/NetIO/Messwerte_Speichern.php?sensor=15&temperatur=25. 6&zeit=17:00:00 Im PHP-Script hättest du dann auf die einzelnen Parameter mittels $_GET['sensor'] usw. Zugriff. Die Werte kannst du dann überprüfen (wichtig!) und in deine Messwerte-Liste ablegen lassen. Am Ende gibt das Script z.B. nur "OK" aus, damit das NetIO-Modul weiß, dass alles funktioniert hat. Kommt kein "OK", oder z.B. "Error xyz", muss es die Daten anpassen bzw. neu versenden. Wichtig ist, dass du die eingehenden Daten zumindest ganz grob überprüfst. Nicht das jemand deinen Server findet und ihm so eine Anfrage gibt: "Messwerte_Speichern.php?sensor=evil_virus&temperatur=kill_server&zeit=n ow" :) Auch könntest du eine einfache Absicherung der Übertragung einbauen: Zusätzlich zum "OK" gibt der Server an dein Modul eine zufällige ID weiter. Bei der nächsten Anfrage muss dein Modul dann die ID mit übermitteln, oder ggf. sogar mit einem eigenen Schlüssel erweitern. Bei dieser Methode wärst du darauf angewiesen, dass das Modul von sich aus regelmäßig den Server kontaktiert. IMHO ist das die sinnvollste Lösung, weil der Server wahrscheinlich zuverlässiger läuft wie das Modul.
Besten Dank für euere Beiträge . Mal schauen ob ich ein Beispiel finde. Thanks Juppo
Kann dein Webserver php? Falls ja dann wird dir das schon gelingen. Der PHP Teil ist in jedem PHP Tutorial erklärt.
Grund Software von U.Radig Habe Javascript für dynamische Werte und normal HTML drin. Naja habe mich schon tagelang damit beschäftigt und immer ein Stück weiter gekommen. Schauen wir mal. Gruß Juppo
Ulrich meinte wohl eher ob auf deinem Webspace wo die Daten hin sollen PHP verfügbar ist. Sascha
Wenn Du kein Hostingpaket inklusive PHP hast wird das unter Garantie nix. JS und HTML können keine Daten speichern auf dem Server. Auch die Auswertung von Formularen geht dann bestenfalls wenn da n CGI hinterlegt wird. Damit liese sich mit viel Gewürge was basteln was die Daten dann per Mail überträgt ... u.U. Das Nächste wird dann sein, ob 1und1 in ihrem PHP die Ausführung von Cronjobs aktiviert hat und ob die auch 5-minütlich ausgelöst werden können ... eher nicht vermutlich. Ich vermute um die Einrichtung eines kleinen Servers mit DynDNS bei Dir daheim wirst Du da nicht herum kommen.
Moin Ich habe auch noch bei Concept69 Space ,da läüft Xcommerce , Dort sind auch Datenbanken angelegt usw. Also dort eine PHP Programm das dann von meine Webserver Daten hohlt und in eine Datei/Datenbank ablegt. Richtig? Gruß Juppo
Du brauchst noch immer Cronjobs, um Deine php-Seite regelmässig aufzurufen... Das geht mit normalen Spaces nicht... Ich hatte mal eine Seite gebaut, die alle 5 Minuten von verschiedenen Websites die RSS-Feeds ausliest, guckt, ob neue Feeds vorhanden waren und bei Bedarf an meinen Pager geschickt hat... Bei 12 Feeds sind da schnell 3GB im Monat aufgelaufen... Zum testen könnt ich Dir auf meinem Server die PHP hosten und laufen lassen, Datenbankanbindung kannst Du auch haben... Oder als herunterladbare txt-Datei... Dafür benötige ich jedoch eine dyndns-Addresse Deines AVR-Webservers... >> PM ohne komm ich ja nicht drauf... Und welche Daten Du genau benötigst...
Besten Dank für die Anwort Ich gehe erst mal einen anderen Weg. Das Modem arbeitet mit Open At . Mit der WIPSOFT sollte es gehen direkt meine gelüste zu erfüllen. Nur diese Software ist nicht installiert. Mal schauen was mir der Support sagt. Gruß Juppo
Leo-andres H. schrieb: > Über HTML/JS kannst du von "außerhalb" prinzipiell nichts auf dem Server > speichern. > Das wäre ja ein Einfallstor für jeden Hacker... Nein, HTML unterstützt sehr wohl die Übertragung von Daten vom "Client" zum "Server". Der Server kann das beliebig speichern wie und wo er ist. Dieses Forum hier funktioniert zum Beispiel so. Was man machen könnte, wäre einfach die Daten per HTTP-GET auf den Server zu laden. Dazu muss er am "Client" nur eine TCP/IP-Verbindung aufmachen und den HTTP-Header abschicken und nach der Antwort einfach die Verbindung beenden. Auf dem Server bräuchte man ein kleines CGI-Skript (oder irgend ein anderes 'CGI'-artiges Verfahren) welches die Werte entgegennimmt und irgendwie speichert. FTP ist ungünstig, weil: 1. Die Passwörter im Klartext übertragen werden. (GSM ist ausreichend verschlüsselt) 2. FTP ein relativ kompliziertes Protokoll ist.
Christian Berger schrieb: > Auf dem Server bräuchte man ein kleines CGI-Skript (oder irgend ein > anderes 'CGI'-artiges Verfahren) welches die Werte entgegennimmt und > irgendwie speichert. Dann hat er immernoch das Problem, das er regelmässig alle 5 Minuten diese CGI-Datei aufrufen muss... ich kenn das Board und die Firmware nicht - können die sowas???
Ja, wie will er denn sonst alle 5 Minuten Werte übertragen? Die Firmware muss er sowieso selbst schreiben.
Abruf der Daten von extern via PHP-Script, perl oder ähnliches mit cron... wäre für mich die erste Wahl... Die Daten liegen ja schon als Website vor, man muss nur noch lesen...
Björn C. schrieb: > Abruf der Daten von extern via PHP-Script, perl oder ähnliches mit > cron... > > wäre für mich die erste Wahl... > > Die Daten liegen ja schon als Website vor, man muss nur noch lesen... Wärs nicht eher sinnvoll, dem NET-IO zu sagen, das es alle x Minuten eine PHP-Seite aufzurufen wie "www.trallala.de/skript.php?wert1=30&wert2=40"? Da braucht man nur PHP auf dem Server, eine Datenbank wäre noch ein schönes Extra, ansonsten speichert man eben in einer Datei.
Ja ,das höhrt sich ja gut an. Um die AT+WIP Commandos zu benutzen muss einen andere Firmenware auf das Modem . Jo ,PHP Programm auf eine Server laufen lassen der dann auf dem AVR Web IO Daten ausliest und speichert. Das wäre fein, aber wie geht das ? wie kann man zb. die Temperaturwerte des AVR-IO auslesen? Gruß Juppo
>wie kann man zb. die Temperaturwerte des AVR-IO auslesen? Dein AVR-NETIO erzeugt doch eine HTML-Seite, oder? Diese Seite wird von deinem anderen Server in regelmäßigen Abständen aufgerufen (dein Webserver arbeitet dabei als Client, so wie du mit dem Browser deinen NETIO "ansurfen" kannst). Aus der HTML-Datei (menschenlesbare Text-Datei) kann man dann die entsprechenden DAten herausfiltern. Einfach wäre es aber, die NETIO-Firmware von Ulrich Radig zu benutzen, die auch noch eine HTML-GET-Prozedur mitliefert. Mit dieser Prozedur kann man vom NETIO Daten an einen anderen Server übertragen und erhält von diesem dann eine Antwort (die man aber auch ignorieren kann). Das Thema dieser Prozedur wurde hier im Forum schon besprochen. Lies dich mal in die GET- und POST-Methode des HTTP ein.
Die Software habe ich geändert ,also müsste da müsste die functionen da sein Für dynamische werte habe ich js eingebaut. ------------------------------------------------------ <form><input type=\"button\" value=\" Print this page \"" "onclick=\"window.print();return false;\" /></form> " "<script type=\"text/javascript\">" "HTTPRequest=function(){};" "HTTPRequest.prototype=" "{" "isSupported:function(){return!!this.getConnection()},events:[\"start\", \"open\",\"send\",\"load\",\"end\"],filter:" "encodeURIComponent,getConnection:function(){var i,o=[function(){return new ActiveXObject(\"Msxml2.XMLHTTP\")},function(){return new ActiveXObject(\"Microsoft.XMLHTTP\")},function(){return new XMLHttpRequest()}];for(i=o.length;i--;){try{return o[i]()}catch(e)" "{}}return null},formatParams:function(a){var i,r=[];for(i in a){r[r.length]=i+\"=\"+(this.filter?this.filter(a[i]):a[i])}return r." "join(\"&\")},get:function(a,b,c,d){return this.request(\"GET\",a,null,c,null,d)},post:function(a,b,c,d){return this.request(\"POST\"" ",a,b=this.formatParams(b),c,{\"Connection\":\"close\",\"Content-Length\ ":b.length,\"Method\":\"POST \"+a+\" HTTP/1.1\",\"Content-Type\"" ":\"application/x-www-form-urlencoded; charset=utf-8\"},d)},request:function(a,b,c,d,g,h)" "{var i,o=this.getConnection(),f=d instanceof Function;try{o.open(a,b,!h);h||(o.onreadystatechange=function(){var s=HTTPRequest.prototype.events[o.readyState];f?d(o):s in d&&d[s]" "(o)}); if(g){for(i in{USER_AGENT:0,XUSER_AGENT:0}){i in g||(g[i]=\"XMLHttpRequest\")}for(i in g){o.setRequestHeader(i,g[i])}}o.send(c);" "h&&(f?d(o,oThis):d[\"end\"]&&d[\"end\"](o,oThis));return true}catch(e){return false}}};"
warum so kompliziert. versuchs mit nem ftp client auf dem net io. der schiebt einfach alle 5 min die daten zum server und gut is. ftp is so einfach gestrickt das sollt man noch hinbekommen und wenn nicht es gibt bestimmt was fertiges. gruß sven
laut http://www.ulrichradig.de/home/index.php/software/avr-webserver-software kann der doch schon FTP, also warum nicht nutzen?
So habe noch ein wenig gestöbert Habe da ein kleine Heftchen mit Ajax Anwendungen. Hat jemand so eine kleine Routine die mit auf meine server ftp://www.webseite/log/ eine file "info.txt" erstellt und "Hallo World" reinschreibt. Wäre nett. Juppo
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.