ich komme mit der client/server-verbindung zu einem Logitech Medien Server (LMS) nicht klar.
Aus einem Hauptprogramm wird das Unterprogramm
void SqueezeboxPlay(String playlist) aufgerufen. Die mitgelieferte Playlist-Nummer wird dann in den Http-String eingebaut und an LMS übersandt. Funktioniert beim ersten Mal prima. beim zweiten Aufruf klappt alles nicht mehr: Fehlermeldung "keine Verbindung". Die Abfrage "if (clientOnline)..." wird beim 2. Durchlauf mit "1" also
wahr be zurückgegeben.
Ich weiß mir keinen Rat mehr warum die folgenden Abfragen nicht funktionieren. Kann da mal jemnd drüberschauen??
Hier der Code:
void SqueezeboxPlay(String playlist)
{
digitalWrite(chipSelectPin,HIGH); // dectivate the RFID reader
digitalWrite(chipSelectEth,LOW); // activate the EthernetCard
Serial.println(playlist);
Serial.println(clientOnline);
if (clientOnline)
{
client.println("GET /status?p0=playlist&p1=resume&p2="+playlist+"&" + player[2] + "HTTP/1.1");
client.println();
}
else
{
if(!client.connect(server, 9002))
{
Ethernet.begin(mac, ip);// start the Ethernet connection
delay(1000); // give the Ethernet shield a second to initialize
Serial.println("connecting...");
}
// if you get a connection, report back via serial:
if (client.connect(server, 9002)) {
Serial.println("connected");
client.println("GET /status?p0=playlist&p1=resume&p2="+playlist+"&" + player[2] + "HTTP/1.1");
client.println();
clientOnline=true;
}
// if you didn't get a connection to the server:
Serial.println("connection failed");
}
digitalWrite(chipSelectPin,LOW); // activate the RFID reader
digitalWrite(chipSelectEth,HIGH); // deactivate the EthernetCard
}
Eberhard