LINK Vodič za implementaciju mobilnosti REST API SMS korisnički vodič

LINK Logo mobilnosti A

LINK Vodič za implementaciju mobilnosti REST API SMS

LINK Mobility pruža uslugu za isporuku poruka, mikro plaćanja i usluge zasnovane na lokaciji. Platforma se ponaša kao transparentni, bijeli akviziter sadržaja i ruter transakcija između pružatelja usluga i operatera.

LINK Mobility pruža RESTful API koji se može koristiti za pristup uslugama LINK Mobility kao što je slanje SMS-a. Ovaj API je dizajniran da bude jednostavan za korištenje i kompatibilan sa svim modernim jezicima i okvirima. Koristeći jezik po vašem izboru, vaša aplikacija može koristiti Link Mobility REST API za implementaciju moćnih mogućnosti slanja poruka i plaćanja

© LINK Mobility, 10. mart 2021

Pravne informacije

Informacije navedene u ovom dokumentu su isključivo vlasništvo i autorska prava Netsize. Povjerljiv je i namijenjen isključivo informativnoj upotrebi. Nije obavezujuće i može biti podložno promjenama bez prethodne najave. Svako neovlašteno otkrivanje ili korištenje smatrat će se nezakonitim.

Netsize™ i linkmobility™ su zaštićeni francuskim, EEZ i međunarodnim zakonima o intelektualnom vlasništvu.

Svi ostali navedeni zaštitni znakovi su isključivo vlasništvo njihovih vlasnika.

Ništa ovde sadržano neće se tumačiti kao davanje bilo koje licence ili prava pod Netsize patentom, autorskim pravom ili žigom.

NETSIZE
Société anonyme au capital de 5 478 070 eura
Siège social :62, avenue Emile Zola92100 Boulogne – Francuska
418 712 477 RCS Nanterre
http://www.LinkMobility.com
http://www.linkmobility.com

Opseg dokumenta

Ovaj dokument opisuje kako Dobavljač usluge koristi LINK Mobility REST API za SMS. Namijenjen je tehničkim arhitektima i projektantima koji implementiraju usluge pružaoca usluga.

1. Osnovna upotreba

Vrlo je lako poslati SMS. Šaljete HTTP zahtjev na LINK Mobility koji se može postići koristeći samo a web pretraživač.

LINK Vodič za implementaciju mobilnosti REST API SMS - a1

2. Funkcionalni krajview

LINK Mobility sistem pruža sljedeću osnovnu funkcionalnost za SMS poruke:
Slanje mobilnih terminalnih (MT) SMS poruka, kao što su tekstualne ili binarne (npr. WAP Push) premium i standardne poruke.

Prijem izvještaja o isporuci za dostavljene MT poruke.

Primanje SMS poruka sa mobilnog porekla (MO), premium i standardna tarifa.
SMS REST API je namenjen slanju MT SMS poruka standardne brzine.

API šalje sve SMS poruke asinhrono, omogućavajući funkcije kao što su:

“Opali i zaboravi” – Pružalac usluge želi da ima predvidljivije vrijeme odgovora i ne želi da čeka rezultat od Operatera.

Funkcionalnost ponovnog pokušaja – LINK Mobility će ponovo poslati poruku ako operater ima privremene probleme.

2.1 Slanje SMS poruke

LINK Vodič za implementaciju mobilnosti REST API SMS - a2                      LINK Vodič za implementaciju mobilnosti REST API SMS - a2                 LINK Vodič za implementaciju mobilnosti REST API SMS - a3
Dobavljač usluga Netsize Consumer

LINK Vodič za implementaciju mobilnosti REST API SMS - a4

  1. Pošaljite MT poruku
  2. Vrati ID poruke
  3. Pošaljite SMS poruku
  4. Dostavite izvještaj o isporuci
  5. Pošaljite izvještaj o isporuci

Osnovni tok za slanje SMS poruke je opisan na sljedeći način:

Pružalac usluge postavlja zahtjev za slanje SMS poruke primaocu putem LINK Mobility sistema.

