Program doesn't work after disconnect and connect power

Hello;

#include <SoftwareSerial.h>
SoftwareSerial mySerial(7,8);  // (Rx,Tx  > Tx,Rx) 

String incomingData;  
char incomingByte; 
String inputString;
int relay = 4; // Output for Relay Control

void setup() 
{
   inputString = "";
   pinMode(relay, OUTPUT);// initialize digital pin relay as an output.   
   digitalWrite(relay, LOW);// Initial state of the relay
   delay(100);
   mySerial.begin(9600); 
   while(!mySerial.available()){
        mySerial.println("AT");
        delay(1000); 
      }
   mySerial.println("AT+CMGF=1"); 
   delay(1000);  
   mySerial.println("AT+CNMI=1,2,0,0,0");
   delay(1000);
   mySerial.println("AT+CMGL=\"REC UNREAD\"");
}

void loop()
{  
  if(mySerial.available()){
      delay(100);
      while(mySerial.available()){
        incomingByte = mySerial.read();
        inputString += incomingByte; 
      }
   
        delay(10);      
      inputString.toUpperCase();

      //turn RELAY ON or OFF
      if (inputString.indexOf("START") > -1){
          digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on
          digitalWrite(relay, HIGH);   // turn the LED on
          SendMessage("PUMP ON");
       
      }
      if (inputString.indexOf("STOP") > -1){
          digitalWrite(LED_BUILTIN, LOW);   // turn the LED on
          digitalWrite(relay, LOW);   // turn the LED off
          SendMessage("PUMP OFF");
               
      }
       
        delay(50);

        //Delete Messages & Save Memory
        if (inputString.indexOf("OK") == -1){
        mySerial.println("AT+CMGDA=\"DEL ALL\"");
        delay(1000);}
        inputString = "";
  }
}

void SendMessage(String Text)
{
  mySerial.println("AT+CMGF=1");
  delay(1000);
  mySerial.println("AT+CMGS=\"+xxxxxxxxxxxxxx\"\r"); // Replace x with mobile number
  delay(1000);
  mySerial.println(Text);
  delay(100);
  mySerial.println((char)26);
  delay(1000);
}

 void RecieveMessage()
{
  incomingData = mySerial.read(); 
  delay(1000);
 }