LINK Mobility Implementation Guide REST API SMS User Guide

POVEZAVA Logotip mobilnosti A

LINK Priročnik za implementacijo mobilnosti REST API SMS

LINK Mobility ponuja storitev za dostavo sporočil, mikro plačila in lokacijske storitve. Platforma deluje kot pregleden pridobitelj vsebine z belo oznako in transakcijski usmerjevalnik med ponudniki storitev in operaterji.

LINK Mobility ponuja RESTful API, ki se lahko uporablja za dostop do storitev LINK Mobility, kot je pošiljanje SMS. Ta API je zasnovan tako, da je enostaven za uporabo in združljiv z vsemi sodobnimi jeziki in ogrodji. Z uporabo jezika po vaši izbiri lahko vaša aplikacija uporablja Link Mobility REST API za izvajanje zmogljivih zmožnosti sporočanja in plačevanja

© LINK Mobility, 10. marec 2021

Pravne informacije

Informacije v tem dokumentu so izključna last in avtorske pravice družbe Netsize. Je zaupen in namenjen izključno informativni uporabi. Ni zavezujoče in se lahko spremeni brez predhodnega obvestila. Vsako nepooblaščeno razkritje ali uporaba se šteje za nezakonito.

Netsize™ in linkmobility™ sta zaščitena s francoskimi, EGS in mednarodnimi zakoni o intelektualni lastnini.

Vse druge navedene blagovne znamke so izključna last njihovih lastnikov.

Ničesar v tem dokumentu ni mogoče razlagati kot podelitev kakršne koli licence ali pravice na podlagi patenta, avtorskih pravic ali blagovne znamke Netsize.

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

Obseg dokumenta

Ta dokument opisuje, kako ponudnik storitev uporablja API LINK Mobility REST za SMS. Namenjen je tehničnim arhitektom in projektantom, ki izvajajo storitve Ponudnika storitev.

1. Osnovna uporaba

Zelo preprosto je poslati SMS. Zahtevo HTTP pošljete LINK Mobility, ki jo je mogoče izvesti samo z uporabo a web brskalnik.

LINK Priročnik za implementacijo mobilnosti REST API SMS - a1

2. Funkcionalni Overview

Sistem LINK Mobility omogoča naslednje osnovne funkcionalnosti za SMS sporočila:
Pošiljanje mobilnih zaključenih (MT) SMS sporočil, kot so besedilna ali binarna (npr. WAP Push) premium in standardna tarifna sporočila.

Prejemanje poročil o dostavi za oddana MT sporočila.

Prejemanje mobilnih (MO) SMS sporočil, premium in standardna cena.
API SMS REST je namenjen pošiljanju sporočil MT SMS s standardno hitrostjo.

API pošilja vsa sporočila SMS asinhrono, kar omogoča funkcije, kot so:

“Požri in pozabi” – ponudnik storitev želi imeti bolj predvidljive odzivne čase in ne želi čakati na rezultat operaterja.

Funkcija ponovnega poskusa – LINK Mobility bo ponovno poslal sporočilo, če ima operater začasne težave.

2.1 Pošiljanje SMS sporočila

LINK Priročnik za implementacijo mobilnosti REST API SMS - a2                      LINK Priročnik za implementacijo mobilnosti REST API SMS - a2                 LINK Priročnik za implementacijo mobilnosti REST API SMS - a3
Ponudnik storitev Netsize Consumer

LINK Priročnik za implementacijo mobilnosti REST API SMS - a4

  1. Pošlji MT sporočilo
  2. ID povratnega sporočila
  3. Pošlji SMS sporočilo
  4. Dostavite poročilo o dostavi
  5. Pošlji poročilo o dostavi

Osnovni potek pošiljanja SMS sporočil je opisan takole:

Ponudnik storitve zahteva pošiljanje SMS sporočila prejemniku preko sistema LINK Mobility.

