Hallo zusammen,
ich versuche mit folgendem Code , die aktuelle Temperatur am LM35 zu twittern, bekomme aber nur ein 403 von Twitter zurück. Laut Twitter ist 403 die Meldung zu oft getweetet und die max Tweets (mit gleichem Inhalt) von 200 am Tag überschritten.
#include <Twitter.h>
#include <SPI.h>
#include <PString.h>
#include <EthernetDNS.h>
#include <Client.h>
#include <Ethernet.h>
#include <Server.h>
#include <Udp.h>
#define RATE 1800000
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 1, 44 };
byte gateway[] = { 192, 168, 1, 2 };
byte subnet[] = { 255, 255, 255, 0 };
Twitter twitter("mein Token");
float tempC;
int tempPin = 0;
char buffer[140];
PString string(buffer, sizeof(buffer));
void setup()
{
Ethernet.begin(mac, ip, gateway, subnet);
delay(1000);
Serial.begin(115200);
Serial.println("connecting ...");
if (twitter.post(buffer)) {
// Specify &Serial to output received response to Serial.
// If no output is required, you can just omit the argument, e.g.
// int status = twitter.wait();
int status = twitter.wait();
if (status == 200) {
Serial.println("OK.");
} else {
Serial.print("failed : code ");
Serial.println(status);
}
} else {
Serial.println("connection failed.");
}
}
void loop() {
tempC = analogRead(tempPin);
tempC = (5.0 * tempC +100.0)/1024.0;
string.print("Die Temperatur ist ");
string.println(tempC);
string.print("Grad Celsius");
delay(RATE);
}
Kann mir jemand sagen wo der Haken in meinem Code ist ?
Danke Euch
Also ich würde in so einem Fall grundsätzlich immer schauen was "auf der Leitung" los ist. D.h. installiere einen Debug Proxy wie z.B. Fiddler Download Fiddler Web Debugging Tool for Free by Telerik und leite Deine Requests durch den Proxy. Oder schau mit Wireshark nach. Fiddler ist hier aber die bessere Wahl. Dann siehst Du was Dein Code so treibt. Das ist in der Regel sehr erhellend
Gute Idee, muss mal Wireshark probieren, für Fiddler fehlt mir Gott sei Dank das Betriebssystem . Ansonsten scheint der Code ja zu passen ? war mir mit der PString Sache nicht so sicher.
Kein Problem, auch für den Rest der Gemeinde ist gesorgt:
Wobei Fiddler2 wirklich außerordentlich gut ist. Eins der wenigen Tools die mir aus der Windowswelt bei Linux fehlen.
Für Dein einfaches Problem reicht aber nc locker aus.
Was den Code angeht: dazu habe ich nichts gesagt. Mit den richtigen Tools kriegst Du das schon selber raus.