Sms Xml Api

ALACAM TELEKOM sms xmlApi v1.0

SMS Gönderimi

Açıklama

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.

API Web Adresi

http://sms.alacamsms.com/xmlapi/sendsms

XML Yapısı

Gönderilen XML içeriği XML isminde bir parametre değeri olarak gönderilmelidir.

XML=

<?xml version=”1.0″?>

<SMS>

<authentication>

<username></username>

<password></password>

</authentication>

<message>

<originator></originator>

<text></text>

<unicode></unicode>

<international></international>

</message>

<receivers>

<receiver></receiver>

<receiver id=”custom_id”></receiver>

</receivers>

</SMS>

 

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.

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.

 

XML İstek Örneği

POST http://sms.alacamsms.com/xmlapi/sendsms

Host: sms.alacamsms.com

Content-Type: application/xml

Accept: */*

 

XML=

<?xml version=”1.0″?>

<SMS>

<authentication>

<username>username</username>

<password>password</password>

</authentication>

<message>

<originator>originator</originator>

<text>text</text>

<unicode></unicode>

<international></international>

</message>

<receivers>

<receiver>5320000000</receiver>

<receiver>5330000000</receiver>

<receiver>5340000000</receiver>

<receiver>340000000</receiver>

</receivers>

</SMS>

Başarılı Dönüş Cevabı

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>

<message_id>546544454</message_id>

<total_valid_receivers>3</total_valid_receivers>

<total_invalid_receivers>1</total_invalid_receivers>

<receivers>

<receiver id=”1034666571” gsmno=”5320000000”>OK</receiver>

<receiver id=”1034666572” gsmno=”5330000000”>OK</receiver>

<receiver id=”1034666573” gsmno=”5340000000”>OK</receiver>

<receiver id=”1034666574” gsmno=”340000000”>INVALID</receiver>

</receivers>

<sms_count>1</sms_count>

<amount>0.0640</amount>

<credit>122.2600</credit>

</result>

Hatalı Dönüş Cevabı

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>

 

Error Codes

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.

 

 

İletim Raporları

Açıklama

İletim Raporları; HTTP POST methodu kullanılarak istek yapılabilir. Parametre açıklamaları ve gönderim şekli aşağıda açıklanmıştır.

API Web Adresi

http://sms.alacamsms.com/xmlapi/delivery_report

XML Yapısı

Gönderilen XML içeriği XML isminde bir parametre değeri olarak gönderilmelidir.

XML=

<?xml version=”1.0″?>

<REPORT>

<authentication>

<username></username>

<password></password>

</authentication>

<message_id></message_id>

<receivers>

<id></id>

<id></id>

</receivers>

</REPORT>

 

username: Kullanıcı adı

password: Şifre

message_id: Raporunu almak istediğiniz mesajın id değeri. Bu değer sms gönderildiğinde sunucu tarafından size dönen değerdir.

receivers -> id: Durumunu öğrenmek istediğiniz alıcının id değeri.

XML İstek Örneği

POST http://sms.alacamsms.com/xmlapi/delivery_report

Host: sms.alacamsms.com

Content-Type: application/xml

Accept: */*

 

XML=

<?xml version=”1.0″?>

<REPORT>

<authentication>

<username>username</username>

<password>password</password>

</authentication>

<message_id>546544454</message_id>

<receivers>

<id>45654788</id>

<id>45654789</id>

</receivers>

</REPORT>

Başarılı Dönüş Cevabı

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>

<message_id>546544454</message_id>

<receivers>

<receiver>

<id>45654788</id>

<sent_date>2013-11-18 12:02:34</sent_date>

<done_date></done_date>

<status>PENDING</status>

</receiver>

<receiver>

<id>45654789</id>

<sent_date>2013-11-18 12:02:34</sent_date>

<done_date>2013-11-18 12:02:46</done_date>

<status>DELIVERED</status>

</receiver>

</receivers>

</result>

 

receiver -> status: receiver status dönüş değerleri aşağıda açıklanmıştır.

PENDING: Mesaj alıcı numaraya gönderildi, fakat Alıcı numaranın operatöründen durum bilgisi bekleniyor.

DELIVERED: Mesaj alıcı numaraya başarılı olarak iletildi.

NOT_DELIVERED: Mesaj alıcı numaraya iletilemedi.

INVALID_DESTINATION_ADDRESS: Alıcı numara geçersiz veya hatalı.

Hatalı Dönüş Cevabı

API yanıtı XML formatında döner. Aşağıdaki gibi hatalı bir prosedür döndürilen XML yanıttır.

<?xml version=”1.0″ encoding=”UTF-8″?>

<result>

<status>ERROR</status>

<error_code>AUTH_FAILED</error_code>

<error_description>Invalid username or password</error_description>

</result>

 

Error Codes

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.

NO_MESSAGEID: Geçersiz mesaj id değeri. Not found in system.

NO_RECEIVERIDS: Hiç alıcı id si bulunamadı.

 

Kullanıcı Bilgisi

Açıklama

Kullanıcı bilgisi; HTTP POST methodu kullanılarak istek yapılabilir. Parametre açıklamaları ve gönderim şekli aşağıda açıklanmıştır.

API Web Adresi

http://sms.alacamsms.com/xmlapi/userinfo

XML Yapısı

Gönderilen XML içeriği XML isminde bir parametre değeri olarak gönderilmelidir.

XML=

<?xml version=”1.0″?>

<INFO>

<authentication>

<username></username>

<password></password>

</authentication>

</INFO>

 

username: Kullanıcı adı

password: Şifre

XML İstek Örneği

POST http://sms.alacamsms.com/xmlapi/user_info

Host: sms.alacamsms.com

Content-Type: application/xml

Accept: */*

 

XML=

<?xml version=”1.0″?>

<INFO>

<authentication>

<username>username</username>

<password>password</password>

</authentication>

</INFO>

Başarılı Dönüş Cevabı

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>

<user>

<credit>122.2600</credit>

<alphanumeric_price>0.0250</alphanumeric_price>

<numeric_price>0.0180</numeric_price>

<international_price>0.2200</international_price>

<originators>

<originator>

<title>originator1</title>

<status>OK</status>

</originator>

<originator>

<title>originator2</title>

<status>WAITING_FORM</status>

</originator>

</originators>

</user>

</result>

Hatalı Dönüş Cevabı

<?xml version=”1.0″ encoding=”UTF-8″?>

<result>

<status>ERROR</status>

<error_code>AUTH_FAILED</error_code>

<error_description>Invalid username or password</error_description>

</result>

 

Error Codes

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.

 

PHP Örnek Gönderim Kodu

Açıklama

Aşağıdaki PHP ile yapılmış örnekten yola çıkarak API entegrasyonunuzu yapabilirsiniz.

 

<?php

$postUrl = ‘http://sms.alacamsms.com/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>’;

 

$postFields = ‘XML=’ . urlencode($xmlStr);

 

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $postUrl);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

 

$response = curl_exec($ch);

 

echo $response;