ID sporočila se vrne ponudniku storitev. Ta ID se lahko uporabi npr. za povezovanje sporočila s pravilnim poročilom o dostavi.

LINK Mobility skrbi za usmerjanje in dostavo SMS sporočila naslovljenemu potrošniku.
Poročilo o dostavi se sproži, npr. ko je SMS sporočilo dostavljeno na Potrošnikovo napravo.

Poročilo o dostavi se pošlje ponudniku storitev. Poročilo vsebuje isti ID sporočila, kot je bilo vrnjeno v 2. koraku.

Alternativni tok: Neveljavna zahteva

Če so podani parametri ali uporabniške poverilnice v zahtevi neveljavni, se ponudniku storitev vrne napaka. Napaka označuje razlog za zavrnitev in tok se konča. ID sporočila ni vrnjen.

3. Končna točka

Do vira SMS se dostopa po poti:
/restapi/v1/sms
Example URL
https://europe.ipx.com/restapi/v1/sms
Za varnost povezave je API LINK Mobility REST dostopen samo prek HTTPS.
Potrdilo strežnika Link Mobility je podpisano s strani Thawte Server CA.

4. Operacije

Storitev SMS omogoča naslednje operacije:

Ime Pot
Pošlji /restapi/v1/sms/send
4.1 Pošlji

Operacija pošiljanja se uporablja za pošiljanje SMS-a enemu prejemniku.

Ta operacija je namenjena osnovnim in naprednim uporabnikom. V najpreprostejšem primeru sta za dostavo SMS-a potrebna le ciljni naslov in besedilo sporočila. LINK Mobility bo zaznal shemo kodiranja podatkov in po potrebi izvedel samodejno združevanje sporočila v več delov sporočila.

Za napredno uporabo lahko ponudnik storitev uporabi izbirne parametre za popoln nadzor nad oblikovanjem sporočila, vključno z glavo uporabniških podatkov.

Ponudnik storitev lahko pošlje povezana sporočila, vendar mora pripraviti uporabniške podatke in glavo uporabniških podatkov ponudnik storitev, sporočilo pa mora biti poslano z več zahtevami za pošiljanje proti LINK Mobility.

5. Preverjanje pristnosti

Uporabniško ime in geslo sta poslana v vsaki zahtevi z uporabo osnovne sheme preverjanja pristnosti HTTP.

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

Poverilnice so poslane v glavi avtorizacije v zahtevi HTTP. Odjemalec sestavi polje glave, kot je opisano tukaj:

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

Na primerample, če je uporabniško ime john in changeme geslo, potem je nastala avtorizacijska glava:

Pooblastilo: Osnovno am9objpjaGFuZ2VtZSA=

Uporabniško ime in geslo lahko kot nadomestno oddate kot parametra zahteve. To je priporočljivo samo za odjemalce, ki ne podpirajo Basic Auth.

6. Oddaja zahteve

6.1 Poizvedbeni niz

Parametri zahteve so predloženi kot poizvedbeni niz, ki vsebuje pare ime/vrednost. Poizvedbeni niz je kodiran z uporabo odstotnega kodiranja (URL kodiranje).

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

Na primerample, pozdravljen svet! je kodiran kot Hello+World%21.