ID poruke se vraća dobavljaču usluga. Ovaj ID se može koristiti za npr. povezivanje poruke sa ispravnim izvještajem o isporuci.

LINK Mobility upravlja rutiranjem i isporučuje SMS poruku adresiranom Potrošaču.
Izvještaj o isporuci se pokreće, npr. kada se SMS poruka dostavi na uređaj Potrošača.

Izvještaj o isporuci se šalje Dobavljaču usluga. Izvještaj sadrži isti ID poruke kao što je vraćeno u koraku 2.

Alternativni tok: Nevažeći zahtjev

Ako su dostavljeni parametri ili korisnički akreditivi u zahtjevu nevažeći, greška se vraća dobavljaču usluge. Greška ukazuje na razlog odbijanja i protok se završava. Ne vraćaju se ID-ovi poruka.

3. Krajnja tačka

SMS resursu se pristupa putem:
/restapi/v1/sms
Example URL
https://europe.ipx.com/restapi/v1/sms
Radi sigurnosti veze, LINK Mobility REST API je dostupan samo preko HTTPS-a.
Sertifikat Link Mobility servera je potpisan od strane Thawte Server CA.

4. Operacije

SMS usluga omogućava sljedeće operacije:

Ime Put
Pošalji /restapi/v1/sms/send
4.1 Pošalji

Operacija slanja se koristi za slanje SMS-a jednom primaocu.

Ova operacija je namijenjena i osnovnim i naprednim korisnicima. U najjednostavnijem slučaju, za isporuku SMS-a potrebni su samo adresa odredišta i tekst poruke. LINK Mobility će otkriti šemu kodiranja podataka i izvršiti automatsku konkatenaciju poruke u više dijelova poruke ako je potrebno.

Za naprednu upotrebu, Dobavljač usluga može koristiti opcione parametre za potpunu kontrolu formatiranja poruke uključujući zaglavlje korisničkih podataka.

Pružalac usluge može slati povezane poruke, ali pripremu korisničkih podataka i zaglavlja korisničkih podataka mora izvršiti Pružalac usluge i poruka mora biti poslana putem višestrukih zahtjeva za slanje prema LINK Mobility.

5. Autentifikacija

Korisničko ime i lozinka se šalju u svakom zahtjevu koristeći HTTP Basic Authentication Scheme.

https://www.w3.org/Protocols/HTTP/1.0/spec.html#BasicAA

Akreditivi se šalju u zaglavlju autorizacije u HTTP zahtjevu. Klijent konstruiše polje zaglavlja kako je ovde opisano:

https://en.wikipedia.org/wiki/Basic_access_authentication#Client_side

Za nprample, ako je korisničko ime john, a changeme lozinka, rezultirajuće zaglavlje autorizacije je:

Autorizacija: Osnovni am9objpjaGFuZ2VtZSA=

Kao zamjenski, korisničko ime i lozinka se mogu poslati kao parametri zahtjeva. Ovo se preporučuje samo za klijente koji ne podržavaju Basic Auth.

6. Podnošenje zahtjeva

6.1 String upita

Parametri zahtjeva se šalju kao string upita koji sadrži parove ime/vrijednost. Niz upita je kodiran korištenjem procentnog kodiranja (URL kodiranje).

http://www.w3schools.com/tags/ref_urlencode.asp

Za nprample, Hello World! je kodiran kao Hello+World%21.

