• 31-05-2022, 23:13:04
    #1
    Merhabalar, PHP Curl ile SMS API kullanarak üye aktivasyonu yapmak istiyorum. Curl bağlantısındaki linki ($postUrl) kopyalayıp, tarayıcıya yapıştırdığımda SMS gönderiliyor ancak ilgili sayfayı çalıştırdığımda SMS gitmiyor. Nerede hata yapıyor olabilirim, yardımcı olabilecek birileri var mı?

    API entegrasyon klavuzu : https://www.masgsm.com.tr/files/api-dokumantasyonu.pdf

    Şimdiden teşekkür eder, herkese iyi çalışmalar dilerim.

    <?php
    $postUrl = "https://api.masgsm.com.tr/api/smsget/v1?
    username=PANEL_KULLANICI_ADI&password=PANEL_SIFRESI&header=MASGSMTEST&gsm=SMS_GIDECEK_NUMARA&messag
    e=DENEME";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $postUrl);
    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    $response = curl_exec($ch);
    curl_close($ch);
    
    echo $response;
    
    ?>
  • 31-05-2022, 23:17:07
    #2
    $query = http_build_query([
    
        'username' => 'PANEL_KULLANICI_ADI',
        'password' => 'PANEL_SIFRESI',
        'header' => 'MASGSMTEST',
        'gsm' => 'SMS_GIDECEK_NUMARA',
        'message' => 'DENEME'
    ]);
    
    $postURL = 'https://api.masgsm.com.tr/api/smsget/v1?' . $query;
    var_dump(file_get_contents($postURL));
  • 31-05-2022, 23:24:02
    #3
    emrenogay adlı üyeden alıntı: mesajı görüntüle
    $query = http_build_query([
    
        'username' => 'PANEL_KULLANICI_ADI',
        'password' => 'PANEL_SIFRESI',
        'header' => 'MASGSMTEST',
        'gsm' => 'SMS_GIDECEK_NUMARA',
        'message' => 'DENEME'
    ]);
    
    $postURL = 'https://api.masgsm.com.tr/api/smsget/v1?' . $query;
    var_dump(file_get_contents($postURL));
    İlginize çok teşekkür ederim, bu şekilde SMS gönderimi yapılıyor, aynı işlemi "file_get_contents " ile değilde Curl ile nasıl yapabiliriz, bu konuda da bir örnek sunmanız mümkün mü?
  • 31-05-2022, 23:29:17
    #4
    AKSOYOGLU adlı üyeden alıntı: mesajı görüntüle
    İlginize çok teşekkür ederim, bu şekilde SMS gönderimi yapılıyor, aynı işlemi "file_get_contents " ile değilde Curl ile nasıl yapabiliriz, bu konuda da bir örnek sunmanız mümkün mü?
    Timeout, useragent eklemedim ancak fonksiyon içine ekleyebilirisiniz. SSL sorunu yaşarsanız SSL verify false yapabilirsiniz.
    function curl_request($url) {
        if (!function_exists('curl_init')){
            die('Sunucuda curL kurulu degil.');
        }
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
    }
    
    $query = http_build_query([
     
        'username' => 'PANEL_KULLANICI_ADI',
        'password' => 'PANEL_SIFRESI',
        'header' => 'MASGSMTEST',
        'gsm' => 'SMS_GIDECEK_NUMARA',
        'message' => 'DENEME'
    ]);
     
    $postURL = 'https://api.masgsm.com.tr/api/smsget/v1?' . $query;
    $result = curl_request($postURL);
    print_r($result);
  • 31-05-2022, 23:42:51
    #5
    emrenogay adlı üyeden alıntı: mesajı görüntüle
    Timeout, useragent eklemedim ancak fonksiyon içine ekleyebilirisiniz. SSL sorunu yaşarsanız SSL verify false yapabilirsiniz.
    function curl_request($url) {
        if (!function_exists('curl_init')){
            die('Sunucuda curL kurulu degil.');
        }
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
    }
    
    $query = http_build_query([
     
        'username' => 'PANEL_KULLANICI_ADI',
        'password' => 'PANEL_SIFRESI',
        'header' => 'MASGSMTEST',
        'gsm' => 'SMS_GIDECEK_NUMARA',
        'message' => 'DENEME'
    ]);
     
    $postURL = 'https://api.masgsm.com.tr/api/smsget/v1?' . $query;
    $result = curl_request($postURL);
    print_r($result);
    İlginize ve nezaketinize teşekkür ederim. Sorun SSL satırı eklenince çözüldü. "curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);"