6.2 Obvezni parametri zahteve
Ime Največja dolžina Opis
destinacijski naslov 40 MSISDN, na katerega naj bo poslano sporočilo SMS, začenši s kodo države. nprample: 46123456789.
Za nekatere trge (kjer mora biti potrošniški MSISDN zakrit) je ta vrednost lahko tudi alfanumerični vzdevek s predpono »#«.
messageText 1600 Vsebina SMS sporočila.
6.3 Izbirni parametri zahteve (za napredno uporabo)
Ime Največja dolžina Opis
izvorni naslov 16 Izvorni naslov za odhodno sporočilo SMS. Vrsta izvornega naslova je definirana s parametrom originatorTON.
Največja dolžina kratke številke je 16.
Alfanumerični pošiljatelj je omejen na privzeto abecedo GSM z največjo dolžino 11 znakov.
Največja dolžina pošiljatelja MSISDN je 15 (z uporabo istega formata kot element destinationAddress).
Lahko se izpusti, če sistem izbere originatingAddress in originatingTON. Ta funkcija je odvisna od trga in konfiguracije.
Vedenje se lahko razlikuje glede na integracije operaterja.
originatorTON 1 Vrsta številke izvornega naslova (TON):
0 – Kratka številka
1 – alfanumerično (največja dolžina 11)
2 – MSISDN
Lahko se izpusti, če bo sistem izbral originatingAddress in originatingTON. Ta funkcija je odvisna od trga in konfiguracije.
Vedenje se lahko razlikuje glede na integracije operaterja.
userDataHeader 280 Glava uporabniških podatkov skupaj z uporabniškimi podatki lahko vsebuje do 140, tj. 280, če je šestnajstiško kodirano, oktetov. Ta parameter je vedno šestnajstiško kodiran.
DCS 3 Shema kodiranja podatkov.
Vedenje se lahko razlikuje glede na integracije operaterja.
PID 3 ID protokola.
Vedenje se lahko razlikuje glede na integracije operaterja.
relativeValidityTime 6 Relativni čas veljavnosti v sekundah (glede na čas oddaje v LINK Mobility). Največja vrednost je 604800 (7 dni), privzeta vrednost pa 48 ur.
Vedenje se lahko razlikuje glede na integracije operaterja.
čas dostave 20 Časovni časamp kdaj naj bo SMS sporočilo dostavljeno (zakasnjen čas dostave). Glejte razdelek o obliki zapisa datuma in časa.
statusReportFlags 1 Dostavi zahtevo za poročilo:
0 – Ni poročila o dostavi (privzeto)
1 – Zahtevano poročilo o dostavi
9 – zahtevano poročilo o dostavi strežnika (LINK Mobility ne posreduje poročila ponudniku storitev, ampak ga da na voljo v poročilih itd.)
campaignName 50 Transakcije LINK Mobility so tags tem imenom. Uporablja se za združevanje transakcij v poročilih Link Mobility.
maxConcatenatedMessages 1 Vrednost med 1 in 10, ki določa, koliko povezanih sporočil je dovoljenih. Privzeto je 3.
correlationId 100 ID, ki ga zagotovi ponudnik storitev in bo prikazan v poročilu o dostavi.
uporabniško ime 100 Na voljo kot alternativa osnovnemu preverjanju pristnosti HTTP.
geslo 100 Na voljo kot alternativa osnovnemu preverjanju pristnosti HTTP.
6.4 Metode zahtev HTTP

Za največjo interoperabilnost API podpira metode zahtev HTTP GET in POST. Druge metode HTTP niso dovoljene.

6.4.1 GET

Kodirani poizvedbeni niz je pripet k URL.

DOBITI
https://europe.ipx.com/restapi/v1/sms/send?destinationAddress=461234
56789&messageText=Pozdravljeni+Svet%21
Pooblastilo: Osnovno am9objpjaGFuZ2VtZSA=

6.4.2 OBJAVA

Kodiran poizvedbeni niz je predložen v telesu sporočila zahteve HTTP. Content-Type je application/x-www-form-urlkodirano.

OBJAVI https://europe.ipx.com/restapi/v1/sms/send
Gostitelj: europe.ipx.com
Vrsta vsebine: application / x-www-form-urlkodirano
Pooblastilo: Osnovno am9objpjaGFuZ2VtZSA=
Dolžina vsebine: 57

destinacijaAddress=46123456789&messageText=Pozdravljen+Svet%21

6.5 Datum in čas

Parametri v API-ju REST, ki predstavljajo datum in čas, so vedno v časovnem pasu UTC (Univerzalni koordinirani čas). Timestampso predstavljeni kot niz v tej natančni obliki:
2017-04-25T23:20:50Z
To predstavlja 20 minut in 50 sekund po 23. uri 25. aprila 2017 po UTC.

