PHP ile NETGSM Api Entegrasyonu

Türk Full Stack Developer

PHP ile NETGSM Api Entegrasyonu

Bu yazımda Türkiye’nin en ünlü SMS apisi sağlayıcısı olan NETGSM firmasının PHP ile nasıl entegre çalıştığını ve nasıl SMS gönderileceğini paylaşmak istedim.

PHP ile NETGSM Api Entegrasyonu

Gelişen teknolojilerle birlikte ülkemizde çok kapsamlı web sayfaları çıkmaya başladı. Bu kadar kapsamlı web sitesi olunca SMS Göndermede bir ihtiyaç haline geldi. Özellikle E-Ticaret scripti yapıyorsanız sipariş aşamalarından sonra kullanıcılarımıza SMS atmanız daha güvenli bir web sitesi imajı yaratmanızı sağlayacaktır.

Tüm PHP yazı arşivime buradan bakabilirsiniz.

Şimdi sözü fazla uzatmadan apinin nasıl entegre edileceğini anlatmak istiyorum.

Öncelikle NETGSM firmasına üye olmamız gerekmekte. Sanırım bu üyelik için firma olmanız gerekmekte (Tam emin değilim) daha sonra SMS Göndermek için gerekli izinleri ve gönderici ismi (Header) aldıktan sonra, kullanıcı paneline gidip bir alt kullanıcı oluşturmamız gerekmekte. Bu aşamadan sonra APİ işlemleri menüsünden api ile erişime izin veriyorum seçeneğine basarak api iznimizi de alıyoruz.

PHP ile NETGSM Api Entegrasyonu Kodları

Gerekli olan tüm bilgiler elimizde olduğuna göre artık kodları yazabiliriz.

  1. Gönderim Fonksiyonunu Oluşturalım
 function smsGonder($gsm, $mesaj)
    {
        global $db;
        $username = "NETGSM User";
        $pass = "MET GSM Şifre;
        $header = "NETGSM'den aldığınız HEADER İsmi;
        $telefonnumarasi = $gsm;
        $startdate = date('d.m.Y H:i');
        $startdate = str_replace('.', '', $startdate);
        $startdate = str_replace(':', '', $startdate);
        $startdate = str_replace(' ', '', $startdate);

        $stopdate = date('d.m.Y H:i', strtotime('+1 day'));
        $stopdate = str_replace('.', '', $stopdate);
        $stopdate = str_replace(':', '', $stopdate);
        $stopdate = str_replace(' ', '', $stopdate);

        
        $msg = html_entity_decode($mesaj, ENT_COMPAT, "UTF-8");
        $msg = rawurlencode($msg );


        
        $gonderici =html_entity_decode($header, ENT_COMPAT, "UTF-8");
        $gonderici = rawurlencode($gonderici );

        $url = "https://api.netgsm.com.tr/bulkhttppost.asp?usercode=$username&password=$pass&gsmno=$telefonnumarasi&message=$msg &msgheader=$gonderici&startdate=$startdate&stopdate=$stopdate&dil=TR";
        //echo $url;

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        //  curl_setopt($ch,CURLOPT_HEADER, false);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
    }

Yukarıdaki kodlarda fonksiyonumuzu oluşturduk. Çok fazla bir açıklamaya gerek duymuyorum çünkü zaten yukarıda yazdığımız ve CURL kütüphanesini kullandığımız fonksiyon gayet basit.

Şimdi bu fonksiyonu kullanalım ve bir mesaj gönderelim

smsGonder(05313241616,"Bu bir deneme mesajıdır");

NETGSM Hata Kodları

NETGSM 20 Hata Kodu Anlamı

Mesaj metninde ki problemden dolayı gönderilemediğini veya standart maksimum mesaj karakter sayısını geçtiğini ifade eder. 
(Standart maksimum karakter sayısı 917 dir. Eğer mesajınız türkçe karakter içeriyorsa Türkçe Karakter Hesaplama menüsunden karakter sayılarının hesaplanış şeklini görebilirsiniz.)

NETGSM 30 Hata Kodu Anlamı

Geçersiz kullanıcı adı , şifre veya kullanıcınızın API erişim izninin olmadığını gösterir.
Ayrıca eğer API erişiminizde IP sınırlaması yaptıysanız ve sınırladığınız ip dışında gönderim sağlıyorsanız 30 hata kodunu alırsınız. API erişim izninizi veya IP sınırlamanızı , web arayüzümüzden; sağ üst köşede bulunan ayarlar> API işlemleri menüsunden kontrol edebilirsiniz.

NETGSM 40 Hata Kodu Anlamı

Mesaj başlığınızın (gönderici adınızın) sistemde tanımlı olmadığını ifade eder. Gönderici adlarınızı API ile sorgulayarak kontrol edebilirsiniz.

NETGSM 70 Hata Kodu Anlamı


Hatalı sorgulama. Gönderdiğiniz parametrelerden birisi hatalı veya zorunlu alanlardan birinin eksik olduğunu ifade eder.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


grandpashabet
grandpashabet
hair transplant
hacklink paneli
grandpashabet
kavbet
extrabet
extrabet giriş
1
Şişli Escort
Beşiktaş Escort
İstanbul Escorts
sahabet
matbet
hacklink