Uno Wifi Probleem met Ciao

He,

Ik probeer met mij Uno Wifi data naar een Mysql server te sturen via Ciao. Echter is de data te lang voor Ciao. (Heb gelezen dat deze maar 40 tekens mag bevatten). Heeft er iemand een idee hoe ik dit oplos. Als de url onder de 40 tekens blijft werkt alles perfect. Echter heb ik nog wat sensors aangesloten welke ook mee zouden met de url. Is er een manier om dit te omzeilen?

Dit is de code die werkt. Als ik nog data bijvoeg werkt het niet meer. String uri = "/temp/temp.php?relais1="; uri += String(relais1); uri += "&relais2="; uri += String(relais2); uri += "&relais3="; uri += String(relais3); delay(2); Ciao.println("Send data to server.be"); CiaoData data = Ciao.write(CONNECTOR, SERVER_ADDR, uri);

if (!data.isEmpty()){ Ciao.println( "State: " + String (data.get(1)) ); Ciao.println( "Response: " + String (data.get(2)) ); } else{ Ciao.println("Write Error"); }

Hoi raptortrex, welkom.

Volgens mij heb je helemaal geen WiFi probleem, want als je een niet te lange URL stuurt dan gaat het wel goed.

Ik ken dat hele Ciao niet, en ik weet ook niets van PHP servers en zo. Maar je stuurt nu stukken tekst en velden met waardes (das ook tekst) naar die server. Als je ruimte beperkt is, dan moet je dus datgene dat je verstuurt kleiner maken. Ik zou daarom de woorden "relais" weglaten, of hooguit de r gebruiken. Daar bespaar je zomaar 15 tekens mee, oftewel meer dan 33 % van je maximale lengte. Op de server draait ook software die jouw waardes verwerkt (het PHP ding). Kun je daar iets aan doen, of moet die datgene binnen krijgen wat je verzendt ? Het enige dat ik namelijk kan bedenken, is dat je dan óf meerdere malen data moet verzenden, met telkens een identifier die vertelt wat er aan zit te komen, óf dat je de tekst gaat coderen. Je kunt dan gaan kijken welke tekens je moet kunnen verzenden, en welke tekens je niet nodig hebt. Je moet er ook rekening mee houden wat je allemaal mag verzenden in een bericht, ik heb geen idee of er bepaalde tekens zijn die niet mogen worden verzonden omdat ze een bepaalde functie hebben (controle signalen). Stel dat je voldoende zou hebben aan 32 tekens. Dan kun je dus in theorie 4 leestekens in 1 byte stoppen. Je moet dan je te verzenden boodschap wel coderen, en na ontvangst weer decoderen. Maar zo kun je wel heel wat besparen.

Dan moet je wel aan beide zijden de code kunnen aanpassen want anders hoef je hier al helemaal niet naar te kijken.