7. Odgovorno sporočilo

Po prejemu in razlagi sporočila zahteve se API odzove z odzivnim sporočilom HTTP.

7.1 Statusna koda HTTP

REST API vedno vrne statusno kodo HTTP 200 OK za obdelane zahteve. Telo sporočila vsebuje parameter responseCode, ki se uporablja za določitev natančnega rezultata.

7.2 Telo sporočila

Telo sporočila je sestavljeno iz JSON, ki opisuje izid zahteve.
http://json.org/
Link Mobility JSON je skladen z Google JSON Style Guide.
https://google.github.io/styleguide/jsoncstyleguide.xml

7.3 Parametri odziva
Ime Največja dolžina Opis
responseCode 3 0 pomeni uspešno transakcijo.
responseMessage 255 Besedilni opis odgovora, npr. besedilo napake.
časamp 20 Datum in čas, ko je LINK Mobility obdelal zahtevo. (Glejte razdelek o formatu datuma/časa).
traceId 36 Interni identifikator Link Mobility. Uporablja se za podporo in odpravljanje težav.
messageIds 10 x 36 Niz enoličnih ID-jev sporočil LINK Mobility za vsako uspešno sporočilo (če je sporočilo povezano, je vrnjenih več ID-jev sporočil).
Izpuščeno v primeru neuspeha.
7.4 Prample odzivi

Uspeh

HTTP/1.1 200 OK
Vrsta vsebine: aplikacija/json
Dolžina vsebine: 144
Datum: četrtek, 15. september 2016 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Uspeh”,”časamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}

Tukaj je isti JSON, oblikovan za berljivost:

{
responseCode“:0,
responseMessage“:”Uspeh”,
časamp“:”2016-0915T13:20:31Z”,
traceId“:”f678d30879fd4adc25f2”,
messageIds“:[“1-4850879008”] }

Neuspeh

HTTP/1.1 200 OK
Vrsta vsebine: aplikacija/json
Dolžina vsebine: 148
Datum: četrtek, 15. september 2016 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Neveljavna prijava ali nepooblaščena uporaba API-ja”,”časamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}

Uspeh

HTTP/1.1 200 OK
Vrsta vsebine: aplikacija/json
Dolžina vsebine: 144
Datum: četrtek, 15. september 2016 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Uspeh”,”časamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}

Tukaj je isti JSON, oblikovan za berljivost:

{
responseCode“:0,
responseMessage“:”Uspeh”,
časamp“:”2016-0915T13:20:31Z”,
traceId“:”f678d30879fd4adc25f2”,
messageIds“:[“1-4850879008”] }

Neuspeh

HTTP/1.1 200 OK
Vrsta vsebine: aplikacija/json
Dolžina vsebine: 148
Datum: četrtek, 15. september 2016 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Neveljavna prijava ali nepooblaščena uporaba API-ja”,”časamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}

7.5 Odzivne kode

V odgovoru za pošiljanje je mogoče vrniti naslednje kode odgovora:

