Probleemi. Miksi seuraava ei toimi? Ideana tässä on korvata Arduinon
GSM-kirjaston client.print suorilla käskytyksillä. Ei vaan toimi.
Epäilen tuota httppost-komentoa. Pitäisikö siinä olla ensimmäisenä
parametrina koko lähetettävän viestin pituus (otsikkotiedot + data)?
Serial.println(sendATcommand("AT+QIFGCNT=0", "OK", 1000));
String netti = "AT+QICSGP=1,";
netti=netti+char(34);
netti=netti+"internet";
netti=netti+char(34);
mySerial.println(netti);
Serial.println(netti);
Serial.println(sendATcommand("AT+QHTTPURL=32,30", "CONNECT", 1000));
Serial.println(sendATcommand("http://api.thingspeak.com/update", "OK", 1000));
Serial.println(sendATcommand("AT+QHTTPPOST=300,50,10", "CONNECT", 1000));
String dataString = "30";
String tsData = "field1="+dataString;
mySerial.print("POST /update HTTP/1.1\n");
mySerial.print("Host: api.thingspeak.com\n");
mySerial.print("Connection: close\n");
mySerial.print("X-THINGSPEAKAPIKEY: "+writeAPIKey+"\n");
mySerial.print("Content-Type: application/x-www-form-urlencoded\n");
mySerial.print("Content-Length: ");
mySerial.print(tsData.length());
mySerial.print("\n\n");
mySerial.print(tsData);
Serial.println(sendATcommand("AT+QIDEACT", "DEACT OK", 1000));
Serial.println("Stopped.");
Ja tässä ajo:
Searching network..
AT+CGREG?
+CGREG: 0,1
In GRPS network
AT+QIFGCNT=0
OK
1
AT+QICSGP=1,"internet"
AT+QHTTPURL=32,30
CONNECT
1
OK
1
AT+QHTTPPOST=300,50,10
Call Ready
CONNECT
1
0
Stopped.