6.2 Obavezni parametri zahtjeva
Ime Max dužina Opis
odredišna adresa 40 MSISDN na koji treba poslati SMS poruku, počevši od koda zemlje. Prample: 46123456789.
Za neka tržišta (gdje potrošački MSISDN mora biti zamagljen) ova vrijednost također može biti alfanumerički pseudonim, s prefiksom „#“.
messageText 1600 Sadržaj SMS poruke.
6.3 Opcijski parametri zahtjeva (za naprednu upotrebu)
Ime Max dužina Opis
originatingAddress 16 Početna adresa za odlaznu SMS poruku. Tip izvorne adrese definiran je parametrom originatorTON.
Maksimalna dužina kratkog broja je 16.
Alfa numerički pošiljalac je ograničen na GSM zadanu abecedu sa maksimalnom dužinom od 11 znakova.
Maksimalna dužina MSISDN pošiljaoca je 15 (koristeći isti format kao element destinationAddress).
Može se izostaviti kada sistem odabere originatingAddress i originatingTON. Ova funkcija ovisi o tržištu i konfiguraciji.
Ponašanje se može razlikovati u zavisnosti od integracija operatera.
originatorTON 1 Vrsta broja izvorne adrese (TON):
0 – Kratak broj
1 – Alfa numerički (maksimalna dužina 11)
2 – MSISDN
Može se izostaviti kada će sistem odabrati originatingAddress i originatingTON. Ova funkcija ovisi o tržištu i konfiguraciji.
Ponašanje se može razlikovati u zavisnosti od integracija operatera.
userDataHeader 280 Zaglavlje korisničkih podataka zajedno sa korisničkim podacima može sadržavati do 140, odnosno 280 kada je heksadecimalno kodirano, okteta. Ovaj parametar je uvijek heksadecimalni kodiran.
DCS 3 Šema kodiranja podataka.
Ponašanje se može razlikovati u zavisnosti od integracija operatera.
PID 3 ID protokola.
Ponašanje se može razlikovati u zavisnosti od integracija operatera.
relativnoValidityTime 6 Relativno vrijeme važenja u sekundama (u odnosu na vrijeme podnošenja na LINK Mobility). Maksimalna vrijednost je 604800 (7 dana), a zadana vrijednost je 48 sati.
Ponašanje se može razlikovati u zavisnosti od integracija operatera.
Vrijeme isporuke 20 Timestamp kada SMS poruka treba biti dostavljena (odgođeno vrijeme isporuke). Pogledajte odjeljak o formatu datuma i vremena.
statusReportFlags 1 Zahtjev za dostavu izvještaja:
0 – Nema izvještaja o isporuci (podrazumevano)
1 – Zatražen izvještaj o isporuci
9 – Zatražen je izvještaj o isporuci servera (LINK Mobility ne prosljeđuje izvještaj dobavljaču usluga, ali ga čini dostupnim u izvještajima itd.)
campaignName 50 Transakcije LINK Mobility su tagged sa ovim imenom. Koristi se za grupisanje transakcija u izvještajima o mobilnosti veza.
maxConcatenatedMessages 1 Vrijednost između 1 i 10 koja definira koliko je spojenih poruka dozvoljeno. Podrazumevano je 3.
correlationId 100 ID koji je dao pružalac usluge koji će se prikazati u Izvještaju o isporuci.
korisničko ime 100 Pruža se kao alternativa HTTP osnovnoj autentifikaciji.
lozinka 100 Pruža se kao alternativa HTTP osnovnoj autentifikaciji.
6.4 Metode HTTP zahtjeva

Za maksimalnu interoperabilnost, API podržava i HTTP GET i POST metode zahtjeva. Druge HTTP metode nisu dozvoljene.

6.4.1 GET

Kodirani niz upita se dodaje na URL.

GET
https://europe.ipx.com/restapi/v1/sms/send?destinationAddress=461234
56789&messageText=Zdravo+Svijet%21
Autorizacija: Osnovni am9objpjaGFuZ2VtZSA=

6.4.2 POST

Kodirani niz upita se šalje u tijelu poruke HTTP zahtjeva. Content-Type je aplikacija/x-www-form-urlkodiran.

POST https://europe.ipx.com/restapi/v1/sms/send
Host: europe.ipx.com
Content-Type: application/x-www-form-urlkodiran
Autorizacija: Osnovni am9objpjaGFuZ2VtZSA=
Dužina sadržaja: 57

destinacijaAddress=46123456789&messageText=Zdravo+Svijet%21

6.5 Datum i vrijeme

Parametri u REST API-ju koji predstavljaju datum i vrijeme uvijek su u UTC vremenskoj zoni (koordinirano univerzalno vrijeme). Timestamps su predstavljeni kao string sa ovim tačnim formatom:
2017-04-25T23:20:50Z
Ovo predstavlja 20 minuta i 50 sekundi nakon 23. sata 25. aprila 2017. u UTC.

