Something like this:
void loop() {
static char buffer[30];
static int bufferIndex = 0;
while (wifly.available()) {
buffer[bufferIndex++] = wifly.read();
if (buffer[bufferIndex-1] == '\n') {
// End Of Line character received
buffer[bufferIndex++] = '\0'; // Add a terminating null character
processString(buffer); // You write this function to process the message
bufferIndex = 0;
}
if (bufferIndex > 29) // Buffer Overflow
bufferIndex = 0;
}
void processString(char *parameter){
while (*parameter != NULL) {
if (parameter[0] == "r") {
int value = atoi(parameter+1);
analogWrite(9, value);
}
else if (parameter[0] == "g")) {
int value = atoi(parameter+1);
analogWrite(10, value);
}
else if (parameter[0] == "b")) {
int value = atoi(parameter+1);
analogWrite(11, value);
}
parameter++;
}
}