PROFESSIONELLA MEDDELANDETJÄNSTER TILL OCH FRÅN MOBILANVÄNDARE
På svenska In english

iGATE 3.0 HTTP

MT SMS

HTTP API stöder både GET och POST som anropsmetod. Parametrar med värden separeras med ett '&'-tecken. Parameter och värde separeras med ett '='-tecken. Mellanslag byts ut med ett '+'-tecken medan övriga tecken URL-kodas.

URL-kodning konverteras till tillåtna tecken för URL-anrop. URL-kodning innebär att icke ASCII-tecken byts ut mot "%" följt av två hexadecimala värden för givet tecken enligt teckentabell ISO-8859-1. Exempelvis så ska '+'-tecknet i destAddr ersättas med %2B. URL:ar kan inte innehålla mellanslag.

Före access behöver användarnamn och lösenord kodas enligt Base64. Det görs genom att skriva ihop användarnamn och lösenord med kolon emellan, användarnamn:lösenord. Reultatet ska vara en base64-kodad sträng. Exempelvis, användarnamn=Aladdin och lösenord=open sesame, så blir strängen Aladdin:open sesame QWxhZGRpbjpvcGVuIHNlc2FtZQ== Base64-kodad. Strängen läggs sedan in i header för HTTP-anropet enligt följande:

Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

För att kunna hålla reda på varje specifik adress du skickar till blir det förväntade anropssvaret.
id=c1f18240-d1b5-45b6-9a25-d8997e8a11e0, destAddr=467xxxxxxxx

HTTP/GET
Enklaste sättet är att skriva in URL direkt i din webläsare:

Mozilla Firefox, Safari, Google Chrome, Opera
https://användarnamn:lösenord@igate.imez.se/api/url?destAddr=%2B467xxxxxxxx&message=Hello+World
där användarnamn, lösenord, destAddr och message ersätts.

Internet Explorer
https://igate.imez.se/api/url?destAddr=%2B467xxxxxxxx&message=Hello+World
Ange därefter användarnamn och lösenord i prompten.

Följande beskriver trafikflödet mellan klient och server:

HTTP - anrop:
GET /api/url?destAddr=+46708319100&message=Hello+World HTTP/1.0
User-Agent: Testing
Accept: */*
Host: igate.imez.se
Connection: Keep-Alive
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

HTTP-respons::
HTTP/1.1 200 OK
Content-Type: text/plain; charset=iso-8859-1
Content-Length: 40
Connection: keep-alive
Server: Jetty(6.1.15)
id=c1f18240-d1b5-45b6-9a25-d8997e8a11e0, destAddr=467xxxxxxxx

Efter några sekunder anländer SMS till angiven destinationsadress.

Exempel

Exempelkod för HTTP/GET i Java-fil finns för nedladdning AtomHTTPExample.java 

Exempelkod för HTTP/GET i PHP-fil finns för nedladdning AtomHTTPExample.php

Exempelkod för HTTP/GET i .Net-fil finns för nedladdning AtomHTTPExample.cs

Editera filen och ändra följande:

username - ditt användarnamn för denna tjänst
password - lösenord knutet till användarnamnet
atomUrl - URL till iGATE 3.0
destAddr - mobilnumret som ska ta emot SMS

Parametrar att använda:
Parametrar som stöds förklaras nedan. [M]=Måste finnas med i anropet, [O]=Kan finnas med i anropet

[M]destAddr [string]: Destination(er) till mottagande mobiltelefoner
[O] origAddr [string]: Avsändare (kan vara mobilnumber, kortnummer eller alphanumerisk (max 11 tecken))
Tillåtna tecken är a-z, A-Z, 0-9, -, +, komma, punkt, / och mellanslag
[M]message [string]: Data (text/binärdata)
[O]header [string]: TP-UDH [enligt GSM specifikation 03.40]
[O]binary [boolean]: Typ av SMS (om message är skriven binärt eller i ascii).
[O]pid [int]: TP-PID [enligt GSM specifikation 03.40]
[O]sourcePort [int]: Egen satt avsändarport
[O]destPort[int]: Egen satt destinationsport.
Exempel: 2948 för WAP-Push, 5514 för EMS, 5505 för rington, 
5506 för logo, 5507 för ikoner, 9204 för v-card, 9205 för v-cal, 
49999 för WAP telefoninställningar
[O]sendTime [dateTime]: Tid för när första försöket ska göras. Format: YYYY-MM-DD hh:mm
[O]validityTime [dateTime]: Tid för när sms som inte lämnat SMSC inte längre ska skickas ut
Format: YYYY-MM-DD hh:mm
[O]irpId[string]: Id för att matcha ihop utsänt sms med mottaget SMS
[O]messageClass [int]: Hur ett SMS ska tas emot i telefonen:
Tillåtna värden 0-3:
1=tas emot i inkorgen och sparas i telefonens minne
0=Flash poppar upp på skärmen och sparas INTE i minnet
[O]deliveryReportFlag [string]: Hur man vill ha leveransrapporter: 
NONE=inga,
INTERMEDIATE=alla 
FINAL_ONLY=Mottaget/Icke mottaget i telefonen
[O]encoding [string]: Hur message ska tolkas: 7BIT, 8BIT eller 16BIT
[O]groupId [string]: Id för egen referens för fakturering
[O]rpFlag [boolean]: TP-RP [enligt GSM specification 03.40]

MT SMS Delivery Report


För varje destAddr i ett SMS blir repsonsen ett id. Detta id matchar det SMS som skickats till just den destinationen. När sedan leveransrapporten kommer finns det två parametrar, id som matchas med MT-SMS som skickats samt state vilket innehåller nuvarande status för MT-SMS
State:

SENT: Mottaget av SMSC
UNSENT: Ej mottaget av SMSC
BUFFERED: Finns på SMSC men ännu inte skickat till telefon
DELIVERED: Levererat till telefon
UNDELIVERED: Misslyckat att leverera till telefon

Skickas från IGATE 3.0 direkt när de kommit in till av kund angiven url. Anropsmetoden är HTTP/GET.


MO SMS


Kund uppger url till IMEZ till var kund vill ha SMS sig tillskickat. Anropsmetoden är HTTP/GET.
För parametrars betydelse, se Parametrar att använda 

Network Lookup

För att se vilken operatör ett mobilnummer tillhör och i vilket nät det befinner sig, görs ett uppslag mot Imez SMSC

Enklaste exemplet är att direkt i webläsaren skriva in URL:

https://username:password@igate.imez.se/api/lookup?msisdn=+467xxxxxxxx
Ersätt msisdn med det nummer som ska slås upp.

Följande parametrar erhålls:
VLR (i vilket nät telefonnumret befinner sig i)
Mobile Network Code (vilket nät telefonnumret tillhör)

Exempel

Ladda ner exempelkod för HTTP/GET i Java, AtomNetworkLookupExample.java
Editera filen och ändra variablerna:

username - ditt användarnamn för denna tjänst
password - lösenord knutet till användarnamnet
atomUrl - URL till iGATE 3.0
msisdn - mobilnummer som ska kollas

 

© 2010 iMEZ AB | Box 244, 371 24 KARLSKRONA | Tel: +46 (455) 61 69 60 | info@imez.se | Cookies-Information