GSM doesn't want to send message please help

I am using a GSM with CAN bus shield to send parameters but some how the GSM doesnt want to send the 2 messages plz help

#include <Mechanic.h>
#include <SoftwareSerial.h>
ObdInterface obd;
ObdMessage msg;
#include "SIM900.h"
#include "sms.h"
SMSGSM sms;
int numdata;
boolean started=false;
char smsbuffer[160];
char n[20];
int flag = 0 ;
char *z;
char c ;
int d,e,f,g;

void setup() {
Serial.begin(9600);
while (!Serial);
obd.setSlow(false);
obd.setExtended(false);
obd.setDebug(false);
obd.begin();
//Start configuration of shield with baudrate.
//For http uses is raccomanded to use 4800 or slower.
if (gsm.begin(2400)){
started=true;
}

}

void loop() {
float rpm = 0, temp = 0;
char buffer[64];
int count = 0;
Serial.print("ok1");
obd.getPidAsFloat(0x0c, 0.0f, 16383.75f, rpm);
obd.getPidAsFloat(0x05, -40.0f, 215.0f, temp);

char x[100] ;
char l[100] ;
float a = rpm;
int a1 = (int)a;
int a2 = (int) ((a-a1)*100);

float b = temp;
int b1 = (int)b;
int b2 = (int) ((b-b1)*100);

sprintf(x, "RPM %d.%d Temp %d.%d ",a1,a2,b1,b2);
char *p = x;
if (sms.SendSMS("01002620719",p));
delay(5000);

if (obd.getMultiframePid(0x03, -1, buffer, count)) {

for (int i = 0; i < count; i += 2) {
byte first = (byte)buffer;
byte second = (byte)buffer[i + 1];

/*

  • The two highest bits encode the subsystem.
    */
    switch(first >> 6) {
    case 0: c='P'; break;
    case 1: c='C'; break;
    case 2: c='B'; break;
    case 3: c='U'; break;
    }

d = ((first >> 4) & 0x03, DEC);

e =(first & 0x0f, HEX);
f =(second >> 4, HEX);
g =(second & 0x0f, HEX);

}
}
sprintf(l, "DTCs %d %c%d%d%d%d ",count,c,d,e,f,g);
char*h=l;
if (sms.SendSMS("01002620719",h));

}

Please check your indentation and put your code in code tags (The # key when editing / composing a message)

That will make it easier for us to read.

if (sms.SendSMS("01002620719",h));

If the method succeeded, do nothing. Otherwise, do nothing. It seems to me that you'd care whether the method succeeded, or not. It seems to me that if it failed, you'd care why.