7. Poruka odgovora

Nakon primanja i tumačenja poruke zahtjeva, API odgovara porukom HTTP odgovora.

7.1 HTTP statusni kod

REST API uvijek vraća HTTP statusni kod 200 OK za obrađene zahtjeve. Tijelo poruke sadrži parametar responseCode koji se koristi za određivanje točnog ishoda.

7.2 Tijelo poruke

Tijelo poruke sastoji se od JSON-a koji opisuje ishod zahtjeva.
http://json.org/
Link Mobility JSON je u skladu sa Google JSON vodičem za stil.
https://google.github.io/styleguide/jsoncstyleguide.xml

7.3 Parametri odgovora
Ime Max dužina Opis
responseCode 3 0 označava uspješnu transakciju.
responseMessage 255 Tekstualni opis odgovora, npr. tekst greške.
timestamp 20 Datum i vrijeme kada je LINK Mobility obradio zahtjev. (Pogledajte odjeljak o formatu datuma/vremena).
traceId 36 Interni identifikator Link Mobility. Koristi se za podršku i rješavanje problema.
messageIds 10 x 36 Niz jedinstvenih ID-ova poruka LINK Mobility za svaku uspješnu poruku (vraća se više ID-ova poruka ako je poruka spojena).
Izostavlja se u slučaju neuspjeha.
7.4 dokample responses

Uspjeh

HTTP/1.1 200 OK
Content-Type: application/json
Dužina sadržaja: 144
Datum: Thu, 15 Sep 2016 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Uspjeh”,”vremenskiamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}

Ovdje je isti JSON formatiran za čitljivost:

{
"responseCode“:0,
"responseMessage“:”Uspjeh”,
"timestamp“:”2016-0915T13:20:31Z”,
"traceId“:”f678d30879fd4adc25f2”,
"messageIds“:[“1-4850879008”] }

Neuspjeh

HTTP/1.1 200 OK
Content-Type: application/json
Dužina sadržaja: 148
Datum: Thu, 15 Sep 2016 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Nevažeća prijava ili neovlašteno korištenje API-ja”,”timestamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}

Uspjeh

HTTP/1.1 200 OK
Content-Type: application/json
Dužina sadržaja: 144
Datum: Thu, 15 Sep 2016 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Uspjeh”,”vremenskiamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}

Ovdje je isti JSON formatiran za čitljivost:

{
"responseCode“:0,
"responseMessage“:”Uspjeh”,
"timestamp“:”2016-0915T13:20:31Z”,
"traceId“:”f678d30879fd4adc25f2”,
"messageIds“:[“1-4850879008”] }

Neuspjeh

HTTP/1.1 200 OK
Content-Type: application/json
Dužina sadržaja: 148
Datum: Thu, 15 Sep 2016 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Nevažeća prijava ili neovlašteno korištenje API-ja”,”timestamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}

7.5 Kodovi odgovora

Sljedeći kodovi odgovora se mogu vratiti u odgovoru za slanje:

