ув. Форумчане, подскажите, пожалуйста, новичку (пишу первый проект) как правильно запрограммировать... Нужно, чтобы получив смс, модуль проверил с нужного ли нам номера пришла смс, с нужным ли текстом и если эти условия выполняются - отправить в ответном сообщении значение некоторых переменных... Программу приходится писать через Serial (в gsm плату жестко вшита скорость 115200 и в связи с этим библиотека SoftwareSerial не может быть использована)..
Подскажите, пожалуйста, где у меня ошибка в скетче?
По моему анализу работы программы , не работает именно кусок программы, который отвечает за прием смс сообщения и анализ текста смс, номера отправителя смс (этот кусок в скетче выделил)..

Подскажите, пожалуйста, что не так сделал?

PHP код:
char MASTER[] = "79**********";
int x 5;
int y 3;
int ch 0;
String val "";

void setup()
{
  
delay(300);
  
Serial.begin(115200);
  
delay(300);
  
Serial.println("AT+CMGF=1");//режим кодировки смс
  
delay (300);
  
Serial.println("AT+CLIP=1");// вкл АОН
  
delay (300);
  
Serial.println("AT+CMGR=1");// читаем смс
  
delay (300);
  
Serial.println("AT+CSCS=\"GSM\"");//режим кодировки текста
  
delay(2000);
}

void loop()
{
  
//====================================================== этот блок, отвечающий за прием и анализ смс не работает
  
if (Serial.available())//если что-то пришло на GSM модуль
  
{
    
delay(200); //выдержка времени, чтобы вся инфа успела придти на модуль прежде чем мы начнем его анализировать
    
ch Serial.read(); //считываем с порта информацию
    
val += char(ch); // присваиваем переменной val
    
delay(20);
  }
  if (
val.indexOf("+CMT") > -&& val.indexOf("79*********") > -&& val.indexOf("123") > -1)
    
/*если мы получил именно смс(+CMT) , если смс от хозяина , если текст смс "123" */
//========================================================
{

    
Serial.print("AT+CMGS=\"");//начало отправки смс
    
Serial.print(MASTER);
    
Serial.write(0x0D);//без этой строки не работает,  что означает эта строка?
    
delay(2000);
    
Serial.print("x=");
    
delay(500);
    
Serial.println(x);
    
delay(500);
    
Serial.print("y=");
    
delay(500);
    
Serial.print(y);
    
delay(500);
    
Serial.println(char(26));
    
val "";
    
ch 0;
  }