MODÜL HAKKINDA
Sms gönderimi; HTTP POST methodu kullanılarak gönderim yapılabilir. Parametre açıklamaları ve gönderim şekli aşağıda açıklanmıştır
SERVİS URL ADRESİ
http://websms.telsam.com.tr/xmlapi/sendsms
API KODLARI
<?php $postUrl = 'http://websms.telsam.com.tr/xmlapi/sendsms'; $username = 'demo'; //Panel girişi yaptığınız Kullanıcı Adınız $password = 'demo'; //Panel girişi yaptığınız Şifreniz $originator = 'BASLIK'; //Buraya Başlık gireceksiniz $text = 'Test Mesaj'; $receivers = array('5320000000', '5420000000'); foreach ( $receivers AS $receiver ){ $receiversStr .= '<receiver>' . $receiver . '</receiver>'; } $xmlStr = ' <?xml version="1.0"?> <SMS> <authentication> <username>' . $username . '</username> <password>' . $password . '</password> </authentication> <message> <originator>' . $originator . '</originator> <text>' . $text . '</text> <unicode></unicode> </message> <receivers>' . $receiversStr . '</receivers> </SMS>'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $postUrl); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlStr); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($ch); echo $response; php?>
TANIMLAR
username: Kullanıcı adı
password: Şifre
originator: SMS Başlığı
text: SMS mesajı. Maksimum limit 1080 karakter olabilir.
unicode: Unicode (örn:Türkçe karakter) mesaj gönderimi için değer 1 olmalıdır. Aksi halde boş bırakılmalıdır.
international: Uluslar arası sms gönderimi için bu değer 1 olmalıdır. Aksi halde boş bırakılmalıdır.
canceltext: Mesajın sonuna iptal bilgisi eklemek için bu değer 1 olmalıdır. Aksi halde boş bırakılmalıdır.
receivers: Alıcı GMS numaralarının tutulduğu parametre
receiver: Alıcı GMS numarası. GSM numarası 0 ile başlamamalıdır.
receiver->id: Eğer kendi receiver id değerinizi kullanırsanız, receiver id parametresini kullanabilirsiniz. Kullanmaz iseniz sistem kendi id leri ile döndürür.
ÖRNEK KOD
POST http://websms.telsam.com.tr/xmlapi/sendsms
Host: websms.telsam.com.tr
Content-Type: application/xml
Accept: */*
<?xml version="1.0"?> <INFO> <authentication> <username>username</username> <password>password</password> </authentication> <contacts> <group_name>GRUP 1</group_name> <contact> <fullname>Ali Veli</fullname> <gsmno>5320000000</gsmno> <pstnno>3120000000</pstnno> <email>test1@test.com</email> <blood>Özel bilgi 1</blood> </contact> <contact> <fullname>Mustafa Veli</fullname> <gsmno>5330000000</gsmno> <pstnno>2120000000</pstnno> <email>test2@test.com</email> <blood>Özel bilgi 2</blood> </contact> </contacts> </INFO>
BAŞARILI YANIT
API yanıtı XML formatında döner. Aşağıdaki gibi başarılı bir prosedür döndürülen XML yanıttır.
<?xml version="1.0" encoding="UTF-8"?> <result> <status>OK</status> </result>
HATALAR
API yanıtı XML formatında döner. Aşağıdaki gibi hatalı bir prosedür döndürülen XML yanıttır.
<result> <status>ERROR</status> <error_code>AUTH_FAILED</error_code> <error_description>Invalid username or password</error_description> </result>
TANIMLAR
GENERAL_ERROR: Bilinmeyen API komutu. Mevcut komutlar: sendsms, delivery_report, userinfo.
XML_ERROR: XML Post parametresi boş veya geçersiz.
AUTH_FAILED: Hatalı kullanıcı adı veya şifre.
USER_DENIED: Erişim engellendi.
BANNED_ORIGINATOR: Başlık kullanılamaz.
ORIGINATOR_INVALID: Başlık sistemde bulunamadı.
ORIGINATOR_UNCONFIRMED: Başlık onay bekliyor.
NO_RECEIVERS: Hiç alıcı numara bulunamadı.
NO_VALID_RECEIVERS: Hiç geçerli alıcı numara bulunamadı.
NO_TEXT: Sms mesajı boş.
BADWORDS_INTEXT: Sms mesajı içeriğinde uygunsuz kelimeler tespit edildi.
NOT_ENOUGH_CREDITS: Kredi yetersiz.