Kod Tekst Opis
0 Uspjeh Uspješno izvršeno.
1 Nevažeća prijava ili neovlašteno korištenje API-ja LINK Mobility zabranjuje netačno korisničko ime ili lozinku ili dobavljača usluga.
2 Link Mobility blokira korisnika LINK Mobility blokira korisnika.
3 LINK Mobility ne obezbjeđuje rad Operacija je blokirana za dobavljača usluge.
4 LINK Mobility je nepoznat potrošač  LINK Mobility je nepoznat potrošač.
Ili ako je pseudonim korišten u zahtjevu; alias nije pronađen.
5 Korisnik je blokirao ovu uslugu u LINK Mobility Potrošač je blokirao ovu uslugu u LINK Mobility.
6 Izvorna adresa nije podržana Izvorna adresa nije podržana.
7 Alfa izvorna adresa nije podržana od strane naloga Alfa izvorna adresa nije podržana od strane naloga.
8 MSISDN izvorna adresa nije podržana MSISDN izvorna adresa nije podržana.
9 GSM prošireni nije podržan GSM prošireni nije podržan.
10 Unicode nije podržan Unicode nije podržan.
11 Izvještaj o statusu nije podržan Izvještaj o statusu nije podržan.
12 Potrebna sposobnost nije podržana Potrebna mogućnost (osim gore navedenih) za slanje poruke nije podržana.
13 Maksimalna stopa regulacije dobavljača sadržaja je premašena Pružalac usluge prebrzo šalje SMS poruke na LINK Mobility.
14 ID protokola nije podržan od strane naloga ID protokola nije podržan.
15 Prekoračeno je ograničenje povezivanja poruka Broj konkateniranih poruka premašuje maksimalan broj traženih.
16 Nije moguće usmjeriti poruku. LINK Mobility nije mogao usmjeriti poruku.
17 Zabranjeni vremenski period Nije dozvoljeno slanje poruke tokom vremenskog perioda
18 Prenizak saldo na računu provajdera usluga Provajder usluga je blokiran zbog preniskog stanja
50 Djelomičan uspjeh Djelomičan uspjeh prilikom slanja SMS poruke više primatelja.
99 Interna greška servera Druga greška Link Mobility, kontaktirajte LINK Mobility podršku za više informacija.
100 Nevažeća adresa odredišta Odredišna adresa (MSISDN ili alias) je nevažeća.
102 Nevažeći referentni (povezani) ID Referentni ID je nevažeći, možda je referentni ID već korišten, prestar ili nepoznat.
103 Nevažeći naziv računa Naziv računa je nevažeći.
105 Nevažeći meta podaci usluge Meta podaci usluge su nevažeći.
106 Nevažeća adresa porijekla Izvorna adresa je nevažeća.
107 Nevažeća alfanumerička izvorna adresa Alfanumerička izvorna adresa je nevažeća.
108 Nevažeće vrijeme valjanosti Vrijeme valjanosti je nevažeće.
109 Nevažeće vrijeme isporuke Vrijeme isporuke je nevažeće.
110 Nevažeći sadržaj poruke/korisnički podaci Korisnički podaci, odnosno SMS poruka su nevažeći.
111 Nevažeća dužina poruke Dužina SMS poruke je nevažeća.
112 Nevažeće zaglavlje korisničkih podataka Zaglavlje korisničkih podataka je nevažeće.
113 Nevažeća šema kodiranja podataka DCS je nevažeći.
114 Nevažeći ID protokola PID je nevažeći.
115 Nevažeće oznake izvještaja o statusu Oznake izvještaja o statusu su nevažeće.
116 Nevažeći TON Izvornik TON je nevažeći.
117 Nevažeći campaign name Campnaziv aign je nevažeći.
120 Nevažeće ograničenje za maksimalan broj povezanih poruka Maksimalan broj povezanih poruka je nevažeći.
121 Nevažeća msisdn izvorna adresa Izvorna adresa MSISDN-a je nevažeća.
122 Nevažeći ID korelacije ID korelacije je nevažeći.

8. Opcione karakteristike

8.1 MSISDN ispravka

MSISDN ispravka je opciona funkcija koju može omogućiti podrška LINK Mobility ako se to zatraži.

