İndir - TOPLU SMS

http://toplu sms.netgsm .com .tr
VER 6.1.0
GENEL UYARILAR
1.Api ile sms göndermek için toplusms.netgsm.com.tr giriş yaptıktan sonra 'Kullanıcı Bilgileri / Api
Talep' menüsünden api talebinde bulununuz. Api ile ilgili teknik değişiklik ve gelişmelerden haberdar
olmak için bu sayfadaki api yetkilisi bölümüne kodlama yapanın bilgilerini girmeniz gerekmektedir.
Ayrıca yine bu sayfadan api kullanımına ip ile sınırlama getirebilirsiniz.
2. Mesaj başlığı kısmına kullanıcınıza tanımlı gönderici adlarından birini giriniz.
3. Api kullanarak bir dakika içinde en fazla 50 paket gönderebilirsiniz. Paketlerde telefon sınırı yoktur.
4. 1 dakika içerisinde 3 kere hatalı sorguda bulunan IP, 1 saatliğine api ile hesap erişimi durdurulur.
5. Destek ve sorularınız için [email protected] mail adresine mail gönderebilirsiniz.
6.Gelen SMS'leri her sorguladığınızda geriye en fazla 100 adet sms döner
7.Yükle miktardaki smslerinizi tek tek (her paketde bir numara) göndermeniz durumunda smsleriniz
sistem tarafından spam olarak algılanıp, kullanıcınızın sms gönderimi bloke edilebilir. Smslenizizi bize
çoklu paketler halinde göndermeniz bu sorunun önüne geçecektir.
Örneğin; 30000 adet numaraya sms göndermek istiyorsanız numaraları 5000 lik 6 parça halinde
gönderebilirsiniz.
SMS GÖNDERİM YÖNTEMLERİ
1.Sesli Mesaj
http://api.netgsm.com.tr/xmlbulkhttppost_seslisms.asp
Parametreler
Alan Adı
Boyut Tip
Açıklama
<company> Max.9
String
Bu alan NETGSM olmalıdır
<usercode> Max.25
string
NetGSM'den alınan kullanıcı adı
<password> Max.25
string
netgsm.com.tr'den alınan kullanıcı şifresi
<startdate>
Max.8
date
Mesajın gönderilmeye başlanacağı tarih (ggaayyyy)
<starttime>
Max.4
time
Mesajın gönderilmeye başlanacağı saat (ssdd)
<stopdate>
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih (ggaayyyy)
<stoptime>
Max.4
time
Mesajın gönderiliminin dururulacağı saat (ssdd)
<audioid>
Max.11
string
Gönderilmek istenen sesid
<no>
Max.12
integer
Mesajın gönderileceği gsm numarasıdır. 12 hanedir.
Örn: 05051234567 veya 905051234567
Örnek Şablon:
<?xml version=”1.0”?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>011220130101</startdate>
<starttime>1828</starttime>
<stopdate>021220130101</stopdate>
</header>
<body>
<audioid>sesid</audioid>
<no>905551234567</no>
<no>905551234568</no>
</body>
</mainbody>
Mesajın gönderimi sonucunda ekrana ileti yada hata verisi döner.
İleti Durumlar
00 123456 Mesaj sorunsuz bir şekilde iletildi.
01 123456 Mesaj gönderim başlangıç tarihinde hata var. Sistem tarihi ile değiştirilip gönderildi.
Mesaj gönderim sonlandırılma tarihinde hata var.Sistem tarihi ile değiştirilip
02 123456 gönderildi.Bitiş tarihi başlangıç tarihinden küçük girilmisş ise, sistem bitiş tarihine
içinde bulunduğu tarihe 24 saat ekler.
00
Sorgu Sonucu :
123456
↓
↓
İleti veya Hata Durumu
Mesaj ID
Hata Durumları
01
Mesaj Tarihi hatalı
02
Mesaj tarihi hatalı
30
Hatalı kullanıcı adı ve şifre
40
Ses dosyası yok
45
Telefon yok
70
Hatalı XML
2.Sesli Mesaj Dosya Gönderim
http://api.netgsm.com.tr/sesli_mesaj_post.php
http://api.netgsm.com.tr/apiornekleri/seslimesaj_user.zip
* Yukarıdaki linkten .php örneğini indirebilirsiniz.
* Bir dakika içerisinde bir dosya gönderebilirsiniz.
Parametreler
http://api.netgsm.com.tr/sesli_mesaj_post.php sayfasına post etmeniz gereken değişkenler
aşağıdaki gibidir.
Alan Adı Boyut
Tip
Açıklama
dosya
string
Yüklemek istediğiniz dosya (İzinli Uzantılar : ".wav")
username Max.25
string
Netgsm sistemine giriş yapmak için kullandığınız kullanıcı adı
password Max.25
string
Netgsm sistemine giris yapmak için kullandığınız şifre
file
Sorgu Sonucu:
232423
↓
Seslimesaj Upload Bulkid
Hata Durumları
10
Dosya kopyalanamadı
20
Geçersiz dosya uzantısı
30
Kullanıcı bilgileri hatalı
40
Dosya boyutu 4MB büyük
3.Fax Gönderme
http://api.netgsm.com.tr/fax_post.php
http://api.netgsm.com.tr/apiornekleri/fax_user.zip
* Yukarıdaki linkten .php örneğini indirebilirsiniz.
* Bir dakika içerisinde bir dosya gönderebilirsiniz.
Parametreler
http://api.netgsm.com.tr/fax_post.php sayfasına post etmeniz gereken değişkenler aşağıdaki
gibidir.
Alan Adı Boyut Tip
Açıklama
dosya
string
Yüklemek istediğiniz dosya(İzinli Uzantılar: ".txt", ".jpeg",".jpg",
".png", ".gif", ".pdf", ".doc",".docx",".xls",".xlsx")
username Max.25
string
Netgsm sistemine giriş yapmak için kullandığınız kullanıcı adı
password Max.25
string
Netgsm sistemine giris yapmak için kullandığınız şifre
telefon
Max.12
integer
Mesajın gönderileceği gsm numarasıdır. 11 hanedir. Örn:
05051234567
startdate
Max.12
date
Mesajın gönderilmeye başlanacağı tarih(ggaayyyyssdd)
* Boş bırakılırsa mesajınız hemen gider.
stopdate
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih(ggaayyyyssdd)
* Boş bırakılırsa mesajın bitiş zamanı sistem tarafından belirlenir.
file
Sorgu Sonucu:
232423
↓
Fax Upload Bulkid
Hata Durumları
10
Dosya kopyalanamadı
20
Geçersiz dosya uzantısı
30
Kullanıcı bilgileri hatalı
40
Dosya boyutu 4MB büyük
50
Dosya fax formatına çevrilemedi.
60
Başlangıç ve bitiş tarihi hatalı
70
Telefon Numarası Hatalı
4.Get Metodu İle Gönderim
http://api.netgsm.com.tr/bulkhttppost.asp
Parametreler
Adı
Boyut
Tip
Açıklama
usercode
Max.25
string
Netgsm sistemine giriş yapmak için kullandığınız kullanıcı adı
password
Max.25
string
Netgsm sistemine giris yapmak için kullandığınız şifre
gsmno
Max.12
integer
Mesajın gönderileceği gsm numarasıdır. 12 hanedir.
Örn: 05051234567 veya 905051234567
message
Max.917 string
Mesaj metnidir. Tarifenizdeki maksimum karakterden uzun
olmamalıdır. Standart maksimum karakter 917'dur.
msgheader Max.211
string
Kullanıcınızda tanımlı olan mesaj başlığınız.
* Eğer mesajlarınızın Abone Numaranız ile göndermek
istiyorsanız; bu alana abone numaranızı başında "0" olmadan
yazınız.
startdate
Max.12
date
Mesajın gönderilmeye başlanacağı tarih (ggaayyyyssdd)
* Boş bırakılırsa mesajınız hemen gider.
stopdate
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih (ggaayyyyssdd)
* Boş bırakılırsa mesajın bitiş zamanı sistem tarafından belirlenir
Örnek Şablon:
http://api.netgsm.com.tr/bulkhttppost.asp?usercode=deneme&password=1234&
gsmno=5051234567,5441234568&message=testmesaji&msgheader=MesajBaslik&startdate=3001201
21721&stopdate=300120122321
Mesajın gönderimi sonucunda ekrana ileti yada hata verisi döner.
İleti Durumları
00 123456 Mesajınız işleme alındı.
01 123456 Mesaj gönderim baslangıç tarihinde hata var. Sistem tarihi ile değiştirilip işleme alındı.
Mesaj gönderim sonlandırılma tarihinde hata var.Sistem tarihi ile değiştirilip işleme
02 123456 alındı.Bitiş tarihi başlangıç tarihinden küçük girilmiş ise, sistem bitiş tarihine içinde
bulunduğu tarihe 24 saat ekler.
00
Sorgu Sonucu :
123456
↓
↓
İleti veya Hata Durumu
Mesaj ID
Hata Durumları
10
Telefon Numarası Hatalı
20
Mesaj Metninde boş olmasından veya maksimum mesaj karakterini geçilmesi
30
Kullanıcı bilgisi bulunamadı
40
Geçersiz Mesaj Başlığı (başlık sisteme tanımlanmamış)
50
Kullanıcının Kredisi Yok
60
Telefon Numarası hiç tanımlanmamış
70
Mesaj başlığı hatalı
4.Post Metodu İle Gönderim
a. Bir (1) Mesajı N Adet Kişiye Gönderme (1:N)
http://api.netgsm.com.tr/xmlbulkhttppost.asp
Parametreler
Alan Adı
Boyut
Tip
Açıklama
<company>
Max.9
String
Bu alan NETGSM olmalıdır
Eğer mesajlarınızın Türkçe Karakter içermesini istiyorsanız;
* <company dil='TR'>NETGSM</company> tagını bu şekilde güncelleyiniz.
* <?xml tagınızda encoding değeri belirtmeden <?xml version='1.0'?> şeklinde güncelleyiniz.
* Bazı programlama dillerinde XML inizi post eden foksiyonunuzda encoding değeri belirtilmesi
gerekebiliyor. Bu durumda Encoding değerinizin UTF8 olduğuna dikkat ediniz.
* Eğer mesajlarınızın Abone Numaraniz ile göndermek istiyorsanız; <company>
NETGSM_200A011A_70 </company> veya <msgheader>abone_numaranız</msgheader>
tagınızı bu şekilde güncelleyiniz.
<usercode>
Max.25
string
NetGSM'den alınan kullanıcı adı
<password>
Max.25
string
netgsm.com.tr'den alınan kullanıcı şifresi
<startdate>
Max.12
date
Mesajın gönderilmeye başlanacağı tarih(ggaayyyyssdd)
* Boş bırakılırsa mesajınız hemen gider.
(<startdate></startdate>)
<stopdate>
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih(ggaayyyyssdd)
* Boş bırakılırsa mesajın bitiş zamanı sistem tarafından
belirlenir.(<stopdate></stopdate>)
<type>
Max.3
string
n mesaj n adet numaraya gönderilecek(n:n) veya
1 mesaj n adet numaraya gönderilecek(1:n)
string
Kullanıcınızda tanımlı olan mesaj başlığınız.
string
Mesaj metnidir. Tarifenizdeki maksimum karakterden uzun
olmamalıdır. Standart maksimum karakter 917 dur. XML Parse
işlemlerinde Türkçe karakterler ve özel işaretlerin sorun
yaratmamasi için, mesaj metni <![CDATA[Mesaj metni bu
alanda olacak]] > taglari içinde yer almalıdır.
<msgheader> Max.11
<msg>
Max.917
<no>
Max.12
integer
Mesajın gönderileceği gsm numarasıdır. 12 hanedir.
Örn: 05051234567 veya 905051234567
Örnek Şablon:
<?xml version=”1.0”?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>011220130101</startdate>
<stopdate>021220130101</stopdate>
<type>1:n</type>
<msgheader>MesajBaslik</msgheader>
</header>
<body>
<msg><![CDATA[Deneme Mesaji]]></msg>
<no>905551234567</no>
<no>905551234568</no>
</body>
</mainbody>
Mesajın gönderimi sonucunda ekrana ileti yada hata verisi döner.
İleti Durumları
00 123456 Mesajınız işleme alındı.
01 123456
Mesaj gönderim baslangıç tarihinde hata var. Sistem tarihi ile değiştirilip işleme
alındı.
Mesaj gönderim sonlandırılma tarihinde hata var.Sistem tarihi ile değiştirilip işleme
02 123456 alındı.Bitiş tarihi başlangıç tarihinden küçük girilmiş ise, sistem bitiş tarihine içinde
bulunduğu tarihe 24 saat ekler.
Sorgu Sonucu :
00
123456
↓
↓
İleti veya Hata Durumu
Mesaj ID
Hata Durumları
20
Mesaj metninde ki problemden dolayı gönderilemedi.
30
Geçersiz Kullanıcı adı veya şifresi.
40
Geçersiz Mesaj Başlığı
50
Kullanıcının yeterli kredisi yok
70
Geçersiz XML formatı
90
Mesaj sistem tarafindan kabul edilmedi. Daha sonra tekrar deneyin
100
Sistem Hatası olustu sistem yöneticinizi arayın
b. N Mesajı N Adet Kişiye Gönderme (N:N)
Örnek Şablon:
<?xml version=”1.0”?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>011220130101</startdate>
<stopdate>021220130101</stopdate>
<type>n:n</type>
<msgheader>MesajBaslik</msgheader>
</header>
<body>
<msg><![CDATA[Deneme Mesaji]]></msg>
<mp><msg><![CDATA[Mesaj1]]></msg><no>905551234567</no></mp>
<mp><msg><![CDATA[Mesaj2]]></msg><no>905551234568</no></mp>
</body>
</mainbody>
Mesajın gönderimi sonucunda ekrana ileti yada hata verisi döner.
İleti Durumları
00 123456 Mesajınız işleme alındı.
01 123456 Mesaj gönderim baslangıç tarihinde hata var. Sistem tarihi ile değiştirilip işleme alındı.
Mesaj gönderim sonlandırılma tarihinde hata var.Sistem tarihi ile değiştirilip işleme
02 123456 alındı.Bitiş tarihi başlangıç tarihinden küçük girilmiş ise, sistem bitiş tarihine içinde
bulunduğu tarihe 24 saat ekler.
Sorgu Sonucu :
00
123456
↓
↓
İleti veya Hata Durumu
Mesaj ID
Hata Durumları
20
Mesaj metninde ki problemden dolayı gönderilemedi.
30
Geçersiz Kullanıcı adı veya şifresi.
40
Geçersiz Mesaj Başlığı
50
Kullanıcının yeterli kredisi yok
70
Geçersiz XML formatı
90
Mesaj sistem tarafindan kabul edilmedi. Daha sonra tekrar deneyin
100
Sistem Hatası olustu sistem yöneticinizi arayın
SORGULAMA YÖNTEMLERİ
1.Gelen Sms Sorgulama
http://api.netgsm.com.tr/xmlgelenmesaj.asp
Örnek Şablon:
<?xml version=”1.0”?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>011220130101</startdate>
<stopdate>021220130101</stopdate>
</header>
</mainbody>
Sorgu Sonucu :
5xxxxxxxxx
Gelen Mesaj
21.09.2012 10:02:45
↓
↓
↓
Gönderen TelefonNo
Mesaj
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek mesaj yok
50
Tarih formatı hatalı
60
Tarih aralığı 30 günden fazla
70
Hatalı XML
2.Gelen Fax Sorgulama
http://api.netgsm.com.tr/xmlgelenfax.asp
Örnek Şablon:
<?xml version=”1.0”?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>011220130101</startdate>
<stopdate>021220130101</stopdate>
</header>
</mainbody>
Mesajın geldiği Tarih
Sorgu Sonucu :
8xxxxxxxxx
21.09.2012
276.908
↓
↓
↓
↓
Tarih
Dosya Boyutu
İleti
Gönderen TelefonNo
SUCCESS
indir
↓
Durumu İşlem
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek mesaj yok
50
Tarih formatı hatalı
60
Tarih aralığı 30 günden fazla
70
Hatalı XML
3.Gelen Sesli Mesaj Sorgulama
http://api.netgsm.com.tr/xmlgelenseslimesaj.asp
Örnek Şablon:
<?xml version=”1.0”?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>011220130101</startdate>
<stopdate>021220130101</stopdate>
</header>
</mainbody>
Sorgu Sonucu :
"0216xxxxxxx" <0216xxxxxxx>
↓
Gönderen TelefonNo
21.09.2012 18:24:43
27
indir
↓
↓
↓
Tarih
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek mesaj yok
50
Tarih formatı hatalı
60
Tarih aralığı 30 günden fazla
70
Hatalı XML
Mesaj Süresi
İşlem
4.Gelen Sesli Mesaj Sorgulama
http://api.netgsm.com.tr/xmlyuklenenseslimesaj.asp
Örnek Şablon:
<?xml version='1.0'?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<startdate>011220130101</startdate>
<stopdate>021220130101</stopdate>
</header>
</mainbody>
Sorgu Sonucu:
232423
0216xxxxxxx
↓
21.09.2012 18:24:43
↓
Audio ID
Gönderen TelefonNo
27
↓
↓
Tarih
Mesaj S.resi
indir
↓
İşlem
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek sesli mesaj yok
50
Tarih formatı hatalı
60
Tarih aralığı 30 günden fazla
70
Hatalı XML
5.Gönderici Adı (Mesaj Başlığı) Sogulama
http://api.netgsm.com.tr/get_msgheader.asp
Parametreler
Adı
Boyut
Tip
Açıklama
usercode
Max.25
string
Netgsm sistemine giriş yapmak için kullandığınız kullanıcı adı
password
Max.25
string
Netgsm sistemine giris yapmak için kullandığınız şifre
Örnek Şablon:
http://api.netgsm.com.tr/get_msgheader.asp?usercode=xxxx&password=xxxx
Gönderici adı sorgulama sonucunda ekrana gönderici adıları ya da hata verisi döner.
Sorgu Sonucu :
* 0850xxxxxxx
* 1.Gönderici Adı
* 2.Gönderici Adı
* 3.Gönderici Adı ...
Hata Durumları
30
Kullanıcı bilgisi bulunamadı
6.Kredi Sorgulama
http://api.netgsm.com.tr/get_kredi.asp
Parametreler
Alan Adı
Boyut
Tip
Açıklama
usercode
Max.25
strin
NetGSM'den alınan kullanıcı adı
g
password
Max.25
strin
netgsm.com.tr'den alınan kullanıcı şifresi
g
Örnek Şablon:
http://api.netgsm.com.tr/get_kredi.asp?usercode=kullaniciadi&password=sifre
Mesajin gönderimi sonucunda ekrana ileti yada hata verisi döner.
Sorgu Sonucu :
00
1,905
↓
↓
İleti veya Hata Durumu
Mesaj ID
Sorgu sonucu 00'dan sonraki boşluk kullanıcının kredi miktarı verilir.
Hata Durumlari
30
Geçersiz Kullanıcı adı veya şifresi.
7.Paket - Kampanya Sorgulama
http://api.netgsm.com.tr/xmlpaketkampanya.asp
Örnek Şablon:
<?xml version='1.0'?>
<mainbody>
<header>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<stip>1</stip>
</header>
</mainbody>
Sorgu Sonucu :
6000
Adet
↓
↓
Kalan Paket Miktar
Paket Miktar Türü
SMS Hizmeti
↓
Paket Türü
Hata Durumlar
30
Geçersiz Kullanıcı adı ve şifre
40
Kullanıcının tanımlı paket yok.
70
XML Hatası
8.Mesaj ID'ye Göre SMS Sorgulama
» İleti durumuna göre adetlerinin sorgulanması
http://api.netgsm.com.tr/httpbulkrapor.asp
Parametreler
Alan Adı
Tip
Açiklama
usercode Max.25
string
NetGSM'den alınan kullanıcı adı
password Max.25
string
netgsm.com.tr'den alınan kullanıcı şifresi
bulkid
int.
Sorgulanacak olan Toplu SMS'e ait Buk ID'si
int.
Mesajın gönderildiği telefon numarasıdır.
Örn 1 :5051234567 veya 05051234567
Örn 2 :5051234567,5051234567 veya 05051234567,05051234567
telno
Yeni
Boyut
Max.11
Type
Max.1
İnt.
Sorgulama tipini belirlemek için kullanılır.
0: Tek bulkid'ye göre sorgulama yapar.
1: Birden çok bulkid'ye göre sorgulama yapar.
(Not: Bu durumda bulkid parametresi 43234, 53453, 54332, ....gibi
yazılır.)
2: Tarih araligiığında sorgu yapabilmek için kullanılır.
(Not: Parametrenin bu değerinde bulkid parametresine girilen değer
dikkate alınmaz.)
bastar
Max.12
date
Mesajın gönderilmeye başlanacağı tarih (ddmmyyyyhhii)
bittar
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih (ddmmyyyyhhii)
mbaslik
Max.11
string
Mesajın gönderen kısmında görünecek olan başlıktır. En az 3, en
fazla 11 karakter olmalıdır.
0: İletilmeyi bekleyenler
1: İletilmiş olanlar
2: Zaman aşımına uğramış olanlar
3: Hatalı veya kısıtlı numara
4: Operatöre gönderilemedi
11: Operatör tarafından kabul edilmemiş olanlar
12: Gönderim hatası olanlar
13: Mükerrer olanlar
100: Tüm mesaj durumları
status
Max.1
İnt.
version
Max.1
İnt.
0: Olursa veya hiç gönderilmezse status değerlerindeki 11,12,13
durumları 2(zaman aşımına uğramış ) olarak kabul edilir.
1: Gönderilirse status değerleri aynen geçerlidir.
Yeni
2 : Gönderilirse status değerleri aynen geçerlidir.
Rapor detaylı bir şekilde gösterilir. (Operatör, mesaj boyu, iletim
tarihi, dönen hata kodu bilgileri de eklenir. )
Hata kodu açıklamaları
0: Hata yok
101: Mesaj Kutusu Dolu
102: Kapalı ya da Kapsama Dışında
103: Meşgul
104: Hat Aktif Değil
105: Hatalı Numara
106: SMS Red, Karaliste
107: Zaman Aşımı
111: Mobil Cihaz Hatası
112: Mobil Cihaz Sms Gönderime Kapalı
113: Mobil Cihaz Desteklemiyor
114: Yönlendirme Başarısız
115: Çağrı Yasaklandı
116: Tanımlanamayan Abone
117: Yasadışı Abone
119: Sistemsel Hata
Operatör kodu açıklamaları
10: Vodafone
20: Avea
30: Turkcell
40: Netgsm
50: TTNET Mobil
60: Türktelekom
70: Diğer Operatörler
Örnek Şablon:
http://api.netgsm.com.tr/httpbulkrapor.asp?usercode=xxxx&password=yyyy&bulkid=32443&
type=0&status=0
+ Hata olmadığı durumda dönen cevap;
•
•
•
905550000000
905550000001
905550000002 olur.
Örnek Şablon:
http://api.netgsm.com.tr/httpbulkrapor.asp?usercode=xxxx&password=yyyy&bulkid=32443&
type=1&status=0
+ Eğer type=1 veya type=2 ise;
•
•
•
53545 905550000000 0 10 1 00.00.0000 00:00:00 0
53545 905550000001 1 20 2 01.05 2014 22:25:00 0
53545 905550000002 2 30 1 01.05.2014 22:24:00 102
Sorgu Sonucu :
53545
505550000000
0
10
1
01.05.14 22:24
0
↓
↓
↓
↓
↓
↓
↓
Mesaj ID
Cep Telefon
Mesaj Durumu Operatör Kodu Mesaj Boyu İletilme Tarihi
Dönen
Hata
Kodu
9.Mesaj ID'ye Göre SesliSms Sorgulama
» İleti durumuna göre adetlerinin sorgulanması
http://api.netgsm.com.tr/httpbulkrapor_seslisms.asp
Parametreler
Alan Adı Boyut
Tip
Açiklama
usercode
Max.25
string
NetGSM'den alınan kullanıcı adı
password Max.25
string
netgsm.com.tr'den alınan kullanıcı şifresi
bulkid
int.
Sorgulanacak olan Toplu SMS'e ait Buk ID'si
Type
Max.1
int.
Sorgulama tipini belirlemek için kullanılır.
0: Tek bulkid'ye göre sorgulama yapar.
1: Birden çok bulkid'ye göre sorgulama yapar. (Not: Bu durumda
bulkid parametresi 43234, 53453, 54332, ....gibi yazılır.)
2: Tarih araligiığında sorgu yapabilmek için kullanılır. (Not:
Parametrenin bu değerinde bulkid parametresine girilen değer
dikkate alınmaz.)
bastar
Max.12
date
Mesajın gönderilmeye başlanacağı tarih (ddmmyyyyhhii)
bittar
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih (ddmmyyyyhhii)
status
Max.1
Int.
0: Cevaplanmayı bekleyenler
1: Cevaplananlar
2: Cevaplanmayanlar
tus
Max 2
Int
Arama yapıldığında komut edilen tuş numarası. Tuşlanan rakam
eğer 10 şeklinde gönderilirse hiç bir tuşa basmayanlar listelenir.
Örnek Şablon:
http://api.netgsm.com.tr/httpbulkrapor_seslisms.asp?usercode=xxxx&password=yyyy&
bulkid=32443&type=0&status=0&tus=1
+ Hata olmadığı durumda dönen cevap;
Sorgu Sonucu :
53545
0505550000000
0
1
↓
↓
↓
↓
Mesaj ID
Cep Telefon
Mesaj Durumu
Hata Durumları
30
Geçersiz Kullanıcı adı veya şifresi.
60
Sorgulama sonucunda kayit bulunamadı
NOT
Bütün numaralar birbirlerinden <BR> kodu ile ayrılmiştir.
Tuşlanan Rakam
10.Santral Görüşme Listesi Sorgulama
http://api.netgsm.com.tr/xmlsantralgorusme.asp
Örnek Şablon:
<?xml version='1.0'?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<startdate>010120140101</startdate>
<stopdate>070120140101</stopdate>
</header>
</mainbody>
Sorgu Sonucu :
01.01.2014 13:53:00
3129110911
108
https://www.netgsm.com.tr/xx.wav
↓
↓
↓
↓
Tarih
Aranan Numara Arayan Numara
Süre Ses Dosyası
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek görüşme yok
50
Tarih formatı hatalı
60
Tarih aralığı 7 günden fazla (Eğer tarih alanlarını boş gönderirseniz bugünden itibaren son 7
günlük listeyi görüntüler)
70
Hatalı XML
11.Ses Görüşme Sorgulaması
http://api.netgsm.com.tr/xmlsesgorusme.asp
Parametreler
Adı
Boyut
Tip
Açıklama
usercode
Max.25
string
Netgsm sistemine giriş yapmak için kullandığınız kullanıcı adı
password
Max.25
string
Netgsm sistemine giris yapmak için kullandığınız şifre
date
Max.12
date
Aramanın yapıldığı tarih ( ddmmyyyyhhii)
* Boş bırakılırsa sorgulama yapılan günün kayıtları listelenir.
Max.1
Arama yönünü belirlemek için kullanılır.
1: Gelen aramalar
integer 2: Giden aramalar
3: Cevapsız aramalar
4: Bütün aramalar
direction
Örnek Şablon:
<?xml version='1.0'?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<date>010520140101</date>
<direction>1</direction>
</header>
</mainbody>
Sorgu Sonucu :
3129110911
01.05.2014 13:53:00
00:00:03
1
↓
↓
↓
↓
Numara
Tarih
Süre
Arama Yönü
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek görüşme yok
50
Tarih formatı hatalı
70
Hatalı XML
ÖRNEK APİ
KODLARI
1.ASP Örneği
ASP de yazılmış api örneğimize:http://api.netgsm.com.tr/apiornekleri/asp_netgsm.zip adresinden
ulasabilirsiniz,
Örnek Şablon:
Function XMLPOST(ByVal PostAddress, ByVal xmlData)
On Error Resume Next
Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
objXMLHTTP.open "POST",PostAddress,False
bjXMLHTTP.send xmlData
if Err then
Err.Clear
XMLPOST = "hata"
Set objXMLHTTP = Nothing
Exit Function else
XMLPOST = objXMLHTTP.responseText
Set objXMLHTTP = Nothing end
if
End Function
2.C# Örneği
C# da yazılmış api örneğimize : http://api.netgsm.com.tr/apiornekleri/c_netgsm.zip adresinden
ulaşabilirsiniz.
Örnek Şablon:
private string XMLPOST(string PostAddress,string xmlData)
{
try
{
WebClient wUpload = new WebClient();
Byte[] bPostArray = Encoding.ASCII.GetBytes(xmlData);
Byte[] bResponse = wUpload.UploadData(PostAddress,"POST",bPostArray);
Char[] sReturnChars = Encoding.ASCII.GetChars(bResponse);
string sWebPage = new string(sReturnChars);
return sWebPage;
}
catch
{
return "-1";
}
}
3.VB Örneği
VB de yazılmış api örneğimize : http://api.netgsm.com.tr/apiornekleri/vb_netgsm.zip adresinden
ulaşabilirsiniz
Örnek Şablon:
Private Function XMLPOST(ByVal PostAddress As String, ByVal xmlData As String) As
String
{
On Error GoTo hata_kontrol
Dim XMLSender As New MSXML.XMLHTTPRequest
XMLSender.open "POST", PostAddress, False
XMLSender.send xmlData
XMLPOST = XMLSender.responseText
Exit Function
hata_kontrol:
XMLPOST = ""
End Function
}
4.VB.NET Örneği
Örnek Şablon:
.Private Function XMLPOST(ByVal PostAddress As String, ByVal xmlData As String) As
String
Try
Dim wUpload As Net.WebClient = New System.Net.WebClient
Dim bPostArray As Byte() = Encoding.ASCII.GetBytes(xmlData)
Dim bResponse As Byte() = wUpload.UploadData(PostAddress, "POST", bPostArray)
Dim sWebPage As String = Encoding.ASCII.GetChars(bResponse)
XMLPOST = sWebPage
Catch ex As Exception
XMLPOST = "" End
Try
End Function
5.PHP Örneği
PHP de yazılmış api örneğimize : http://api.netgsm.com.tr/apiornekleri/php_netgsm.zip adresinden
ulaşabilirsiniz
Örnek Şablon:
function XMLPOST($PostAddress,$xmlData){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$PostAddress);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt( $ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml"));
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlData);
connection.setRequestMethod("POST");
$result = curl_exec($ch);
return $result;
6.DELPHİ Örneği
DELPHİ de yazılmış api örneğimize : http://api.netgsm.com.tr/apiornekleri/delphi_netgsm.zip
adresinden ulaşabilirsiniz
Örnek Şablon:
//uses IdHTTP
functionxmlpost(url,postdata:string):String;
//Dikkat!!! indy bu component 'i ssl destegi vermedigi için url parametresi http:// ile baslamali
var IdHTTP1: TIdHTTP;
str1:TStringList;
begin try try
IdHTTP1:=TIdHTTP.Create(nil);
str1:=TStringList.Create;
str1.Text:=postdata;
result:=IdHTTP1.Post(url, str1);
except end;
finally
FreeAndNil(str1);
FreeAndNil(IdHTTP1);
end; end;
7.JAVA Örneği
JAVA de yazılmış api örneğimize : http://api.netgsm.com.tr/apiornekleri/java_netgsm.zip adresinden
ulaşabilirsiniz
•
İmport Java 10. *
•
İmport Java.Net. *
Örnek Şablon:
public static void main(String[] args)
{
System.out.println("SMS Gönderiliyor..");
try{
URL u = new URL("https://api.netgsm.com.tr/xmlbulkhttppost.asp");
URLConnection uc = u.openConnection();
HttpURLConnection connection = (HttpURLConnection) uc;
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
OutputStream out = connection.getOutputStream();
OutputStreamWriter wout = new OutputStreamWriter(out, "UTF-8");
wout.write("<?xml version='1.0'?>"+
" <mainbody>"+
" <header>"+
"<company>NETGSM</company>"+
"<usercode>Kullanici_adi</usercode>"+
" <password>Sifre</password>"+
" <startdate></startdate>"+
" <stopdate></stopdate>"+
" <type>1:n</type>"+
" <msgheader>BASLIK</msgheader>"+
" </header>"+
" <body>"+
" </header>"+
" <body>"+
" <msg><![CDATA[Deneme Mesaji]]></msg>"+
" <no>905001234567</no>"+
" </body>"+
" </mainbody>");
wout.flush();
out.close();
InputStream in = connection.getInputStream();
while ((c = in.read()) != -1) System.out.write(c);
int c;
System.out.println();
in.close();
out.close();
connection.disconnect();
}
catch (IOException e) {
System.err.println(e);
e.printStackTrace();
}}}
Durum
Açıklama
70
Zorunlu alanlarda (kullanıcı adı, şifre, başlık, mesaj ve telefon) eksik yada hatalı
olması
30
Kullanıcı adı veya şifre hatalı
40
Geçersiz başlık
50
Yetersiz bakiye
60
İlgili BulkID rapor kaydı bulunamadı
90
Kanal kapalı
20
Mesaj uzunluğu belirlenen sınırı aştı
100-101
Sistem hatası
NETGSM SOAP SERViSi
VERİ TİPLERİ
Veri Açıklama
Key Alanı Servis Methodu
Kullanıcı Adı
username
Sisteme kayıtlı kullanıcı adı.
Şifre
password
Sisteme kayıtlı şifre.
Başlık
header
Sistemde kayıtlı en az 3, en fazla 11 olan mesaj başlığı
Mesaj içeriği
msg,msg[ ]
SMS metninin yer alacağı alandır.Nn sms
gönderimlerinde array olarak gönderilmeli.
SMS gönderilecek
telefonlar
gsm[ ]
SMS'in gideceği numaraları temsil eder array
gönderilmeli
Dil kodlama
encoding
Türkçe karakter desteği isteniyorsa bu alana TR
girilmeli.
Kanal Seçimi
company
_200A011A_70 girildiğinde sms başlığında abone
numarası gidecektir.
Başlama Tarihi
startdate
İleri tarihli sms gönderildiğinde bağlangıç tarihi
Bitiş Tarihi
stopdate
İleri tarihli sms gönderildiğinde bitiş tarihi
Görev Numarası
bulkid
SMS paketi başarılı bir şekilde iletildi ise geriye dönen
görev numarası
SMS durumu
status
Rapor prosedüründe istenilen durumu temsil eder.
Toblo-3 de rapor durumları yer almaktadir.
Versiyon
version
Rapor prosedürüne “1” değeri gönderildiğinde tüm rapor
durumları geriye döner ve status dikkate alynmaz. “0”
oldugunda status dikkate alınır.
telno[ ]
Sms'in gönderildiği telefon numaralarıdır.Değerler array
şeklinde gönderilmerlidir.
detail
Rapor prosedürüne “1” değeri gönderildiğinde
gönderilen sms'in detaylı rapor bilgisi döner.
Telefon numarası
Detaylı Rapor
Yeni
Yeni
DÖNEN CEVAPLAR
Durum
Açıklama
70
Zorunlu alanlarda (kullanıcı adı, şifre, başlık, mesaj ve telefon) eksik yada hatalı olması.
30
Kullanıcı adı veya şifre hatalı.
40
Geçersiz başlık.
50
Yetersiz bakiye.
60
İlgili BulkID rapor kaydı bulunamadı.
90
Kanal kapalı.
20
Mesaj uzunluğu belirlenen siniri aştı.
100-101 Sistem hatası.
RAPOR DURUMLERI
Durum
Açıklama
0
İletilmeyi bekleyenler.
1
İletilmiş olanlar.
2
Zaman aşımına uğramış olanlar.
3
Red edilmi?ş olanlar.
4
Hatalı veya kısıtlı numara.
11
Operatör tarafindan kabul edilmemiş olanlar.
12
Gönderim hatası olanlar.
13
Mükerrer olanlar.
NETGSM SOAP öRNEKLERi
»Servis URL : http://soap.netgsm.com.tr:8080/Sms_webservis/SMS?wsdl
Geliştirme yaptığımız her dildeki programınıza kolaylıkla entegre edebilirsiniz.
1.DELPHİ SOAP Örneği
api örneğimize :http://api.netgsm.com.tr/soapornekleri/delphisoap.zip adresinden ulaşabilirsiniz
2.JAVA Örneği
Java örneği için NetBeans IDE 7.1.1 kullanılmıştır. Gerekli Java sürümü'de kurulu olmasi gerekir.
a)File sekmesinden New Project > Java > Java Application seçilir Next e basılır.
b) Project Name: Proje adı yazılır ve Finish 'e basılır.
c) Oluşturulan proje dosyamıza sağ tıklayıp New > Web Service Client seçilir.
d) Gelen pencerede WSDL URL seçip yukaıida belirtilen URL’yi yazınız.
e)Web servis sunucusundan gerekli dosyalar aşağıdaki gibi compile edilmiş
olmalıdır.
f ) SMS servisin altında bulunan prosedür sürükleyip çalışma alanına atarak
prosedürleri kullanabilirsiniz.
g) Aşağıda Java Örneği bulunmaktadır.
String donen_deger="";
//--------------------------1n sms gönderimi------------------------------------------List < String > myList1n = new ArrayList < String >() ;
myList1n.add ( "5050000000" );
donen_deger=smsGonder1N(
"kullanici_adi",
"sifre",
null,
"baslik",
"deneme mesaji",
"TR", //dil kodlamasi
"210520121215", //baslama tarihi (ileri tarihli sms gönderilecekse)
"210520121245");//bitis tarihi (ileri tarihli sms gönderilecekse)
System.out.println("1n sms durum="+donen_deger);
//--------------------------Nn sms gönderimi------------------------------------------List < String > myListnn_tel = new ArrayList < String >() ;
myListnn_tel.add ( "5050000000" );
myListnn_tel.add ( "5420000000" );
myListnn_tel.add ( "5320000000" );
List < String > myListnn_msg = new ArrayList < String >() ;
myListnn_msg.add ( " webservis deneme smsi 1" );
myListnn_msg.add ( " webservis deneme smsi 2" );
myListnn_msg.add ( " webservis deneme smsi 3" );
donen_deger=smsGonderNn(
"kullanici_adi",
"sifre",
null,
"baslik",
myListnn_msg, //mesaj array
myListnn_tel, //telefon array
"TR", //Dil kodlama
"210520121215", //baslama tarihi (ileri tarihli sms gönderilecekse)
"210520121245");//bitis tarihi (ileri tarihli sms gönderilecekse)
System.out.println("Nn sms durum="+donen_deger);
//--------------------------Kredi Sorgula------------------------------------------donen_deger=kredi("kullanici_adi", "sifre");
System.out.println("kredi durum="+donen_deger);
// --------------------------Rapor Sorgula------------------------------------------donen_deger=rapor("kullanici_adi", "sifre", "bulkid", 1, 0);
System.out.println("rapor durum="+donen_deger);
//--------------------------GelenSMS Sorgula-------------------------------------donen_deger=gelensms("kullanici_adi", "sifre");
System.out.println("Gelen SMS ler="+donen_deger);
»Örneği indirebileceğiniz adres : http://api.netgsm.com.tr/netgsm_soap_client.zip
3.PHP Örneği
api örneğimize :http://api.netgsm.com.tr/soapornekleri/phpsoap.zip adresinden ulaşabilirsiniz.
Örnek Şablon:
PHP de Soap servisimizi kullanmak istiyorsanız öncelikle soap d11 nizi kurmanız
gerekmektedir.
<?php
$client = new SoapClient("http://soap.netgsm.com.tr:8080/Sms_webservis/SMS?wsdl");
// 1-n mesajlarınızda (1 mesajı n tane telefon numarasına gönderim)
$Result = $client->sms_gonder_1n(array('username'=>'kullanici_adiniz', 'password' => ' 'sifreniz',
'company' => '','header' => 'gonderici_adiniz','msg' => 'Üü Ğğ İı Öö Çç Şş Öö','gsm' =>
'cep_no','encoding' => 'TR','startdate' => '','stopdate' => '',)); // Mesaj Gönderirken
print_r($Result);
echo "Karsi sunucudaki kullanilabilir metodlar:<br/><pre>";
$allMethods = $client->__getFunctions();
print_r($allMethods);
echo "</pre>";
echo "<br/><pre>";
echo "Karsi sunucudaki kullanilabilir Alanları:<br/><pre>";
$allTypes = $client->__getTypes();
print_r($allTypes);
echo "</pre>";
?>
4.C# Örneği
Api örneğimize : http://api.netgsm.com.tr/soapornekleri/csharpsoap.zip adresinden
ulaşabilirsiniz.
Örnek Şablon:
// 1-n mesajlarınızda (1 mesajı n tane telefon numarasına gönderim)
String[] array_tel = new String[] { "xxxxxxxxxx", "xxxxxxxxxx" };
netgsm.smsnnClient sms_gonder = new netgsm.smsnnClient();
String gelen_cevap = sms_gonder.sms_gonder_1n("kullanici_adi", "sifre", "", "gonderici_Adi",
"test mesaj" + DateTime.Now, array_tel, "TR", "", "");
MessageBox.Show(gelen_cevap);
// N-n mesajlarınızda (N tane mesajı n tane telefon numarasına gönderim)
String[] array_tel = new String[] { "xxxxxxxxxx", "xxxxxxxxxx" };
String[] array_msg = new String[] { "test mesajı" + DateTime.Now, "Tesst" + DateTime.Now };
netgsm.smsnnClient sms_gonder = new netgsm.smsnnClient();
String gelen_cevap = sms_gonder.sms_gonder_nn("kullanici_adi", "sifre", "", "gonderici_Adi",
array_msg, array_tel, "TR", "", "");
MessageBox.Show(gelen_cevap);
VER 6.1.0 Sürümü İle Gelen Yenilikler
Mesaj ID'ye Göre SMS Sorgulama
» İleti durumuna göre adetlerinin sorgulanması
http://api.netgsm.com.tr/httpbulkrapor.asp
Parametreler
Alan Adı
Tip
Açiklama
usercode Max.25
string
NetGSM'den alınan kullanıcı adı
password Max.25
string
netgsm.com.tr'den alınan kullanıcı şifresi
bulkid
int.
Sorgulanacak olan Toplu SMS'e ait Buk ID'si
int.
Mesajın gönderildiği telefon numarasıdır.
Örn 1 :5051234567 veya 05051234567
Örn 2 :5051234567,5051234567 veya 05051234567,05051234567
telno
Yeni
Boyut
Max.11
Type
Max.1
İnt.
Sorgulama tipini belirlemek için kullanılır.
0: Tek bulkid'ye göre sorgulama yapar.
1: Birden çok bulkid'ye göre sorgulama yapar.
(Not: Bu durumda bulkid parametresi 43234, 53453, 54332, ....gibi
yazılır.)
2: Tarih araligiığında sorgu yapabilmek için kullanılır.
(Not: Parametrenin bu değerinde bulkid parametresine girilen değer
dikkate alınmaz.)
bastar
Max.12
date
Mesajın gönderilmeye başlanacağı tarih (ddmmyyyyhhii)
bittar
Max.12
date
Mesajın geçerlilik süresinin bittiği tarih (ddmmyyyyhhii)
mbaslik
Max.11
string
Mesajın gönderen kısmında görünecek olan başlıktır. En az 3, en
fazla 11 karakter olmalıdır.
status
Max.1
İnt.
0: İletilmeyi bekleyenler
1: İletilmiş olanlar
2: Zaman aşımına uğramış olanlar
3: Hatalı veya kısıtlı numara
4: Operatöre gönderilemedi
11: Operatör tarafından kabul edilmemiş olanlar
12: Gönderim hatası olanlar
13: Mükerrer olanlar
100: Tüm mesaj durumları
0: Olursa veya hiç gönderilmezse status değerlerindeki 11,12,13
durumları 2(zaman aşımına uğramış ) olarak kabul edilir.
1: Gönderilirse status değerleri aynen geçerlidir.
Yeni
2:
Gönderilirse status değerleri aynen geçerlidir.
Rapor detaylı bir şekilde gösterilir. (Operatör, mesaj boyu, iletim
tarihi, dönen hata kodu bilgileri de eklenir. )
version
Max.1
İnt.
Hata kodu açıklamaları
0: Hata yok
101: Mesaj Kutusu Dolu
102: Kapalı ya da Kapsama Dışında
103: Meşgul
104: Hat Aktif Değil
105: Hatalı Numara
106: SMS Red, Karaliste
107: Zaman Aşımı
111: Mobil Cihaz Hatası
112: Mobil Cihaz Sms Gönderime Kapalı
113: Mobil Cihaz Desteklemiyor
114: Yönlendirme Başarısız
115: Çağrı Yasaklandı
116: Tanımlanamayan Abone
117: Yasadışı Abone
119: Sistemsel Hata
Operatör kodu açıklamaları
10: Vodafone
20: Avea
30: Turkcell
40: Netgsm
50: TTNET Mobil
60: Türktelekom
70: Diğer Operatörler
Örnek Şablon 1 :
http://api.netgsm.com.tr/httpbulkrapor.asp?usercode=xxxx&password=yyyy&bulkid=32443&
type=0&status=0
+ Hata olmadığı durumda dönen cevap;
•
•
•
905550000000
905550000001
905550000002 olur.
Örnek Şablon 2 :
http://api.netgsm.com.tr/httpbulkrapor.asp?usercode=xxxx&password=yyyy&bulkid=32443&
type=1&status=0
+ Eğer type=1 veya type=2 ise;
53545 905550000000 0 10 1 00.00.0000 00:00:00 0
53545 905550000001 1 20 2 01.05 2014 22:25:00 0
53545 905550000002 2 30 1 01.05.2014 22:24:00 102
•
•
•
Sorgu Sonucu :
53545
505550000000
0
10
1
01.05.14 22:24
0
↓
↓
↓
↓
↓
↓
↓
Mesaj ID
Cep Telefon
Mesaj Durumu Operatör Kodu Mesaj Boyu İletilme Tarihi
Dönen
Hata
Kodu
Ses Görüşme Sorgulama
http://api.netgsm.com.tr/xmlsesgorusme.asp
Parametreler
Adı
Boyut
Tip
Açıklama
usercode
Max.25
string
Netgsm sistemine giriş yapmak için kullandığınız kullanıcı adı
password
Max.25
string
Netgsm sistemine giris yapmak için kullandığınız şifre
date
Max.12
date
Aramanın yapıldığı tarih ( ddmmyyyyhhii)
* Boş bırakılırsa sorgulama yapılan günün kayıtları listelenir.
Max.1
Arama yönünü belirlemek için kullanılır.
1: Gelen aramalar
integer 2: Giden aramalar
3: Cevapsız aramalar
4: Bütün aramalar
direction
Örnek Şablon:
<?xml version='1.0'?>
<mainbody>
<header>
<company>NETGSM</company>
<usercode>KullaniciAdi</usercode>
<password>Sifre</password>
<date>010520140101</date>
<direction>1</direction>
</header>
</mainbody>
Sorgu Sonucu :
3129110911
↓
01.05.2014 13:53:00
↓
00:00:03
1
↓
↓
Numara
Tarih
Süre
Arama Yönü
Hata Durumları
30
Geçersiz Kullanıcı adı ve şifre
40
Gösterilecek görüşme yok
50
Tarih formatı hatalı
70
Hatalı XML
TÜRKÇE GÖNDERİLEN MESAJLARDA KARAKTER HESAPLAMA
Türkçe gönderilen mesajlarda "ğ", "Ğ", "ş", "Ş", "ı", "İ", "ç" karakterleri çift sayılır. Bunların
dışındakiler tek karakter sayılır.
Bir mesajda türkçe dil seçeneği seçilerek işlem yapılıyorsa 1 boy SMS 160 karakter üzerinden
değil 155 karakter üzerinden hesaplanır.
Burada düşen 5 karakter mesajın Türkçe Karakterleride desteklemesi için harcanıyor, yani 155
tane türkçe karakter kullanabilirim demek değildir.
155 tane karakter hakkım var, içinde Türkçe karakterlerde kullanabilirim anlamına gelir.
Mesela "ÖzTürkçe" kelimesini inceleyelim.
Web arayüzümüzden Türkçe göndermek istiyorum diye işaretlenince veya api ile gönderirken TR
parametresini gönderince otomatik olarak (160-5) 155 karakter hakkımız kaldı.
Şimdi Ö yazdık. --> Ö --> Türkçe değil -->Kalan karakter (155-1) 154
Şimdi Öz yazdık. --> z --> Türkçe değil -->Kalan karakter (154-1) 153
Şimdi ÖzT yazdık. --> T --> Türkçe değil -->Kalan karakter (153-1) 152
Şimdi ÖzTü yazdık.--> ü --> Türkçe değil -->Kalan karakter (152-1) 151
Şimdi ÖzTür yazdık. --> r --> Türkçe değil -->Kalan karakter (151-1) 150
Şimdi ÖzTürk yazdık. --> k --> Türkçe değil -->Kalan karakter (150-1) 149
Şimdi ÖzTürkç yazdık. --> ç --> Türkçe -->Kalan karakter (149-2) 147
Şimdi ÖzTürkçe yazdık. --> e --> Türkçe değil -->Kalan karakter (147-1) 146
Yukarıda görüldüğü gibi eğer kelimede türkçe karakter içeren bir harf yer alıyorsa hesaplamada 2
karakter harcar.
"çççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççççç
ç"
Burada 77 tane ç harfi var her biri 2 karakter harcar 2x77=154 [ boy=1 ] yani bundan sonra
yazılan herhangi bir türkçe karakter 154+2=156 [ boy=2 ]
Şeklinde hesaplanır.