CMFCell HTTP/S-XML Interface
CMFCELL kendi uygulamalarını ve farklı sistemleri kısa mesaj yetenegi ile donatmak isteyen kullanıcılar için HTTP/S - XML destegi sunmaktadır.
İletişim
HTTP protokolü kullanıcıların herhangi bir tipdeki veriyi sunucuya iletmesine olanak tanır. Bizim HTTP/S-XML interface’imiz sunucu ve istemci arasındaki bağlantıyı sağlamak için HTTP protokolünün “post” metodunu kullanmaktadır. İstemciler web servisimize TCP/IP bağlantısı veya .NET Kütüphanemiz aracılığıyla bağlanabilirler. Ayrıca web sitemiz üzerinden ilgili kod örneklerini incelenebilir.
Servis Adresi
Xml verisi http[s]://[servicePath]/sections/service/api/xmlwebservice/xmlwebservice.aspx adresine postalanmalıdır.
Örnek olarak: http://smsc.cmfcell.com/sections/service/api/xmlwebservice/xmlwebservice.aspx
Yapı Örneği
Xml Paket Yapısı
Xml paket yapısı başlık (header) ve gövde (body) olmak üzere ikiye ayrılmıştır. Başlık, kullanıcının oturum bilgilerini taşırken, sunucunun gerçekleştireceği operasyon gövde kısmında belirtilir.
Xml Yanıt Yapısı
Servisimiz geriye iki tipde yanıt dönmektedir. Operasyon başarısız olmadığı sürece “packet type” değeri “ok” olacak, aksi durumlarda ise “error” ifadesini geri döndürecektir. Başarısız olan operasyon hakkındaki hata detayı bilgisi “error” node’u altından okunabilir.
Operasyon Başarılı Tamamlandığında:
ok">
...
Operasyon Hata Döndürdüğünde:
error">
...
...
Başarısız İşlemler
Başarısız olan hatalarda, “error” node’u “code” ve “description” isimli iki adet alt node döndürür. “code” detayları aşağıda listelenen, 0 ile 999 arasındaki hata kodunu, “description” ise kullanıcı hesabının kendi dilinde hatanın açıklamasını döndürecektir.
Genel Hata Kodları
· 0 – Bilinmeyen sistem hatası.
· 1 – SessionID eskimiş. Tekrar oturum açılmalı.
· 2 – Kullanıcı adı veya parola yanlış.
· 3 – Kullanıcı hesabı dondurulmuş.
· 4 – Bağlantı sunucu tarafından reddedildi.
· 5 – Post edilmiş veri bulunmuyor.
· 6 – XML verisi hatalı.
· 7 –XML verisi içinde node’a ulaşılamıyor.
· 8 – XML verisi içerisinde geçersiz değer girişi.
· 9 – Operasyon sunucu tarafından desteklenmiyor.
· 10 – ZipData açılamadı.
OpenSession
20 dakika boyunca geçerli olacak yeni bir oturum yaratır ve geriye SessionID döndürür. CMFCell gateway üzerinde yeni bir oturum yaratıldığında, düz parola doğrulama rutinini uygulamanıza gerek kalmamaktadır.
Örnek
|
Xml Yanıtı:
ok">
088D4503-C2EA-40a5-9DAD-46D598C0B9E8
|
SendMessage
CMFCell servisleri aracılığı ile mesaj gönderir ve geriye MessageID döndürür.
· type: Mesaj tipi. Geçerli tipler “Sms, Mms”.
· from: Kayıt ettirilmiş originator bilgisi. Örnek: “CMFCELL.COM”.
· to: Alıcı listesi “;” karakteri ile birden fazla alıcı belirtebilirsiniz.
· concat: Birleşik mesajlar için en fazla birleşecek mesaj adedi.
· subject: Mms mesajları için mesajın konusu.
· sendDate: UTC tipinde mesajın gönderileceği tarih. Mesaj hemen iletilecekse boş bırakılmalıdır.
· validityPeriod: Mesajın saniye cinsinden geçerlilik süresi.
· data: Mesaj metni.
Belirli Hata Kodları:
· 1000: Mesaj istenilen boyuttan daha uzun.
· 1001: Mesajı göndermek için kontörünüz yetersizdir.
· 1002: Originator ismi operator tarafından onaylanmamış.
SMS Örneği
|
Xml Packet:
Sms
CMFCELL.COM
905332669297;900633223203
4
2008-09-17 22:30
86400
This is a test message
|
|
Xml Reply:
0000000014-0000001456
0000000014-0000001457
|
MMS Örneği
|
Xml Packet:
Mms
CMFMMS
905332669297;900633223203
2008-09-17 22:30
Test Message
** mime data **
|
GetMessage
Gelen kutusundan okunmamış ilk mesajı almaktadır. Ayrıca mesaj dizisi içerisinde “moveNextMessage” direktifiyle bir sonraki okunmamış mesaja geçebilirsiniz.
GetMessage Örneği
|
Xml Yanıtı:
1928
905332669297
905551232323
2007-12-12 15:32:37
Sms
incoming test message
|
MoveNextMessage Örneği
GetStatus
Gönderilmiş bir mesajın durumunu sorgular.
· scode: Mesaj durumu hakkında bilgi verir.
o -1 – Mesaj bulunamadı
o 0 – Mesaj ulaştırılmış.
o 1 – Mesaj ulaştırılamamış.
o 2 – Mesaj beklemede.
· ecode: Mesaj ulaştırılamadıysa, hata hakkında açıklayıcı bilgi içerir.
o 102 – Mesaj iptal edilmiş.
o 103 – Mesaj yapısı geçersiz.
o 104 – Alıcı kapsama alanında değil.
o 105 – Mesaj limiti aşılmış.
o 106 – Mesaj tipi desteklenmiyor.
o 107 – Mesaj geçerlilik süresi sona ermiş.
o 108 – İzniniz bulunmuyor.
o 203 – Operator hatası.
o 204 – Operator bağlantısı sağlanamadı.
o 205 – Operator mesajı reddetti.
· to: “;” karakteri ile ayrılmış alıcı listesi.
· sendDate: UTC tipinde mesajın gönderileceği tarih.
· validityPeriod: Mesajın saniye cinsinden geçerlilik süresi.
· data: Mesaj metni.
Örnek
|
Xml Paketi:
0000000014-0000001456
0000000014-0000001457
|
|
Xml Yanıtı:
0
2008-10-17 22:30:56
1
108
|
GetAccountInfo
Hesap bilgisi ve kayıtlı originator listesini döndürür.
Örnek
Xml Yanıtı:
501000001
test
Myname
Mysurname
Mycompany
my@email.com
905332669297
tr-tr
CMFCELL.COM
133.00
Everyone,Users
|