GSM receive message and make action

You can detect 'on' or 'off' words in a SMS. First, you must concatenate each character received in a String object, after, use compareTo function.

char c;
String received = "";

while(c=sms.read())
  received += c;

if(received.compareTo("on") == 0)
{
  digitalWrite(YOURPIN, HIGH);
}
else if(received.compareTo("off") == 0)
{
  digitalWrite(YOURPIN, LOW);
}
else
{
}