Pero entonces tampoco me serviria porque necesito pasarle un subdominio de una url con una variable.
Sabes como se podria hacer?
Lo que no consigo es llamar a una url desde arduino. El caso contrario no hay problema.
Sergegsx tienes el codigo de arduino del ejemplo del post anterior en el que mandabas un mail?
tienes que poner la ip del servidor donde esta el dominio.
luego le pones la url en la llamada.
si pones algo de codigo intento ayudarte.
No se que codigo poner porque es mucho, tengo una funcion en la que si el higrometro esta "seco" y el sensor ultrasonico mide mas de 10cm riega. Ahi es cuando quiero que haga la redireccion en la web para que esta haga el insert en la bbdd.
En la direccion contraria (web->arduino) no tengo problema y he encontrado una forma bastante facil, que si interesa os la explico, ya que si entra en el while para comprobar si "existe cliente".
Gracias
Explica esa forma, a ver que tal es.
has probado a hacer un programa sencillo, sin sensores, solo el codigo basico para hacer ese insert a la base de datos? creo que deberias hacer este ejercicio y luego integrar todo el codigo.
Si lo he probado, y el problema es que no consigo que "ejecute" la redireccion.
La forma vale tanto en arduino como en la web, unicamente que en arduino tiene que estar dentro del while del cliente etc. Para php podemos con un formulario que en el action sea la ip de arduino o en su defecto la direccion de no-ip o bien como yo lo estoy haciendo,
Os pongo un pocomde codigo de arduino
if(readString == ("GET /?opcion=LED HTTP/1.1") )
{
//led has to be turned ON
digitalWrite(ledPin, HIGH); // set the LED on
//redireccionar a la web
client.println("HTTP/1.1 200 OK");
client.println("<body><html>");
client.println("Content-Type: text/html");
client.println();
client.println("<meta http-equiv='Refresh' content='0;url= URL'>");
client.println("</body></html>");
}
no entiendo que quieres hacer. si quieres llamar una url y pasarle parametros, para qeu el archivo php reciba esas url y haga un insert...tienes que mirar el ejemplo webclient. tu codigo no tiene nada que ver con este ejemplo.
hay un post de hace poco con una explicación estupenda de como hacer esto.
Ya ya se que me tengo en el webclient pero no hay manera de echarlo a andar y menos con una url
Gracias
Jossema106:
Ya ya se que me tengo en el webclient pero no hay manera de echarlo a andar y menos con una urlGracias
que ip de google estas usando?
En el post que te he puesto antes sale la IP de google valida, ya que como te comenta Sergegsx la del ejemplo es antigua y no funciona.
Gracias!! Era simplemente el fallo de la ip.
Ahora necesito que esa ip sea la del dominio donde tengo la web y el problema es que es un subdominio.
sin mas datos no podemos ayudarte. entiendo que poner la ip y dominio aqui quizas no sea tu primera elección pero es dificil ayudarte sin mas datos.
Este es el codigo que utlizo pero si pongo mi url muestra
no muestra nada mas por eso te preguntaba como lo hacias tu.
Gracias
Aquí te lo está diciendo el compañero, en el otro post, sigue solo por uno si no esto se va a liar.
Sergegsx:
llamando a
tudominio.com - This website is for sale! - tudominio Resources and Information.
Estoy utilizando el ejemplo pero con serverName en vez de con ip
Con el de google va perfectamente pero con mi dominio no.
Lo que necesito es que cargue la web y le añada esta linea
?regando HTTP/1.0");
Jossema106:
Este es el codigo que utlizo pero si pongo mi url muestrano muestra nada mas por eso te preguntaba como lo hacias tu.
Gracias
/*
Web client
This sketch connects to a website (http://www.google.com)
using an Arduino Wiznet Ethernet shield.
Circuit:
* Ethernet shield attached to pins 10, 11, 12, 13
created 18 Dec 2009
modified 9 Apr 2012
by David A. Mellis
*/
#include <SPI.h>
#include <Ethernet.h>
// Enter a MAC address for your controller below.
// Newer Ethernet shields have a MAC address printed on a sticker on the shield
byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //physical mac address
byte ip[] = {
192, 168, 1, 20 }; // ip in lan
//IPAddress server(173,194,33,104); // Google; lo he puesto como comentario para no borrarlo
char serverName[] = "xxxxxxxx";// Google ; IP del buscador google
// Initialize the Ethernet client library
// with the IP address and port of the server
// that you want to connect to (port 80 is default for HTTP):
EthernetClient client;
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(9600);
// start the Ethernet connection:
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
// no point in carrying on, so do nothing forevermore:
for(;;)
;
}
// give the Ethernet shield a second to initialize:
delay(1000);
Serial.println("connecting...");
// if you get a connection, report back via serial:
if (client.connect(serverName, 80)) {
Serial.println(serverName);
// Make a HTTP request:
client.println("GET /?regando");
client.println();
}
else {
// kf you didn't get a connection to the server:
Serial.println("connection failed");
}
}
void loop()
{
// if there are incoming bytes available
// from the server, read them and print them:
if (client.available()) {
char c = client.read();
Serial.print(c);
}
// if the server's disconnected, stop the client:
if (!client.connected()) {
Serial.println();
Serial.println("disconnecting.");
client.stop();
// do nothing forevermore:
for(;;)
;
}
}
le di antes de tiempo
ultimo intento que hago porque esto ya se esta alargando y veo que no estas poniendo de tu parte.
vuelve a mirarte el post que te subi en la sección proyectos. copia y pega todo a tu servidor y a tu arduino y asegurate que funciona ESE ejemplo.
luego mirate mi ejemplo de url que te puse un poco mas arriba. si lo hubieses analizado verias que aqui faltan cosas
client.println("GET /?regando");
luego usa google y pon "pasar parametros por url en php"
recuerda que el webclient solo sube los parametros 1 vez y luego se queda el programa parado para siempre.
en serverName que pones? no puedo adivinar si lo tienes mal
recuerda que tienes que poner la IP publica de tu servidor. tu pagina web estara en un subdominio pero tienes que poner la ip del servidor donde esta tu carpeta.
luego ya le indicas en el client. print el dominio
dejas las cosas a medias y la bola de cristal no me funciona.
suerte
tio siento si te molesto pero de verdad que no se a que proyecto te refieres ni nada a lo que haces referencia. Por otra parte soy programador php asi que pasar parametros por url se.
Y de verdad que siento si se esta alargando pero no veo lo que me dices.
El dominio no te lo puedo dar por aqui te lo paso por privado ok?