Koda Besedilo Opis
0 Uspeh Uspešno izvedeno.
1 Neveljavna prijava ali nepooblaščena uporaba API-ja LINK Mobility prepoveduje napačno uporabniško ime ali geslo ali ponudnika storitev.
2 Potrošnika blokira Link Mobility Potrošnika blokira LINK Mobility.
3 LINK Mobility ne omogoča delovanja Operacija je za ponudnika storitev blokirana.
4 Potrošnik LINK Mobility ni znan  Potrošnik LINK Mobility ni znan.
Ali če je bil v zahtevi uporabljen vzdevek; vzdevek ni najden.
5 Potrošnik je blokiral to storitev v LINK Mobility Potrošnik je blokiral to storitev v LINK Mobility.
6 Izvorni naslov ni podprt Izvorni naslov ni podprt.
7 Izvorni naslov alfa ni podprt z računom Izvorni naslov alfa ni podprt z računom.
8 Izvorni naslov MSISDN ni podprt Izvorni naslov MSISDN ni podprt.
9 Razširjeni GSM ni podprt Razširjeni GSM ni podprt.
10 Unicode ni podprt Unicode ni podprt.
11 Poročilo o stanju ni podprto Poročilo o stanju ni podprto.
12 Zahtevana zmogljivost ni podprta Zahtevana zmožnost (razen zgornje) za pošiljanje sporočila ni podprta.
13 Največja stopnja dušenja ponudnika vsebine je presežena Ponudnik storitev prehitro pošilja sporočila SMS na LINK Mobility.
14 Račun ne podpira ID-ja protokola ID protokola ni podprt.
15 Omejitev združevanja sporočil je presežena Število povezanih sporočil presega največje zahtevano število.
16 Sporočila ni mogoče usmeriti. LINK Mobility ni uspel usmeriti sporočila.
17 Prepovedano časovno obdobje V časovnem obdobju ni dovoljeno pošiljati sporočil
18 Prenizko stanje na računu ponudnika storitev Ponudnik storitev je blokiran zaradi prenizkega stanja
50 Delni uspeh Delni uspeh pri pošiljanju SMS sporočila več prejemnikom.
99 Notranja napaka strežnika Druga napaka Link Mobility, za več informacij se obrnite na podporo LINK Mobility.
100 Neveljaven ciljni naslov Ciljni naslov (MSISDN ali vzdevek) ni veljaven.
102 Neveljaven referenčni (povezani) ID Referenčni ID je neveljaven, morda je referenčni ID že uporabljen, prestar ali neznan.
103 Neveljavno ime računa Ime računa je neveljavno.
105 Neveljavni metapodatki storitve Metapodatki storitve so neveljavni.
106 Neveljaven izvorni naslov Izvorni naslov je neveljaven.
107 Neveljaven alfanumerični izvorni naslov Alfanumerični izvorni naslov je neveljaven.
108 Neveljaven čas veljavnosti Čas veljavnosti je neveljaven.
109 Neveljaven čas dostave Čas dostave je neveljaven.
110 Neveljavna vsebina sporočila/uporabniški podatki Podatki o uporabniku, to je SMS sporočilo, so neveljavni.
111 Neveljavna dolžina sporočila Dolžina sporočila SMS ni veljavna.
112 Neveljavna glava uporabniških podatkov Glava uporabniških podatkov je neveljavna.
113 Neveljavna shema kodiranja podatkov DCS je neveljaven.
114 Neveljaven ID protokola PID je neveljaven.
115 Neveljavne zastavice poročila o stanju Oznake poročila o stanju so neveljavne.
116 Neveljavna TON Izvorni TON ni veljaven.
117 Neveljavno campaign ime Campime aign je neveljavno.
120 Neveljavna omejitev največjega števila povezanih sporočil Največje število povezanih sporočil je neveljavno.
121 Neveljaven izvorni naslov msisdn Izvorni naslov MSISDN ni veljaven.
122 Neveljaven ID korelacije ID korelacije je neveljaven.

8. Izbirne funkcije

8.1 Popravek MSISDN

Popravek MSISDN je izbirna funkcija, ki jo lahko na zahtevo omogoči podpora za mobilnost LINK.