Ova funkcija će ispraviti odredišne ​​adrese i uskladiti ih sa potrebnim E.164 formatom. Pored ispravke formata, sistem takođe može obavljati funkciju specifične za tržište, kao što je prevođenje međunarodnih francuskih brojeva za ispravljanje DOM-TOM (départements et territoires d'outre-mer) brojeva kada je to primenjivo.

Ispod je nekoliko exampispravke:

Poslana adresa odredišta  Ispravljena adresa odredišta
+46(0)702233445 46702233445
(0046)72233445 46702233445
+460702233445 46702233445
46(0)702233445 46702233445
46070-2233445 46702233445
0046702233445 46702233445
+46(0)702233445aaa 46702233445
336005199999 2626005199999
(francuski broj preveden na DOM-TOM broj)

Dodatno, moguće je dozvoliti nacionalne telefonske brojeve za odabrano tržište. Kada je ova funkcija omogućena, bilo koji međunarodni brojevi za druga tržišta moraju biti poslani sa početnim znakom `+' kako bi se razlikovali od odabranog tržišta.

Ispod je nekoliko exampispravke učinjene kada se koristi Švedska (šifra zemlje 46) kao zadano tržište za nacionalne brojeve.

Poslana adresa odredišta Ispravljena adresa odredišta
0702233445 46702233445
070-2233 445 46702233445
070.2233.4455 46702233445
460702233445 46702233445
+460702233445 46702233445
+458022334455 458022334455
45802233445 Nevažeći jer nedostaje znak '+'

Imajte na umu da će ispravljeni MSISDN koristiti LINK Mobility i da će biti vraćen u izvještajima o isporuci.

Molimo kontaktirajte LINK Mobility podršku za više informacija.

8.2 Zamjena karaktera

Zamjena karaktera je opciona funkcija koju može omogućiti LINK Mobility podrška ako se to zatraži.

Ova funkcija će prevesti znakove ne-GSM abecede u korisničkim podacima (SMS tekst) u ekvivalentne znakove GSM abecede kada je DCS postavljen na “GSM” (17). Za nprample “Seqüência de teste em Português” će biti prevedeno u “Seqüencia de teste em Portugues”.

9. Izvještaji o isporuci

Pružalac usluga može, ako je omogućen, zahtijevati izvještaje o isporuci SMS poruka ili obavještenja o isporuci za poslane MT poruke. Ovi izvještaji se pokreću u SMSC operateru kada se MT poruka ili isporuči ciljanom potrošaču ili obriše, npr. istekla ili, iz nekog razloga, nije rutabilna.

Samo konačni status SMS poruke se prijavljuje Pružaocu usluge, odnosno isporučena ili obrisana. Generira se samo jedan izvještaj po MT poruci. Sa izbrisanim statusom može se primijeniti šifra razloga. Ova šifra razloga navodi razlog zašto SMS poruka nije isporučena.

Izvještaji se usmjeravaju preko LINK Mobility i šalju dobavljaču usluga koristeći HTTP protokol.

Da bi primio izvještaje, Pružalac usluga treba da implementira nprampna Java servlet ili ASP.NET stranicu. Oba primaju HTTP GET ili POST zahtjeve.

Parameters

Zahtjev uključuje sljedeće parametre:

Parametar Tip M/O/I* Zadana vrijednost Max dužina Opis
MessageId string M 22 ID poruke MT poruke kojoj ovaj izvještaj odgovara.
DestinationAddress string M 40 MSISDN korisnika, odnosno odredišna adresa originalne MT poruke.
StatusCode cijeli broj M 1 Statusni kod označava status MT poruke.
Primjenjivi statusni kodovi su:
0 – Isporučeno
2 – Izbrisano (primjenjuje se šifra razloga)
TimeStamp string M 20 Vrijeme koje pokazuje kada je LINK Mobility primio izvještaj o isporuci.
Vremenska zona vremenaamp je CET ili CEST (sa ljetnim računanjem vremena kako je definirano za EU).
Format: ggggMMdd HH:mm:ss.
Operater string M 100 Ime Operatera koji se koristi prilikom slanja SMS poruke ili ime naloga koji se koristi prilikom slanja SMS poruke.
Listu dostupnih operatera pruža LINK Mobility podrška.
ReasonCode cijeli broj O 3 Šifra razloga pokazuje zašto je poruka završila u statusu izbrisana.
Primjenjivi kodovi razloga su:
100 – istekao
101 – Odbijeno
102 – Greška u formatu
103 – Druga greška
110 – Pretplatnik nepoznat
111 – Pretplatnik zabranjen
112 – Pretplatnik nije opskrbljen
113 – Pretplatnik nedostupan
120 – SMSC kvar
121 – SMSC zagušenje
122 – SMSC roming
130 – Greška slušalice
131 – Prekoračena je memorija slušalice
Ponašanje se može razlikovati u zavisnosti od integracija operatera.
OperatorTimeStamp string O 20 Vrijeme koje pokazuje kada je izvještaj pokrenut u SMSC-u Operatora (ukoliko ga je dostavio Operator).
Vremenska zona vremenaamp je CET ili CEST (sa ljetnim računanjem vremena kako je definirano za EU).
Format: ggggMMdd HH:mm:ss.
StatusText string O 255 Čuvar mjesta za dodatne informacije od Operatera, npr. jasan tekstualni opis statusa/razloga. Ponašanje se može razlikovati u zavisnosti od integracija operatera.
CorrelationId string O 100 ID korelacije naveden u SendRequest ili SendTextRequest.
OperatorNetworkCode cijeli broj O 6 Kod mobilne mreže (MCC + MNC) Operatera.

* M = obavezno, O = opciono, I = zanemareno.
Pružalac usluga mora obezbijediti LINK Mobility sa metom URL za izvještaje o isporuci (opcionalno uključujući vjerodajnice za HTTP osnovnu autentifikaciju). Dobavljač usluga može odabrati koji preferirani HTTP metod će koristiti:
HTTP POST (preporučeno)
HTTP GET.

Example koristeći HTTP GET (uspješno isporučeno):
https://user:password@www.serviceprovider.com/receivereport?%20MessageId=122&DestinationAddress=46762050312&Operator=Vodafone&TimeStamp=20100401%2007%3A47%3A44&StatusCode=0

Example koristeći HTTP GET (nije isporučeno, Operater je dao vremenski okviramp za događaj):

https://user:password@www.serviceprovider.com/receivereport?MessageId=123&DestinationAddress=46762050312&Operator=Vodafone&OperatorTimeStamp=20100401%2007%3A47%3A59&TimeStamp=20100401%2007%3A47%3A51&StatusCode=2&StatusText=Delivery%20failed&ReasonCode=10

Parametri su URL encodedi.

Kodiranje znakova:
Dobavljač usluga može odabrati koje će željeno kodiranje znakova koristiti:
UTF-8 (preporučeno)
ISO-8859-1.

9.1 Potvrda dobavljača usluga

Pružalac usluga treba da potvrdi svaki izvještaj o isporuci. Potvrda može biti pozitivna, odnosno izvještaj o isporuci uspješno primljen, ili negativan, odnosno neuspješan.

Napomena: LINK Mobility ima vremensko ograničenje čitanja za potvrde od 30 sekundi za izvještaje o isporuci. Vremensko ograničenje će pokrenuti ponovni pokušaj isporuke (ako je ponovni pokušaj omogućen) ili otkazivanje isporuke (ako je ponovni pokušaj onemogućen). To znači da aplikacija dobavljača usluga mora osigurati brzo vrijeme odgovora, posebno pri velikom opterećenju.

Veoma je preporučljivo da potvrdite izvještaj o isporuci LINK Mobility prije obrade.

Pravilo za pozitivnu i negativnu potvrdu je opisano kako slijedi:

Pozitivna potvrda, ACK, dostavljen izvještaj o isporuci:
HTTP 200 kod odgovora raspona u kombinaciji sa sljedećim sadržajem u XML formatu:

Negativna potvrda, NAK, izvještaj o isporuci nije dostavljen:
Svaki odgovor osim pozitivnog priznanja, nprampda, negativnu potvrdu pokreće bilo koji HTTP kod greške ili sljedeći XML sadržaj:

XML sadržaj se može koristiti za kontrolu mehanizma ponovnog pokušaja LINK Mobility. NAK će uzrokovati pokušaj ponovnog pokušaja, ako je omogućen. Za dobavljače usluga koji nisu konfigurirani za mehanizam ponovnog pokušaja, XML sadržaj je opcionalan.

Ispod je HTTP POST zahtjev i odgovor nprampzapis izvještaja o isporuci dostavljenog pružaocu usluga:

HTTP zahtjev:

POST /context/app HTTP/1.1
Content-Type: application/x-www-form-urlencoded;charset=utf-8
Host: server:port
Dužina sadržaja: xx

MessageId=213123213&DestinationAddress=46762050312&Operator=Telia& OperatorTimeStamp=20130607%2010%3A45%3A00&TimeStamp=20130607%2010%3A 45%3A02&StatusCode=0

HTTP odgovor:

HTTP/1.1 200 OK
Content-Type: text/plain

9.2 Pokušaj ponovo

Sistem LINK Mobility može izvršiti pokušaje ponovnog pokušaja za neuspješne, tj. nepotvrdjene isporuke izvještaja o isporuci. Dobavljač usluga može odabrati željeno ponašanje ponovnog pokušaja:

Nema ponovnog pokušaja (podrazumevano) – poruka će biti odbačena ako pokušaj povezivanja ne uspe, istekne vreme za čitanje ili za bilo koji HTTP kod greške.

Pokušaj ponovo – poruka će biti ponovo poslana za svaku vrstu problema sa vezom, vremensko ograničenje čitanja ili negativnu potvrdu.

Kada je omogućen ponovni pokušaj za NAK, važno je razumjeti koji scenariji će generirati pokušaj ponovnog pokušaja od LINK Mobility i kako taj ponovni pokušaj funkcionira. Svaki dobavljač usluga ima svoj vlastiti red za ponovni pokušaj, gdje su poruke poređane prema vremenu porukeamp. Link Mobility uvijek prvo pokušava isporučiti starije poruke, iako pojedinačni redoslijed poruka koje se isporučuju dobavljaču usluga nije zajamčen. Glavni razlog zašto se poruke odbacuju iz reda za ponovni pokušaj jedan je od dva razloga: ili TTL poruka ističe ili (teoretski) red za ponovni pokušaj postaje pun. TTL zavisi od operatera i naloga, tj. može varirati u zavisnosti od operatera i/ili tipa poruke, npr. premium SMS ili SMS poruka sa standardnom tarifom.

Dobavljači usluga s omogućenim ponovnim pokušajem moraju provjeriti jedinstveni ID MT poruke kako bi osigurali da poruka već nije primljena.

Važno je da se pružalac usluga pridržava ovih jednostavnih pravila kada dođe do greške tokom obrade izvještaja o isporuci ako je razlog greške: privremeni, npr. baza podataka nije dostupna, treba vratiti NAK. LINK Mobility će ponovo poslati poruku.

Trajni i pokušaj ponovnog pokušaja će vjerovatno uzrokovati istu vrstu problema, ACK bi trebao biti vraćen. Za nprample, kada poruka nije mogla biti ispravno raščlanjena ili je izazvala neočekivanu grešku u toku izvođenja.

Postupanje u skladu s tim osigurat će da ne dođe do blokiranja ili degradacije protoka zbog ponovnog slanja izvještaja o isporuci.

10. Savjeti za implementaciju

1. Moguće je koristiti svoj web pretraživač za podnošenje zahtjeva API-ju. Ovo čini vrlo lakim istraživanje i procjenu usluga bez ikakvih razvojnih alata.

2. Chrome ili Firefox se preporučuju zajedno sa ekstenzijom kao što je JSONView za prikaz prilično formatiranog JSON-a.

3. Koristili smo SoapUI za testiranje POST-a, osnovne provjere autentičnosti i za inspekciju sirovih HTTP poruka zahtjeva i odgovora.

https://www.soapui.org/

4. CURL alat je koristan za podnošenje POST zahtjeva sa osnovnom autentifikacijom. Vidi prample ispod.

https://curl.haxx.se/

curl POST \
-H “Content-Type: application/x-www-form-urlkodirano” \
-H “Ovlašćenje: Osnovni am9objpjaGFuZ2VtZSA=” \
https://europe.ipx.com/restapi/v1/sms/send \
–podaci “destinationAddress=46123456789&messageText=Hello+World%21”

_______________

Transformacija personalizirane komunikacije

Dokumenti / Resursi

LINK Vodič za implementaciju mobilnosti REST API SMS [pdf] Korisnički priručnik
Vodič za implementaciju mobilnosti REST API SMS, mobilnost, vodič za implementaciju REST API SMS, REST API SMS, API SMS, SMS

Reference

Ostavite komentar

Vaša email adresa neće biti objavljena. Obavezna polja su označena *