, EEPROM / , .
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); 
int ch = 0;
int led = 13;
String val = "";
void setup() {
  delay(2000);  
  pinMode(led, OUTPUT);
  digitalWrite(led, LOW);
  Serial.begin(9600);  
  Serial.println("GSM tester v1.0");
  mySerial.begin(9600);
  mySerial.println("AT+CLIP=1");  
  delay(100);
  mySerial.println("AT+CMGF=1");  
  delay(100);
  mySerial.println("AT+CSCS=\"GSM\"");  
  delay(100);
}
void loop() {
  if (mySerial.available()) {  
    while (mySerial.available()) {  
      ch = mySerial.read();
      val += char(ch);
      delay(10);
    }
    if (val.indexOf("RING") > -1) {  
      if (val.indexOf("71234567890") > -1) {  
        Serial.println("--- MASTER RING DETECTED ---");
        mySerial.println("ATH0");  
        digitalWrite(led, HIGH);  
        delay(3000);
        digitalWrite(led, LOW);  
      }
    } else
      Serial.println(val);  
    val = "";
  }
  if (Serial.available()) {  
    while (Serial.available()) {  
      ch = Serial.read();
      val += char(ch);
      delay(10);
    }
    
    if (val.indexOf("sendsms") > -1) {  
      sms(String("hello world"), String("+71234567890"));  
    }
    val = "";  
  }
}
void sms(String text, String phone)  
{
  Serial.println("SMS send started");
  mySerial.println("AT+CMGS=\"" + phone + "\"");
  delay(500);
  mySerial.print(text);
  delay(500);
  mySerial.print((char)26);
  delay(500);
  Serial.println("SMS send complete");
  delay(2000);
}