gsm library Receive sms example problem

Hello I am trying to make a tracking device using a7 gsm gps gprs module and arduino uno R3.
I want my device to send me sms when it receives sms with the word "Location" but I can't make this happen...
When i use serial monitor and communicate through AT command I see the new messages and i attached a photo of the serial monitor.

as a test i tried the receive sms example from gsm library but it doesnt work

/*
 SMS receiver
 This sketch, for the Arduino GSM shield, waits for a SMS message
 and displays it through the Serial port.

 Circuit:
 * GSM shield attached to and Arduino
 * SIM card that can receive SMS messages

 created 25 Feb 2012
 by Javier Zorzano / TD

 This example is in the public domain.

 http://www.arduino.cc/en/Tutorial/GSMExamplesReceiveSMS

*/

// include the GSM library
#include <GSM.h>

// PIN Number for the SIM
#define PINNUMBER ""

// initialize the library instances
GSM gsmAccess;
GSM_SMS sms;

// Array to hold the number a SMS is retreived from
char senderNumber[20];

void setup() {
  // initialize serial communications and wait for port to open:
  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  Serial.println("SMS Messages Receiver");

  // connection state
  boolean notConnected = true;

  // Start GSM connection
  while (notConnected) {
    if (gsmAccess.begin(PINNUMBER) == GSM_READY) {
      notConnected = false;
    } else {
      Serial.println("Not connected");
      delay(1000);
    }
  }

  Serial.println("GSM initialized");
  Serial.println("Waiting for messages");
}

void loop() {
  char c;

  // If there are any SMSs available()
  if (sms.available()) {
    Serial.println("Message received from:");

    // Get remote number
    sms.remoteNumber(senderNumber, 20);
    Serial.println(senderNumber);

    // An example of message disposal
    // Any messages starting with # should be discarded
    if (sms.peek() == '#') {
      Serial.println("Discarded SMS");
      sms.flush();
    }

    // Read message bytes and print them
    while (c = sms.read()) {
      Serial.print(c);
    }

    Serial.println("\nEND OF MESSAGE");

    // Delete message from modem memory
    sms.flush();
    Serial.println("MESSAGE DELETED");
  }

  delay(1000);

}

this example stops at

if (gsmAccess.begin(PINNUMBER) == GSM_READY)

i disable the pin in this sim.
even if i delete this whole access with pin number procedure , it stacks at :

if (sms.available()) {

so the whole gsm library doesn't work with this module ?

I'm a noob but i tried a lot of different stuff and different codes but nothing could work.

I attached my exact gsm just to be sure.

maybe it is a module configuration problem and not the code it self ?
I really dont know