Windows 98 SE, ME, 2000, XP, UNIX, Linux ya da MacOS İşletim Sistemi
İnternet Explorer 6 SP1 (Windows Platformu için)
cURL kütüphanesi (PHP kullanan geliştiriciler için)
XML API
Gateway'e yollanan kullanıcı bilgilerinin doğruluğu sistem tarafından kontrol edilerek kullanıcı hesabına ait kredi bilgisi ve orijinatör bilgisi sistem tarafından gönderilir. Kullanıcı bilgilerinin kontrolü sırasında Username, company_code, password ve action bilgileri kontrol edilir.
Username: Mobildev SMS hesabı üzerinde tanımlı kullanıcı adınızı ifade eder.
<MainReportRoot>
<UserName>username-company_code</UserName>
<PassWord>password</PassWord>
<Action>4</Action>
</MainReportRoot>
Kullanıcı bilgilerinin kontrolünde olması gereken XML ifadesi aşağıdaki gibidir:
<MainReportRoot>
<UserName>username-company_code</UserName>
<PassWord>password</PassWord>
<Action>4</Action>
</MainReportRoot>
Bilgi Kontrolü İçin Örnek XML İfadesi:
<MainReportRoot>
<UserName>test-mb1000</UserName>
<PassWord>12345</PassWord>
<Action>4</Action>
</MainReportRoot>
Kontör sayısı<10>
Originator1<10>
Originator2<10>
OriginatorN
SOAP API
public string GetInfo(string username, string companycode, string password)
String Username: Mobildev SMS hesabı üzerinde tanımlı kullanıcı adınızı ifade eder.
String Company Code: SMS kullanıcı adınızın tanımlı olduğu kanal bilgisidir (client kodu olarak da adlandırılabilir).
String Password: SMS kullanıcı adınıza ait şifreyi ifade eder.
Örnek SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body> <GetInfo xmlns="http://www.mobildev.net/">
<username>string</username>
<companycode>string</companycode>
<password>string</password>
</GetInfo>
</soap:Body>
</soap:Envelope>
Geri Dönüş Örnek SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetInfoResponse xmlns="http://www.mobildev.net/">
<GetInfoResult>string</GetInfoResult>
</GetInfoResponse>
</soap:Body>
</soap:Envelope>
Geri dönüş değerlerinde bulunan <10> LineFeed karakterini temsil etmektedir. Originator bilgisi SMS gönderimlerinizde hedef GSM numarasının “Gönderen” kısmında çıkacak olan bilgiyi ifade etmektedir. Bu bilgi 11 karakterlik nümerik ya da alfanümerik karakterlerden oluşan (Türkçe ve &,<,> gibi özel karakterler içermeyen) bir ifade olabilir.
Test Hesabı AlProjem Var! |
TC Kimlik Numaraları 11111111111 şeklinde ve TcKimlik parametre düğümü içerisinde yazılmalıdır.
Kullanım Örneği:
<TcKimlik>11111111111</TcKimlik>
Mesaj metni oluşumunda ASCII (Bilgi Değişimi İçin Amerikan Standart Kodlama Sistemi) karakterleri dışında karakter kullanımı varsa Dil Çevirici kullanılması gerekmektedir.
Çevirici Kod Örneği:
{ message = message.Replace("Ü", "U"); message = message.Replace("ü", "u"); message = message.Replace("Ğ", "G"); message = message.Replace("ğ", "g"); message = message.Replace("İ", "I"); message = message.Replace("ı", "i"); message = message.Replace("Ş", "S"); message = message.Replace("ş", "s"); message = message.Replace("Ç", "C"); message = message.Replace("ç", "c"); message = message.Replace("Ö", "O"); message = message.Replace("ö", "o"); message = message.Replace("é", "e"); message = message.Replace("`", "'"); message = message.Replace("^", "'"); message = message.Replace("…", "."); message = message.Replace("ˆ", "'"); message = message.Replace("‘", "'"); message = message.Replace("’", "'"); message = message.Replace("‘", "'"); message = message.Replace("\r", ""); message = message.Replace("\n", ""); message = message.Replace("\r\n", ""); message = message.Replace("?", "##S##"); message = System.Text.Encoding.ASCII.GetString(System.Text.Encoding.ASCII.GetBytes(message)); message = message.Replace("?", ""); message = message.Replace("##S##", "?"); message = message.Replace("&", "&"); message = message.Replace("<", "<"); message = message.Replace(">", ">"); return message; } |
Gönderen Bilgisi (Alfanumerik/Originator), mesaj gönderimlerinde gönderici kısmında yer alan; firmaya özel tanımlanmış 11 karakterden oluşan gönderici adıdır. Gönderim sırasında hesap aktivasyonunda aktivasyon biriminin tanımladığı Gönderen Bilgisi'nin aynısı Originator Parametre düğümü içerisinde yazılmalıdır. Gönderen Bilgisi tanımlı bilgiyle eşleşmezse 06 Hata Kodu alınır. Hata Kodu 06, Tanımsız Originator bilgisi anlamına gelir.
Büyük ve Küçük Harfli Örnek Kullanım:
<Originator>MOBILDEV</Originator>
<Originator>mobildev</Originator>
Unutmayın: Originator ifadesinde Türkçe karakterler ve &, <, >, -, ( ), [ ], / gibi simgeler kesinlikle kullanılmamalıdır! |
<MainmsgBody>
<UserName>username-company_code</UserName>
<PassWord>password</PassWord>
<Action>0</Action>
<Mesgbody>message</Mesgbody>
<TcKimlik>TC Kimlik No1, TC Kimlik No2</TcKimlik>
<Originator>originator</Originator>
<SDate></SDate>
</MainmsgBody>
<MainmsgBody>
<UserName>test-mb1000</UserName>
<PassWord>12345</PassWord>
<Action>0</Action>
<Mesgbody>dogum gununuz kutlu olsun</Mesgbody>
<TcKimlik>11111111111</TcKimlik>
<Originator>MOBILDEV</Originator>
<SDate>010120121530</SDate>
</MainmsgBody>
SMSToMany aynı mesajı birden fazla TC Kimlik numarasına gönderirken kullanılan fonksiyondur. Fonksiyon parametreleri arasında yer alan tcKimlikList’e mesajların gönderileceği TC Kimlik numaraları arasına virgül koyularak yazılır.[WebMetot]
public string SMSToMany(string username, string companycode, string password, string tcKimlikList, string message, string sdate, string originator)
String Username: Mobildev SMS hesabı üzerinde tanımlı kullanıcı adınızı ifade eder. String Company Code: SMS kullanıcı adınızın tanımlı olduğu kanal bilgisidir (client kodu olarak da adlandırılabilir).
String Password: SMS kullanıcı adınıza ait şifreyi ifade eder.
String tcKimlikList: SMS gönderilecek TC numarası veya numara listesini ifade eder.
String message: Gönderilecek mesaj metnini ifade eder. Bu mesaj metni 160 karakterden uzun olabilir.
String sdate: Mesajın gönderileceği tarihi ifade eder. Bu alan boş bırakılırsa mesaj hemen gönderilir. Geçerli tarih formatı: 311220120859 (GünAyYılSaatDakika) şeklindedir.
String originator: Mesajın gönderildiği TC Kimlik numarasına ait GSM numarasında gönderen kısmında çıkacak kullanıcı adını ifade eder.
Örnek SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<SMSToMany xmlns="http://www.mobildev.net/">
<username>string</username>
<companycode>string</companycode>
<password>string</password>
<tcKimlikList>string</tcKimlikList>
<message>string</message>
<sdate>string</sdate>
<originator>string</originator>
</SMSToMany>
</soap:Body>
</soap:Envelope>
Geri Dönüş Örnek SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetInfoResponse xmlns="http://www.mobildev.net/">
<GetInfoResult>string</GetInfoResult>
</GetInfoResponse>
</soap:Body>
</soap:Envelope>
1 ile 153 karakter arası 1 SMS |
153 ile 306 karakter arası 2 SMS |
306 ile 459 karakter arası 3 SMS |
459 ile 612 karakter arası 4 SMS |
Unutmayın: 160 karakteri geçen mesajlarda giden her mesajın uzunluğu 153 karaktere düşmektedir! |
<MainmsgBody>
<UserName>username-company_code</UserName>
<PassWord>password</PassWord>
<Action>1</Action>
<Messages>
<Message>
<Mesgbody>message1</Mesgbody>
<TcKimlik>TC Kimlik No1</TcKimlik>
</Message>
<Message>
<Mesgbody>message2</Mesgbody>
<TcKimlik>TC Kimlik No2</TcKimlik>
</Message>
</Messages>
<Originator>originator</Originator>
<SDate></SDate>
</MainmsgBody>
SMS MultiSenders XML İfadesi Örneği
<MainmsgBody>
<UserName>test-mb1000</UserName>
<PassWord>12345</PassWord>
<Action>1</Action>
<Messages>
<Message>
<Mesgbody>dogum gununuz kutlu olsun</Mesgbody>
<TcKimlik>1111111111</TcKimlik>
</Message>
<Message>
<Mesgbody>yeni yilinizi kutlariz.</Mesgbody>
<TcKimlik>22222222222</TcKimlik>
</Message>
</Messages>
<Originator>MOBILDEV</Originator>
<SDate></SDate>
</MainmsgBody>
[WebMetot]
public string MultiSender(string username, string companycode, string password, SMSInfo[] smsInfoArray, string sDate, string originator)
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body>
<MultiSender xmlns="http://www.mobildev.net/"> <username>string</username>
<companycode>string</companycode> <password>string</password>
<smsInfoArray> <SMSInfo>
<TcKimlikNo>string</TcKimlikNo> <Message>string</Message>
</SMSInfo> <SMSInfo>
<TcKimlikNo>string</TcKimlikNo> <Message>string</Message>
</SMSInfo>
</smsInfoArray>
<sDate>string</sDate>
<originator>string</originator>
</MultiSender>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<MultiSenderResponse xmlns="http://www.mobildev.net/">
<MultiSenderResult>string</MultiSenderResult>
</MultiSenderResponse>
</soap:Body>
</soap:Envelope>
XML
Gönderilen Mesaj Bazında (TimerID) Raporlama:
Yapılan her SMS paketi (XML ifadesi) gönderiminde sistem TimerID bilgisi verir. TimerID, gönderilen SMS paketine sistem tarafından otomatik olarak atanan numaradır.
TimerID (paket bazında) rapor almak için aşağıdaki XML ifadesi kullanılmalıdır ve Action parametresi 3 olmalıdır:<MainReportRoot>
<UserName>username-company_code</UserName>
<PassWord>password</PassWord>
<Action>3</Action>
<MsgID>TimerID</MsgID>
</MainReportRoot>
TimerId Bazında Rapor Alma Örneği:
<MainReportRoot>
<UserName>test-mb1000</UserName>
<PassWord>12345</PassWord>
<Action>3</Action>
<MsgID>65432</MsgID>
</MainReportRoot>
Tarih Bazında Raporlama:
Tarih Bazında Raporlama için Action parametresi 2 olmalıdır. Tarih aralığı belirtmek için Fdate, raporun başlangıç tarihi; Ldate, raporun bitiş tarihinin girilmesi gereken parametrelerdir.
Tarih bazında rapor almak için aşağıdaki XML ifadesi kullanılmalıdır:
<MainReportRoot>
<UserName>username-company_code</UserName>
<PassWord>password</PassWord>
<Action>2</Action>
<FDate>year-month-day</FDate>
<LDate>year-month-day</LDate>
</MainReportRoot>
Tarih Bazında Raporlama Örneği:
<MainReportRoot>
<UserName>test-mb1000</UserName>
<PassWord>12345</PassWord>
<Action>2</Action>
<FDate>2012-01-01</FDate>
<LDate>2012-03-31</LDate>
</MainReportRoot>
XML ifadesi Gateway’a ulaştığında iki çeşit geri dönüş değeri alınır:
1- İşlem Başarılıysa: “TimerID<32>TC Kimlik Numarası<32>Durum<10>"
Geri Dönüş Değeri Örneği
65432<32>11111111111<32>2<10>
65432<32>22222222222<32>3<10>
2- Hatalı Geri Dönüş Değeri bknz: Hata Kodları
SOAP
Gönderilen Mesaj Bazında (ReportByID) Raporlama:
TimerID (Mesaj kodu) bazında raporlama bir SMS paketine ait mesaj gönderim hareketlerini raporlamada kullanılır.
[WebMetot]
public string ReportByID(string username, string companycode, string password, string packetid)
Örnek SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ReportByID xmlns="http://www.mobildev.net/"> <username>string</username>
<companycode>string</companycode>
<password>string</password>
<packetid>string</packetid>
</ReportByID>
</soap:Body>
</soap:Envelope>
1. İşlem Başarılıysa:
TimerID<32>TC Kimlik Numarası<32>Durum<10>
TimerID Bazında Raporlama Geri Dönüş Değeri Örneği
1234<32>11111111111<32>2<10>
1234<32>22222222222<32>3<10>
2. Hata Oluşmuşsa: Bkz. Hata Kodları
Örnek Geri Dönüş SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ReportByIDResponse xmlns="http://www.mobildev.net/">
<ReportByIDResult>string</ReportByIDResult>
</ReportByIDResponse>
</soap:Body>
</soap:Envelope>
Tarih Bazında Raporlama (ReportbyDate):
Tarih bazında raporlama, belirtilen iki tarih arasında yapılan SMS gönderim hareketlerinin toplu halde raporlanmasında kullanılır.
[WebMetot]
public string ReportByDate(string username, string companycode, string password, string FDate, string LDate)
Örnek SOAP Verisi
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ReportByDate xmlns="http://www.mobildev.net/">
<username>string</username>
<companycode>string</companycode>
<password>string</password>
<FDate>string</FDate>
<LDate>string</LDate>
</ReportByDate>
</soap:Body>
</soap:Envelope>
1. İşlem Başarılıysa:
TimerID<32>TC Kimlik Numarası<32>Durum<10>
Tarih Bazında Raporlama Geri Dönüş Değeri Örneği
1234<32>11111111111<32>2<10>
1234<32>22222222222<32>3<10>
2. Hata Oluşmuşsa: Bkz. Hata Kodları
Geri Dönüş SOAP Verisi Örneği
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ReportByDateResponse xmlns="http://www.mobildev.net/">
<ReportByDateResult>string</ReportByDateResult>
</ReportByDateResponse>
</soap:Body>
</soap:Envelope>
Unutmayın: Raporlar sadece geriye dönük 3 ay öncesine kadar sistemden çekilebilmektedir! |
Hata Kodu | Açıklama |
01 | Hatalı Kullanıcı AdıHatalı ŞifreHatalı Bayi Kodu |
02 | Mesaj Gönderimi: Yetersiz kredi |
03 | Tanımsız Action parametresi |
04 | Gelen XML yok |
05 | XML düğümü eksik ya da hatalı |
06 | Tanımsız Orijinatör bilgisi |
07 | Mesaj kodu (ID) yok |
08 | Verilen tarihler arasında SMS gönderimi yok |
09 | Tarih alanları boş - hatalı |
10 | SMS gönderilemedi |
11 | Tanımlanamayan hata |
Hata Kodu | Açıklama |
01 | Hatalı Kullanıcı AdıHatalı ŞifreHatalı Bayi Kodu |
02 | Mesaj Gönderimi: Yetersiz kredi |
06 | Tanımsız Orijinatör bilgisi |
07 | Mesaj kodu (ID) yok |
08 | Verilen tarihler arasında SMS gönderimi yok |
09 | Tarih alanları boş - hatalı |
10 | SMS gönderilemedi |
11 | Tanımlanamayan hata |
Test Hesabı AlProjem Var! |