Ta funkcija bo popravila ciljne naslove in jih uskladila z zahtevano obliko E.164. Poleg popravka formata lahko sistem izvaja tudi tržno specifične funkcije, kot je prevajanje mednarodnih francoskih številk za popravljanje številk DOM-TOM (départements et territoires d'outre-mer), kadar je to primerno.

Spodaj je nekaj prampmanj popravkov:

Poslan ciljni naslov  Popravljen ciljni naslov
+46(0)702233445 46702233445
(0046)72233445 46702233445
+460702233445 46702233445
46(0)702233445 46702233445
46070-2233445 46702233445
0046702233445 46702233445
+46(0)702233445aaa 46702233445
336005199999 2626005199999
(Francoska številka prevedena v številko DOM-TOM)

Poleg tega je mogoče omogočiti nacionalne telefonske številke za izbrani trg. Ko je ta funkcija omogočena, je treba vse mednarodne številke za druge trge poslati z začetnim znakom `+', da jih ločite od izbranega trga.

Spodaj je nekaj prampmanj popravkov pri uporabi Švedske (koda države 46) kot privzetega trga za nacionalne številke.

Poslan ciljni naslov Popravljen ciljni naslov
0702233445 46702233445
070-2233 445 46702233445
070.2233.4455 46702233445
460702233445 46702233445
+460702233445 46702233445
+458022334455 458022334455
45802233445 Neveljavno, ker manjka znak '+'

Upoštevajte, da bo LINK Mobility uporabil popravljen MSISDN in bo vrnjen v poročilih o dostavi.

Za več informacij se obrnite na podporo LINK Mobility.

8.2 Zamenjava znakov

Zamenjava znakov je izbirna funkcija, ki jo lahko na zahtevo omogoči podpora LINK Mobility.

Ta funkcija bo prevedla znake abecede, ki niso GSM, v uporabniških podatkih (besedilo SMS) v enakovredne znake abecede GSM, ko je DCS nastavljen na »GSM« (17). Na primerample »Seqüência de teste em Português« bo prevedeno v »Seqüencia de teste em Portugues«.

9. Poročila o dostavi

Ponudnik storitev lahko, če je na voljo, zahteva poročila o dostavi sporočil SMS ali obvestila o dostavi za poslana sporočila MT. Ta poročila se sprožijo v SMSC operaterja, ko je sporočilo MT bodisi dostavljeno ciljnemu potrošniku bodisi izbrisano, npr. poteklo ali iz nekega razloga ni mogoče usmerjati.

Ponudniku se sporoči le končni status SMS sporočila, tj. dostavljeno ali izbrisano. Ustvari se samo eno poročilo na sporočilo MT. Pri statusu izbrisanega se lahko uporabi koda vzroka. Ta koda vzroka določa razlog, zakaj sporočilo SMS ni bilo dostavljeno.

Poročila so usmerjena prek LINK Mobility in poslana ponudniku storitev s protokolom HTTP.

Za prejemanje poročil mora ponudnik storitev izvajati nprample Java Servlet ali stran ASP.NET. Oba prejmeta zahteve HTTP GET ali POST.

Parametri

Zahteva vključuje naslednje parametre:

Parameter Vrsta M/O/I* Privzeta vrednost Največja dolžina Opis
MessageId niz M 22 ID sporočila MT, ki mu ustreza to poročilo.
Ciljni naslov niz M 40 Potrošnikov MSISDN, tj ciljni naslov prvotnega sporočila MT.
StatusCode celo število M 1 Statusna koda označuje status sporočila MT.
Veljavne statusne kode so:
0 – Dostavljeno
2 – Izbrisano (velja koda vzroka)
ČasStamp niz M 20 Čas, ki označuje, kdaj je LINK Mobility prejel poročilo o dostavi.
Časovni pas časaamp je CET ali CEST (s poletnim časom, kot je opredeljen za EU).
Oblika: llllMMdd HH:mm:ss.
Operater niz M 100 Ime operaterja, uporabljenega pri pošiljanju SMS sporočila, ali ime računa, uporabljenega pri pošiljanju SMS sporočila.
Seznam razpoložljivih operaterjev zagotavlja podpora za mobilnost LINK.
ReasonCode celo število O 3 Koda vzroka označuje, zakaj je sporočilo končalo v statusu izbrisano.
Veljavne kode vzroka so:
100 – Poteklo
101 – Zavrnjeno
102 – Napaka formata
103 – Druga napaka
110 – Naročnik neznan
111 – Prepoved naročnika
112 – Naročnik ni omogočen
113 – Naročnik nedosegljiv
120 – okvara SMSC
121 – SMSC prezasedenost
122 – SMSC gostovanje
130 – Napaka slušalke
131 – Presežen pomnilnik slušalke
Vedenje se lahko razlikuje glede na integracije operaterja.
OperaterTimeStamp niz O 20 Čas, ki označuje, kdaj je bilo poročilo sproženo v SMSC operaterja (če ga operater zagotovi).
Časovni pas časaamp je CET ali CEST (s poletnim časom, kot je opredeljen za EU).
Oblika: llllMMdd HH:mm:ss.
StatusText niz O 255 Oznaka mesta za dodatne informacije operaterja, npr. jasen besedilni opis stanja/razloga. Vedenje se lahko razlikuje glede na integracije operaterja.
CorrelationId niz O 100 ID korelacije, naveden v SendRequest ali SendTextRequest.
OperaterNetworkCode celo število O 6 Koda mobilnega omrežja (MCC + MNC) operaterja.

* M = obvezno, O = neobvezno, I = prezrto.
Ponudnik storitev mora zagotoviti LINK Mobility s ciljem URL za poročila o dostavi (izbirno vključno s poverilnicami za osnovno avtentikacijo HTTP). Ponudnik storitev lahko izbere, katero prednostno metodo HTTP bo uporabil:
HTTP POST (priporočeno)
HTTP GET.

Exampdatoteka z uporabo HTTP GET (uspešno dostavljeno):
https://user:password@www.serviceprovider.com/receivereport?%20MessageId=122&DestinationAddress=46762050312&Operator=Vodafone&TimeStamp=20100401%2007%3A47%3A44&StatusCode=0

Example z uporabo HTTP GET (ni dostavljeno, operater je posredoval timestamp za dogodek):

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 so URL kodirano.

Kodiranje znakov:
Ponudnik storitev lahko izbere, katero prednostno kodiranje znakov bo uporabil:
UTF-8 (priporočeno)
ISO-8859-1.

9.1 Potrditev ponudnika storitev

Ponudnik storitev mora potrditi vsako poročilo o dostavi. Potrditev je lahko pozitivna, tj. dobavnica uspešno prejeta, ali negativna, tj. neuspeh.

Prosimo, upoštevajte: LINK Mobility ima časovno omejitev branja za potrditve 30 sekund za poročila o dostavi. Časovna omejitev bo sprožila ponovni poskus dostave (če je ponovni poskus omogočen) ali preklic dostave (če je ponovni poskus onemogočen). To pomeni, da mora aplikacija Service Provider zagotavljati hitre odzivne čase, še posebej pri visoki obremenitvi.

Zelo priporočljivo je, da poročilo o dostavi potrdite podjetju LINK Mobility, preden ga obdelate.

Pravilo za pozitivno in negativno potrditev je opisano takole:

Pozitivna potrditev, ACK, dostavljeno poročilo o dostavi:
Odzivna koda obsega HTTP 200 v kombinaciji z naslednjo vsebino v formatu XML:

Negativna potrditev, NAK, dobavnica ni bila dostavljena:
Kakršen koli odgovor razen pozitivne potrditve, nprample, negativno potrditev sproži katera koli koda napake HTTP ali naslednja vsebina XML:

Vsebino XML je mogoče uporabiti za krmiljenje mehanizma ponovnih poskusov LINK Mobility. NAK bo povzročil ponovni poskus, če je omogočen. Za ponudnike storitev, ki niso konfigurirani za mehanizem ponovnega poskusa, je vsebina XML neobvezna.

Spodaj sta zahteva HTTP POST in odgovor, nprampporočila o dostavi, dostavljenega ponudniku storitev:

Zahteva HTTP:

POST /kontekst/aplikacija HTTP/1.1
Vrsta vsebine: application / x-www-form-urlkodirano;charset=utf-8
Gostitelj: strežnik:vrata
Dolžina vsebine: xx

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

Odgovor HTTP:

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

9.2 Poskusi znova

Sistem LINK Mobility lahko izvaja ponovne poskuse za neuspele, tj. nepotrjene, dostave poročil o dostavi. Ponudnik storitev lahko izbere želeno vedenje ponovnega poskusa:

Brez ponovnega poskusa (privzeto) – sporočilo bo zavrženo, če poskus povezave ne uspe, preteče časovna omejitev branja ali katera koli koda napake HTTP.

Poskusite znova – sporočilo bo ponovno poslano za vsako vrsto težave s povezavo, časovno omejitev branja ali negativno potrditev.

Ko je ponovni poskus za NAK omogočen, je pomembno razumeti, kateri scenariji bodo ustvarili ponovni poskus iz LINK Mobility in kako ponovni poskus deluje. Vsak ponudnik storitev ima svojo čakalno vrsto za ponovni poskus, kjer so sporočila razvrščena glede na čas sporočilaamp. Link Mobility poskuša vedno najprej dostaviti starejša sporočila, čeprav ni zagotovljen posamezen vrstni red sporočil, dostavljenih ponudniku storitev. Glavni razlog za izločitev sporočil iz čakalne vrste za ponovne poskuse je eden od dveh razlogov: bodisi TTL sporočila poteče ali pa (teoretično) čakalna vrsta za ponovne poskuse postane polna. TTL je odvisen od operaterja in računa, kar pomeni, da se lahko razlikuje glede na operaterja in/ali vrsto sporočila, npr. plačljivo SMS ali standardno tarifno sporočilo SMS.

Ponudnik storitev z omogočenim ponovnim poskusom mora preveriti enolični ID sporočila MT, da zagotovi, da sporočilo še ni bilo prejeto.

Za ponudnika storitev je pomembno, da upošteva ta preprosta pravila, ko pride do napake med obdelavo poročila o dostavi, če je razlog za napako: Začasen, npr. zbirka podatkov ni na voljo, NAK je treba vrniti. LINK Mobility bo ponovno poslal sporočilo.

Trajni in ponovni poskus bosta verjetno povzročila enako težavo, zato je treba vrniti ACK. Na primerample, ko sporočila ni bilo mogoče pravilno razčleniti ali je povzročilo nepričakovano napako med izvajanjem.

Ustrezno ukrepanje bo zagotovilo, da ne bo prišlo do blokade ali poslabšanja prepustnosti zaradi večkratnega ponovnega pošiljanja poročila o dostavi.

10. Nasveti za izvedbo

1. Možna je uporaba vašega web brskalnik za pošiljanje zahtev API-ju. To zelo olajša raziskovanje in ocenjevanje storitev brez razvojnih orodij.

2. Chrome ali Firefox sta priporočljiva skupaj z razširitvijo, kot je JSONView za prikaz lepo formatiranega JSON.

3. SoapUI smo uporabili za testiranje POST-a, osnovne avtentikacije in za pregled neobdelanih zahtev HTTP in odzivnih sporočil.

https://www.soapui.org/

4. CURL orodje je uporabno za pošiljanje zahtev POST z osnovno avtentikacijo. Glej prample spodaj.

https://curl.haxx.se/

curl OBJAVI \
-H »Content-Type: application/x-www-form-urlkodirano” \
-H “Avtorizacija: Osnovna am9objpjaGFuZ2VtZSA=” \
https://europe.ipx.com/restapi/v1/sms/send \
–data "destinationAddress=46123456789&messageText=Hello+World%21"

_______________

Preoblikovanje prilagojenih komunikacij

Dokumenti / Viri

LINK Priročnik za implementacijo mobilnosti REST API SMS [pdf] Uporabniški priročnik
Vodnik za implementacijo mobilnosti REST API SMS, mobilnost, vodnik za implementacijo REST API SMS, REST API SMS, API SMS, SMS

Reference

Pustite komentar

Vaš elektronski naslov ne bo objavljen. Obvezna polja so označena *