Api Dökümanımız
SMS PAKETİM WEB SERVİCE / API DOKUMANI
Hata Kodları
Önceden tanımlı hata kodları aşağıdaki tabloda ayrıntılarıyla verilmiştir.
HATA KODU | AÇIKLAMA |
---|---|
01 | Hatalı Kullanıcı Adı yada Şifre |
02 | Numara tanımlanmamış |
03 | Tanımsız Action Parametresi |
04 | Yetersiz Kredi |
05 | Xml Düğümü Eksik yada Hatalı |
HATA KODU | AÇIKLAMA |
---|---|
06 | Tanımsız Orginator |
07 | Mesaj Kodu (ID) yok |
08 | null |
09 | Tarih alanları hatalı |
10 | Sms Gönderilemedi |
SMS GÖNDERİMİ
SingleTextSMS ; Aynı mesaj metnini bir yada birden fazla GSM numarasına göndermek için kullanılır.
MultiTextSMS ; Farklı mesaj metinlerini farklı GSM numaralarına göndermek için kullanılır.
Bu her iki XML ifadesinde de karakter uzunluğu standart 160 karakter olup, 160 karakteri geçen mesajlarda giden
her mesajın uzunluğu 153 karaktere düşmektedir.
SingleTextSMS
Aşağıdaki örnekte SingleTextSMS XML ifadesi gösterilmektedir.
SingleTextSMS XML ifadesi örneği :
<SingleTextSMS>
<UserName>test</UserName>
<PassWord>test</PassWord>
<Action>1</Action>
<Mesgbody>deneme mesaj metni</Mesgbody>
<Numbers>5321234587,5551234599,5441234524</Numbers>
<Originator>test</Originator>
<SDate>240320130930</SDate>
</SingleTextSMS>
Yukarıdaki XML ifadesinde;
<UserName> parametre düğümü kullanıcı adınızı,
<PassWord> parametre düğümü, şifrenizi,
<Action> parametre düğümü, gönderilen XML ifadesinin hangi işlev için gönderildiği bilgisini,
<Mesgbody> parametre düğümü,
gönderilecek mesaj içeriğini,
<Numbers> parametre düğümü, mesajın gönderileceği GSM numaralarını,
<Originator> parametre düğümü, mesajın gönderildiği GSM numarasında gönderen kısmında çıkacak ifadeyi,
<SDate> parametre düğümü, GünAyYılSaatDakika şeklinde gönderim zamanını ifade eder.
<UserName> parametre düğümüne değişken aktarılırken parametre değeri gsm no
olmalıdır!
<Originator>Originator bilgisi
<SDate> parametre düğümüne bir değer girmezseniz mesaj gönderim işlemi hemen başlar. Eğer bir değer belirtirseniz
mesaj gönderim işlemi o tarih,saat,dakika yapılır.
XML ifadesi Gateway’a ulaştığında aşağıdaki geri dönüş değeri alınır:
İşlem başarılıysa: “ID: 345678” şeklinde mesaj gönderim paketine ait ID bilgisi döner.
MultiTextSMS
Aşağıdaki örnekte MultiText XML ifadesi gösterilmektedir.
Örnek 5.2.1 – MultiTextSMS XML ifadesi örneği
<MultiTextSMS>
<UserName>test</UserName>
<PassWord>test</PassWord>
<Action>11</Action>
<Messages>
<Message>
<Mesgbody>deneme mesaj metni 1</Mesgbody>
<Number>5321234548</Number>
</Message>
<Message>
<Mesgbody>deneme mesaj metni 2</Mesgbody>
<Number>5551234534</Number>
</Message>
</Messages>
<Originator>Ntest</Originator>
<SDate>240320110930</SDate>
</MultiTextSMS>
Yukarıdaki XML ifadesinde
<UserName> parametre düğümü, kullanıcı adınızı,
<PassWord> parametre düğümü, şifrenizi,
<Action>parametre düğümü, gönderilen XML ifadesinin hangi işlev için gönderildiği bilgisini,
<Mesgbody>parametre düğümü, gönderilecek mesaj içeriğini,
<Numbers>parametre düğümü, mesajın gönderileceği GSM numaralarını,
<Originator>parametre düğümü, mesajın gönderildiği GSM numarasında gönderen kısmında çıkacak ifadeyi,
<SDate>parametre düğümü, GünAyYılSaatDakika şeklinde gönderim zamanını ifade eder.
<UserName>parametre düğümüne değişken aktarılırken parametre değeri gsm no
olmalıdır.
<Originator>parametre düğümüne herhangi bir değer girmezseniz kullanıcıya ait tanımlanmış olan ilk Originator
bilgisi kullanılır.
<SDate>parametre düğümüne bir değer girmezseniz mesaj gönderim işlemi hemen baslar. Bir değer belirtirseniz
mesaj gönderim işlemi o tarih,saat,dakika yapılır.
XML ifadesi Gateway’a ulaştığında aşağıdaki dönüş değeri alınır:
İşlem başarılıysa: “ID: 27765234” şeklinde mesaj gönderim paketine ait Id bilgisi döner.
Action Parametreleri
1 Single text sms
2 Single text sms Türkçe
11 Multi text sms
22 Multi text sms Tükçe
Xml Post
Xml post adresi : https://www.smspaketim.com.tr/api/mesaj_gonder
Xml i post ederken “data” değişkenine atayıp post ediniz.
Örnek Kodlar
Single Sms
Php Örneği
$xml= "<SingleTextSMS><UserName>gsm no</UserName><PassWord>sifre</PassWord><Action>1</Action><Mesgbody>deneme mesaj</Mesgbody><Numbers>5556789898</Numbers><Originator>TEST</Originator><SDate>240320160930</SDate></SingleTextSMS>";
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.smspaketim.com.tr/api/mesaj_gonder");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1) ;
curl_setopt($ch, CURLOPT_POSTFIELDS, "data=".$xml);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$results = curl_exec($ch);
curl_close($ch);
echo $results;
C# Örneği
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.Configuration;
using System.Net;
using System.Text.RegularExpressions;
using System.Data.SqlClient;
using System.IO;
using Microsoft.Win32;
using System.Web;
private string XmlPost(string PostAddress, string xmlData)
{
using (WebClient wUpload = new WebClient())
{
wUpload.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
Byte[] bPostArray = Encoding.UTF8.GetBytes(xmlData);
Byte[] bResponse = wUpload.UploadData(PostAddress, "POST", bPostArray);
Char[] sReturnChars = Encoding.UTF8.GetChars(bResponse);
string sWebPage = new string(sReturnChars);
return sWebPage;
}
}
private void button1_Click(object sender, EventArgs e)
{
string testXml= "<SingleTextSMS><UserName>gsm no</UserName><PassWord>sifre</PassWord><Action>1</Action><Mesgbody>Deneme Mesajı</Mesgbody><Numbers>5556789898</Numbers><Originator>TEST</Originator><SDate>240320160930</SDate></SingleTextSMS>";
string xmldonen = this.XmlPost("https://www.smspaketim.com.tr/api/mesaj_gonder", "data=" + testXml);
MessageBox.Show(xmldonen);
}
Not :Xml ifadesi oluştururken örnekte olduğu gibi xml taglarını birleşik yazarak gönderiniz. Xml taglarından sonra “enter” tuşuna basarak alt satıra geçmeyiniz.
Multi Sms
Php Örneği
$xml= "<MultiTextSMS><UserName>gsm no</UserName><PassWord>şifre</PassWord><Action>11</Action><Messages><Message><Mesgbody>deneme mesaj metni 1</Mesgbody><Number>5557896576</Number></Message><Message><Mesgbody>deneme mesaj metni 2</Mesgbody><Number>5375678943</Number></Message></Messages><Originator> TEST </Originator><SDate></SDate></MultiTextSMS>";
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.smspaketim.com.tr/api/mesaj_gonder");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1) ;
curl_setopt($ch, CURLOPT_POSTFIELDS, "data=".$xml);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$results = curl_exec($ch);
curl_close($ch);
echo $results;
C# Örneği
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.Configuration;
using System.Net;
using System.Text.RegularExpressions;
using System.Data.SqlClient;
using System.IO;
using Microsoft.Win32;
using System.Web;
private string XmlPost(string PostAddress, string xmlData)
{
using (WebClient wUpload = new WebClient())
{
wUpload.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
Byte[] bPostArray = Encoding.UTF8.GetBytes(xmlData);
Byte[] bResponse = wUpload.UploadData(PostAddress, "POST", bPostArray);
Char[] sReturnChars = Encoding.UTF8.GetChars(bResponse);
string sWebPage = new string(sReturnChars);
return sWebPage;
}
}
private void button1_Click(object sender, EventArgs e)
{
string testXml= "<MultiTextSMS><UserName>gsm no</UserName><PassWord>şifre</PassWord><Action>11</Action><Messages><Message><Mesgbody>deneme mesaj metni 1</Mesgbody><Number>5557896576</Number></Message><Message><Mesgbody>deneme mesaj metni 2</Mesgbody><Number>5375678943</Number></Message></Messages><Originator> TEST </Originator><SDate></SDate></MultiTextSMS>";
string xmldonen = this.XmlPost("https://www.smspaketim.com.tr/api/mesaj_gonder", "data=" + testXml);
MessageBox.Show(xmldonen);
}
Not :Xml ifadesi oluştururken örnekte olduğu gibi xml taglarını birleşik yazarak gönderiniz. Xml taglarından sonra “enter” tuşuna basarak alt satıra geçmeyiniz.
Tarih Bazında Rapor
Aşağıdaki örnekte tarih bazında rapor için gereken url gösterilmektedir.
https://smspaketim.com.tr/api/tarih_raporu?UserName=gsm no&PassWord=sifre&Sdate=24032016&Fdate=08042016
url sunucuya ulaştığında aşağıdaki değeri alır:
İşlem başarılıysa: 27765-3-02.10.2006 12:26:59
Burada; 1.değer paket numarası; 2.değer Sms Adedi;4.Değer tarih ve saat olarak gelir.
ID Bazında Rapor
Aşağıdaki örnekte Id bazında rapor için gereken url gösterilmektedir.
https://smspaketim.com.tr/api/mesaj_raporu?UserName=gsm no&PassWord=123456&MsgId=64598895
url sunucuya ulaştığında aşağıdaki değeri alır:
İşlem başarılıysa: 5378974567-1
Burada; 1.değer gönderilen gsm no; 2.değer ise durumu
1 (iletildi)
2 (başarısız)
0 (beklemede)
Kredi Sorgulama
https://smspaketim.com.tr/api/kredi_raporu?UserName=gsm_no&PassWord=sifre
Orginatör Sorgulama
https://smspaketim.com.tr/api/orginator_raporu?UserName=gsm_no&PassWord=sifre