LINK Mobiliteit Implementatiehandleiding REST API SMS Gebruikershandleiding

LINK Mobiliteitslogo A

LINK Mobiliteit Implementatiehandleiding REST API SMS

LINK Mobility biedt een service voor berichtlevering, microbetalingen en locatiegebaseerde services. Het platform fungeert als een transparante, white-label content acquirer en transactierouter tussen serviceproviders en operators.

LINK Mobility biedt een RESTful API die kan worden gebruikt om toegang te krijgen tot LINK Mobility-services zoals het verzenden van sms. Deze API is ontworpen om eenvoudig te gebruiken en compatibel te zijn met alle moderne talen en frameworks. Met de taal van uw keuze kan uw applicatie de Link Mobility REST API gebruiken om krachtige berichten- en betalingsmogelijkheden te implementeren

© LINK Mobility, 10 maart 2021

Juridische informatie

De informatie in dit document is het exclusieve eigendom en copyright van Netsize. Het is vertrouwelijk en bedoeld voor strikt informatief gebruik. Het is niet bindend en kan zonder kennisgeving worden gewijzigd. Elke ongeautoriseerde openbaarmaking of gebruik wordt beschouwd als onwettig.

Netsize™ en linkmobility™ worden beschermd door Franse, EEG- en internationale wetten op het gebied van intellectuele eigendom.

Alle overige genoemde handelsmerken zijn het exclusieve eigendom van hun respectievelijke eigenaren.

Niets in dit document mag worden opgevat als het verlenen van een licentie of recht onder het patent, auteursrecht of handelsmerk van Netsize.

NETGROOTTE
Anonieme vennootschap met kapitaal van 5 478 070 euro
Siège social:62, avenue Emile Zola92100 Boulogne – Frankrijk
418 712 477 RCS Nanterre
http://www.LinkMobility.com
http://www.linkmobility.com

Reikwijdte van document

Dit document beschrijft hoe de Service Provider de LINK Mobility REST API voor SMS gebruikt. Het is bedoeld voor technische architecten en ontwerpers die de services van de Service Provider implementeren.

1. Basisgebruik

Het is heel eenvoudig om een ​​SMS te sturen. U stuurt een HTTP-verzoek naar LINK Mobility, wat kan worden bereikt met slechts een web browser.

LINK Mobiliteit Implementatiehandleiding REST API SMS - a1

2. Functioneel Overview

Het LINK Mobility-systeem biedt de volgende basisfunctionaliteit voor SMS-berichten:
Het verzenden van MT-SMS-berichten (Mobile Terminated), zoals tekst- of binaire (bijv. WAP Push) premium- en standaardtariefberichten.

Ontvangst van leveringsrapporten voor verzonden MT-berichten.

Ontvangen van SMS-berichten afkomstig van mobiele telefoons (MO), tegen premium- en standaardtarief.
De SMS REST API is bedoeld voor het versturen van MT SMS-berichten tegen standaardtarief.

De API verstuurt alle sms-berichten asynchroon, waardoor functies zoals:

“Fire-and-forget” – de serviceprovider wil voorspelbaardere responstijden en wil niet wachten op het resultaat van de operator.

Opnieuw proberen-functionaliteit – LINK Mobility verstuurt het bericht opnieuw als de Operator tijdelijke problemen heeft.

2.1 Een SMS-bericht versturen

LINK Mobiliteit Implementatiehandleiding REST API SMS - a2                      LINK Mobiliteit Implementatiehandleiding REST API SMS - a2                 LINK Mobiliteit Implementatiehandleiding REST API SMS - a3
Dienstverlener Netsize Consumer

LINK Mobiliteit Implementatiehandleiding REST API SMS - a4

  1. Stuur MT-bericht
  2. Retourbericht-ID
  3. SMS-bericht verzenden
  4. Lever leveringsrapport
  5. Verzenden van leveringsrapport

De basisstroom voor het versturen van een SMS-bericht wordt als volgt beschreven:

De Dienstverlener doet een verzoek om een ​​SMS-bericht te versturen naar een ontvanger via het LINK Mobility-systeem.

Een bericht-ID wordt teruggestuurd naar de Service Provider. Deze ID kan bijvoorbeeld worden gebruikt om het bericht te correleren met het juiste bezorgingsrapport.

LINK Mobility verzorgt de routering en bezorgt het SMS-bericht aan de geadresseerde Consument.
Er wordt een afleverrapport gegenereerd, bijvoorbeeld wanneer het sms-bericht op het apparaat van de consument is afgeleverd.

Het leveringsrapport wordt naar de serviceprovider verzonden. Het rapport bevat dezelfde bericht-ID als die in stap 2 is geretourneerd.

Alternatieve stroom: ongeldig verzoek

Als de opgegeven parameters of gebruikersreferenties in de aanvraag ongeldig zijn, wordt er een fout geretourneerd naar de serviceprovider. De fout geeft de reden voor de afwijzing aan en de flow eindigt. Er worden geen bericht-ID's geretourneerd.

3. Eindpunt

U krijgt toegang tot de SMS-bron via het pad:
/restaureren/v1/sms
Example URL
https://europe.ipx.com/restapi/v1/sms
Voor de beveiliging van de verbinding is de LINK Mobility REST API alleen toegankelijk via HTTPS.
Het Link Mobility-servercertificaat is ondertekend door Thawte Server CA.

4. Operaties

De SMS-service biedt de volgende bewerkingen:

Naam Pad
Versturen /restapi/v1/sms/verzenden
4.1 Verzenden

Met de verzendbewerking kunt u een sms-bericht naar één ontvanger verzenden.

Deze bewerking is bedoeld voor zowel basis- als gevorderde gebruikers. In het eenvoudigste geval zijn alleen het bestemmingsadres en de berichttekst vereist om een ​​sms te bezorgen. LINK Mobility detecteert het Data Coding Scheme en voert indien nodig automatische samenvoeging van een bericht in meerdere berichtdelen uit.

Voor geavanceerd gebruik kan de serviceprovider optionele parameters gebruiken voor volledige controle over de berichtopmaak, inclusief de gebruikersgegevensheader.

De Service Provider kan aaneengeschakelde berichten versturen, maar de voorbereiding van de gebruikersgegevens en de header van de gebruikersgegevens moet door de Service Provider worden gedaan en het bericht moet via meerdere verzendverzoeken naar LINK Mobility worden verzonden.

5. Authenticatie

Gebruikersnaam en wachtwoord worden bij elke aanvraag meegestuurd via het HTTP Basic Authentication Scheme.

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

Credentials worden verzonden in een Authorization header in de HTTP-aanvraag. De client construeert het headerveld zoals hier beschreven:

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

Bijvoorbeeldample, als de gebruikersnaam john is en changeme het wachtwoord, dan is de resulterende Authorization header:

Autorisatie: Basis am9objpjaGFuZ2VtZSA=

Als fall-back kunnen de gebruikersnaam en het wachtwoord worden ingediend als aanvraagparameters. Dit wordt alleen aanbevolen voor clients die Basic Auth niet ondersteunen.

6. Een verzoek indienen

6.1 Zoekreeks

Aanvraagparameters worden ingediend als een queryreeks met naam/waardeparen. De queryreeks wordt gecodeerd met Percent Encoding (URL codering).

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

Bijvoorbeeldample, Hallo Wereld! is gecodeerd als Hallo+Wereld%21.

6.2 Verplichte aanvraagparameters
Naam Maximale lengte Beschrijving
bestemmingAdres 40 De MSISDN waarnaar het SMS-bericht moet worden verzonden, beginnend met de landcode. Bijv.ampadres: 46123456789.
Voor sommige markten (waar de Consumer MSISDN moet worden verduisterd) kan deze waarde ook een alfanumerieke alias zijn, voorafgegaan door “#”.
berichtTekst 1600 De inhoud van het SMS-bericht.
6.3 Optionele aanvraagparameters (voor geavanceerd gebruik)
Naam Maximale lengte Beschrijving
oorspronkelijkAdres 16 Het oorspronkelijke adres voor het uitgaande SMS-bericht. Het type van het oorspronkelijke adres wordt gedefinieerd door de originatorTON-parameter.
De maximale lengte van het korte nummer is 16.
De alfanumerieke afzender is beperkt tot het standaard GSM-alfabet met een maximale lengte van 11 tekens.
De maximale lengte van de MSISDN-verzender is 15 (met dezelfde indeling als het element destinationAddress).
Kan worden weggelaten wanneer het systeem het oorspronkelijk adres en de oorspronkelijk ton selecteert. Deze functie is afhankelijk van de markt en de configuratie.
Gedrag kan variëren afhankelijk van Operator-integraties.
originatorTON 1 Het type nummer van het oorspronkelijke adres (TON):
0 – Kort nummer
1 – Alfanumeriek (max. lengte 11)
2 – MSISDN
Kan worden weggelaten wanneer het systeem het oorspronkelijk adres en de oorspronkelijk ton selecteert. Deze functie is afhankelijk van de markt en de configuratie.
Gedrag kan variëren afhankelijk van Operator-integraties.
gebruikersDataHeader 280 User Data Header kan samen met de User Data maximaal 140, dwz 280 indien hex-gecodeerd, octetten bevatten. Deze parameter is altijd hex-gecodeerd.
DCS 3 Gegevenscoderingsschema.
Gedrag kan variëren afhankelijk van Operator-integraties.
PID 3 Protocol-ID.
Gedrag kan variëren afhankelijk van Operator-integraties.
relatieveValiditeitTijd 6 Relatieve geldigheidstijd in seconden (relatief ten opzichte van de tijd voor de indiening bij LINK Mobility). Maximale waarde is 604800 (7 dagen) en de standaardwaarde is 48 uur.
Gedrag kan variëren afhankelijk van Operator-integraties.
levertijd 20 Tijdstipamp wanneer het SMS-bericht afgeleverd moet worden (vertraagde bezorgtijd). Zie het gedeelte over datum- en tijdnotatie.
statusRapportVlaggen 1 Rapportaanvraag indienen:
0 – Geen bezorgrapport (standaard)
1 – Leveringsrapport aangevraagd
9 – Serverleveringsrapport aangevraagd (LINK Mobility stuurt het rapport niet door naar de serviceprovider, maar maakt het beschikbaar in rapporten enz.)
campaignName 50 De LINK Mobility-transacties zijn tagged met deze naam. Het wordt gebruikt om transacties te groeperen in Link Mobility-rapporten.
maxGeconcateneerdeBerichten 1 Een waarde tussen 1 en 10 die definieert hoeveel geconcateneerde berichten zijn toegestaan. Standaard is 3.
correlatie-ID 100 De door de serviceprovider verstrekte ID wordt weergegeven in het leveringsrapport.
gebruikersnaam 100 Wordt aangeboden als alternatief voor HTTP Basic Authentication.
wachtwoord 100 Wordt aangeboden als alternatief voor HTTP Basic Authentication.
6.4 HTTP-aanvraagmethoden

Voor maximale interoperabiliteit ondersteunt de API zowel HTTP GET als POST-aanvraagmethoden. Andere HTTP-methoden zijn niet toegestaan.

6.4.1 KRIJGEN

De gecodeerde queryreeks wordt toegevoegd aan de URL.

KRIJGEN
https://europe.ipx.com/restapi/v1/sms/send?destinationAddress=461234
56789&messageText=Hallo+Wereld%21
Autorisatie: Basis am9objpjaGFuZ2VtZSA=

6.4.2 POSTEN

De gecodeerde queryreeks wordt ingediend in de berichttekst van de HTTP-aanvraag. Het contenttype is application/x-www-form-urlgecodeerd.

NA https://europe.ipx.com/restapi/v1/sms/send
Gastheer: europe.ipx.com
Inhoudstype: application/x-www-form-urlgecodeerd
Autorisatie: Basis am9objpjaGFuZ2VtZSA=
Inhoud-lengte: 57

bestemmingsAdres=46123456789&berichttekst=Hallo+Wereld%21

6.5 Datum en tijd

Parameters in de REST API die datum en tijd weergeven, zijn altijd in de UTC-tijdzone (Coordinated Universal Time).amps worden weergegeven als een tekenreeks met dit exacte formaat:
2017-04-25T23:20:50Z
Dit komt overeen met 20 minuten en 50 seconden na het 23e uur van 25 april 2017 in UTC.

7. Reactiebericht

Nadat een aanvraagbericht is ontvangen en geïnterpreteerd, reageert de API met een HTTP-antwoordbericht.

7.1 HTTP-statuscode

De REST API retourneert altijd HTTP-statuscode 200 OK voor verwerkte verzoeken. De berichttekst bevat een parameter responseCode die wordt gebruikt om de exacte uitkomst te bepalen.

7.2 Berichttekst

De berichttekst bestaat uit JSON-gegevens die de uitkomst van het verzoek beschrijven.
http://json.org/
Link Mobility JSON voldoet aan de Google JSON Style Guide.
https://google.github.io/styleguide/jsoncstyleguide.xml

7.3 Responsparameters
Naam Maximale lengte Beschrijving
antwoordcode 3 0 geeft aan dat de transactie succesvol is.
antwoordBericht 255 Tekstuele beschrijving van het antwoord, bijvoorbeeld fouttekst.
tijdamp 20 Datum en tijd waarop LINK Mobility het verzoek heeft verwerkt. (Raadpleeg het gedeelte over datum-/tijdnotatie).
trace-ID 36 Link Mobility interne identificatie. Gebruikt voor ondersteuning en probleemoplossing.
bericht-ID's 10x36 Array met unieke LINK Mobility-bericht-ID's voor elk succesvol bericht (er worden meerdere bericht-ID's geretourneerd als het bericht wordt samengevoegd).
Weggelaten indien mislukt.
7.4 voorbeeldampde reacties

Succes

HTTP/1.1 200 OK
Inhoudstype: application/json
Inhoud-lengte: 144
Datum: Do, 15 Sep 2016 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Succes”,”timestamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}

Hier is dezelfde JSON, geformatteerd voor leesbaarheid:

{
antwoordcode“:0,
antwoordBericht":"Succes",
tijdamp“:”2016-0915T13:20:31Z”,
trace-ID“:”f678d30879fd4adc25f2”,
bericht-ID's“:[“1-4850879008”]}

Mislukking

HTTP/1.1 200 OK
Inhoudstype: application/json
Inhoud-lengte: 148
Datum: Do, 15 Sep 2016 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Ongeldige login of ongeautoriseerd API-gebruik”,”timestamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}

Succes

HTTP/1.1 200 OK
Inhoudstype: application/json
Inhoud-lengte: 144
Datum: Do, 15 Sep 2016 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Succes”,”timestamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}

Hier is dezelfde JSON, geformatteerd voor leesbaarheid:

{
antwoordcode“:0,
antwoordBericht":"Succes",
tijdamp“:”2016-0915T13:20:31Z”,
trace-ID“:”f678d30879fd4adc25f2”,
bericht-ID's“:[“1-4850879008”]}

Mislukking

HTTP/1.1 200 OK
Inhoudstype: application/json
Inhoud-lengte: 148
Datum: Do, 15 Sep 2016 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Ongeldige login of ongeautoriseerd API-gebruik”,”timestamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}

7.5 Antwoordcodes

De volgende antwoordcodes kunnen worden geretourneerd in het verzendantwoord:

Code Tekst Beschrijving
0 Succes Succesvol uitgevoerd.
1 Ongeldige login of ongeautoriseerd API-gebruik Een onjuiste gebruikersnaam, wachtwoord of serviceprovider wordt door LINK Mobility geblokkeerd.
2 Consument wordt geblokkeerd door Link Mobility De Consument wordt geblokkeerd door LINK Mobility.
3 De werking wordt niet verzorgd door LINK Mobility De bewerking is geblokkeerd voor de serviceprovider.
4 De consument is onbekend bij LINK Mobility  De Consument is onbekend bij LINK Mobility.
Of als er een alias is gebruikt in de aanvraag: alias niet gevonden.
5 Consument heeft deze service geblokkeerd in LINK Mobility De Consument heeft deze dienst geblokkeerd in LINK Mobility.
6 Het oorspronkelijke adres wordt niet ondersteund Het oorspronkelijke adres wordt niet ondersteund.
7 Alfa-oorsprongadres wordt niet ondersteund door account Het alfa-oorspronkelijke adres wordt niet ondersteund door het account.
8 MSISDN-oorsprongsadres wordt niet ondersteund Het MSISDN-oorsprongsadres wordt niet ondersteund.
9 GSM uitgebreid niet ondersteund GSM uitgebreid wordt niet ondersteund.
10 Unicode wordt niet ondersteund Unicode wordt niet ondersteund.
11 Statusrapport niet ondersteund Statusrapport wordt niet ondersteund.
12 Vereiste capaciteit wordt niet ondersteund De vereiste functionaliteit (behalve de bovenstaande) voor het verzenden van het bericht wordt niet ondersteund.
13 De maximale bandbreedtebeperking van de contentprovider is overschreden De serviceprovider verstuurt de sms-berichten te snel naar LINK Mobility.
14 Protocol-ID wordt niet ondersteund door account Protocol-ID wordt niet ondersteund.
15 Limiet voor berichtensamenvoeging overschreden Het aantal aaneengeschakelde berichten overschrijdt het maximaal aangevraagde aantal.
16 Bericht kan niet worden gerouteerd. LINK Mobility kon het bericht niet routeren.
17 Verboden tijdsperiode Het is niet toegestaan ​​om berichten te versturen tijdens de tijdsperiode
18 Te laag saldo op de rekening van de serviceprovider Dienstverlener is geblokkeerd vanwege Te laag saldo
50 Gedeeltelijk succes Gedeeltelijk succes bij het versturen van een SMS-bericht naar meerdere ontvangers.
99 Interne serverfout Andere Link Mobility-fout. Neem contact op met de LINK Mobility-ondersteuning voor meer informatie.
100 Ongeldig bestemmingsadres Het bestemmingsadres (MSISDN of alias) is ongeldig.
102 Ongeldige gerefereerde (gekoppelde) ID De referentie-ID is ongeldig. Mogelijk wordt de referentie-ID al gebruikt, is deze te oud of onbekend.
103 Ongeldige accountnaam De accountnaam is ongeldig.
105 Ongeldige servicemetagegevens De servicemetagegevens zijn ongeldig.
106 Ongeldig herkomstadres Het oorspronkelijke adres is ongeldig.
107 Ongeldig alfanumeriek herkomstadres Het alfanumerieke herkomstadres is ongeldig.
108 Ongeldige geldigheidstijd De geldigheidsduur is ongeldig.
109 Ongeldige levertijd De levertijd is ongeldig.
110 Ongeldige berichtinhoud/gebruikersgegevens De gebruikersgegevens, d.w.z. het sms-bericht, zijn ongeldig.
111 Ongeldige berichtlengte De lengte van het SMS-bericht is ongeldig.
112 Ongeldige gebruikersgegevenskop De header van de gebruikersgegevens is ongeldig.
113 Ongeldig gegevenscoderingsschema De DCS is ongeldig.
114 Ongeldige protocol-ID De PID is ongeldig.
115 Ongeldige statusrapportvlaggen De statusrapportvlaggen zijn ongeldig.
116 Ongeldige TON De originator TON is ongeldig.
117 Ongeldige campign naam De campnaam is ongeldig.
120 Ongeldige limiet voor maximaal aantal aaneengeschakelde berichten Het maximale aantal aaneengeschakelde berichten is ongeldig.
121 Ongeldig msisdn-oorsprongsadres Het MSISDN-oorsprongsadres is ongeldig.
122 Ongeldige correlatie-ID De correlatie-ID is ongeldig.

8. Optionele functies

8.1 MSISDN-correctie

MSISDN-correctie is een optionele functie die indien gewenst kan worden ingeschakeld via LINK Mobility-ondersteuning.

Deze functie corrigeert bestemmingsadressen en stemt ze af op het vereiste E.164-formaat. Naast formaatcorrectie kan het systeem ook marktspecifieke functionaliteit uitvoeren, zoals het vertalen van internationale Franse nummers om DOM-TOM-nummers (départements et territoires d'outre-mer) te corrigeren, indien van toepassing.

Hieronder staan ​​een aantal voorbeeldenampcorrecties:

Ingediend bestemmingsadres  Gecorrigeerd bestemmingsadres
+46(0)702233445 46702233445
(0046)72233445 46702233445
+460702233445 46702233445
46(0)702233445 46702233445
46070-2233445 46702233445
0046702233445 46702233445
+46(0)702233445aaa 46702233445
336005199999 2626005199999
(Frans nummer vertaald naar een DOM-TOM nummer)

Daarnaast is het mogelijk om nationale telefoonnummers toe te staan ​​voor een geselecteerde markt. Wanneer deze functie is ingeschakeld, moeten alle internationale nummers voor andere markten worden verzonden met een beginteken `+' om ze te onderscheiden van de geselecteerde markt.

Hieronder staan ​​een aantal exampEr zijn minder correcties uitgevoerd bij het gebruik van Zweden (landcode 46) als standaardmarkt voor nationale nummers.

Ingediend bestemmingsadres Gecorrigeerd bestemmingsadres
0702233445 46702233445
070-2233 445 46702233445
070.2233.4455 46702233445
460702233445 46702233445
+460702233445 46702233445
+458022334455 458022334455
45802233445 Ongeldig omdat het '+' teken ontbreekt

Houd er rekening mee dat de gecorrigeerde MSISDN door LINK Mobility wordt gebruikt en in de leveringsrapporten wordt weergegeven.

Neem contact op met LINK Mobility support voor meer informatie.

8.2 Karaktervervanging

Tekenvervanging is een optionele functie die indien gewenst kan worden ingeschakeld via LINK Mobility-ondersteuning.

Deze functie vertaalt niet-GSM-alfabettekens in de gebruikersgegevens (sms-tekst) naar equivalente GSM-alfabettekens wanneer de DCS is ingesteld op “GSM” (17). Bijvoorbeeldample “Seqüência de teste em Português” zal worden vertaald naar “Seqüencia de teste em Portugues”.

9. Leveringsrapporten

De Service Provider kan, indien ingericht, SMS-berichtleveringsrapporten of leveringsmeldingen voor de verzonden MT-berichten opvragen. Deze rapporten worden geactiveerd in de Operator SMSC wanneer het MT-bericht wordt afgeleverd bij de beoogde Consumer of wordt verwijderd, bijvoorbeeld verlopen of om een ​​of andere reden niet routeerbaar is.

Alleen de definitieve status van het SMS-bericht wordt gerapporteerd aan de Service Provider, d.w.z. afgeleverd of verwijderd. Er wordt slechts één rapport per MT-bericht gegenereerd. Bij de verwijderde status kan een redencode van toepassing zijn. Deze redencode specificeert de reden waarom het SMS-bericht niet is afgeleverd.

De rapporten worden via LINK Mobility verzonden naar de serviceprovider via het HTTP-protocol.

Om rapporten te ontvangen, moet de serviceprovider bijvoorbeeld het volgende implementeren:ample een Java Servlet of een ASP.NET pagina. Beide ontvangen HTTP GET of POST verzoeken.

Parameters

Het verzoek bevat de volgende parameters:

Parameter Type M/O/Ik* Standaardwaarde Maximale lengte Beschrijving
Bericht-ID snaar M 22 De bericht-ID van het MT-bericht waarmee dit rapport overeenkomt.
Bestemmingsadres snaar M 40 Het MSISDN van de consument, d.w.z. het bestemmingsadres van het oorspronkelijke MT-bericht.
Statuscode geheel getal M 1 De statuscode geeft de status van het MT-bericht aan.
Toepasselijke statuscodes zijn:
0 – Afgeleverd
2 – Verwijderd (redencode is van toepassing)
TijdStamp snaar M 20 Tijdstip waarop het leveringsrapport door LINK Mobility is ontvangen.
De tijdzone van de timestamp is CET of CEST (met zomertijd zoals gedefinieerd voor de EU).
Formaat: jjjjMMdd UU:mm:ss.
Bediende snaar M 100 De naam van de Operator die wordt gebruikt bij het verzenden van het SMS-bericht of de accountnaam die wordt gebruikt bij het verzenden van het SMS-bericht.
Een lijst met beschikbare operators wordt verstrekt door LINK Mobility-ondersteuning.
Redencode geheel getal O 3 De redencode geeft aan waarom het bericht de status verwijderd heeft gekregen.
Toepasselijke redencodes zijn:
100 – Verlopen
101 – Afgewezen
102 – Formaatfout
103 – Andere fout
110 – Abonnee onbekend
111 – Abonnee uitgesloten
112 – Abonnee niet voorzien
113 – Abonnee niet beschikbaar
120 – SMSC-storing
121 – SMSC-congestie
122 – SMSC-roaming
130 – Handsetfout
131 – Geheugen van handset overschreden
Gedrag kan variëren afhankelijk van Operator-integraties.
OperatorTijdStamp snaar O 20 Tijd die aangeeft wanneer het rapport is geactiveerd in de SMSC van de Operator (indien opgegeven door de Operator).
De tijdzone van de timestamp is CET of CEST (met zomertijd zoals gedefinieerd voor de EU).
Formaat: jjjjMMdd UU:mm:ss.
StatusTekst snaar O 255 Plaatsaanduiding voor aanvullende informatie van de Operator, bijvoorbeeld duidelijke tekstbeschrijving van de status/reden. Gedrag kan variëren met Operator-integraties.
Correlatie-ID snaar O 100 De correlatie-ID die is opgegeven in het SendRequest of SendTextRequest.
OperatorNetwerkCode geheel getal O 6 De mobiele netwerkcode (MCC + MNC) van de operator.

* M = Verplicht, O = Optioneel, I = Genegeerd.
De Dienstverlener moet LINK Mobility voorzien van de doelstelling URL voor leveringsrapporten (optioneel inclusief referenties voor HTTP-basisauthenticatie). De serviceprovider kan kiezen welke voorkeurs-HTTP-methode hij wil gebruiken:
HTTP POST (aanbevolen)
HTTP-OPHALEN.

Example met behulp van HTTP GET (succesvol afgeleverd):
https://user:password@www.serviceprovider.com/receivereport?%20MessageId=122&DestinationAddress=46762050312&Operator=Vodafone&TimeStamp=20100401%2007%3A47%3A44&StatusCode=0

Example met behulp van HTTP GET (niet geleverd, de operator heeft timest geleverdamp voor het evenement):

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

De parameters zijn URL gecodeerd.

Tekencodering:
De serviceprovider kan kiezen welke tekencodering hij wil gebruiken:
UTF-8 (aanbevolen)
ISO-8859-1.

9.1 Erkenning door de serviceprovider

De Service Provider moet elk leveringsrapport bevestigen. De bevestiging kan positief zijn, d.w.z. leveringsrapport succesvol ontvangen, of negatief, d.w.z. mislukt.

Let op: LINK Mobility heeft een leestime-out voor bevestigingen van 30 seconden voor leveringsrapporten. Een time-out activeert een leveringsherhaling (als herhaling is ingeschakeld) of een annulering van de levering (als herhaling is uitgeschakeld). Dit betekent dat de Service Provider-applicatie snelle responstijden moet garanderen, vooral tijdens hoge belasting.

Het is ten zeerste aan te raden om het leveringsrapport aan LINK Mobility te bevestigen voordat u het verwerkt.

De regel voor positieve en negatieve erkenning wordt als volgt beschreven:

Positieve bevestiging, ACK, afleveringsrapport afgeleverd:
HTTP 200-bereikresponscode in combinatie met de volgende XML-geformatteerde inhoud:

Negatieve ontvangstbevestiging, NAK, afleverrapport niet afgeleverd:
Elk ander antwoord dan een positieve bevestiging, bijvoorbeeldampEen negatieve bevestiging wordt bijvoorbeeld geactiveerd door een HTTP-foutcode of de volgende XML-inhoud:

De XML-inhoud kan worden gebruikt voor het besturen van het LINK Mobility-herhalingsmechanisme. Een NAK veroorzaakt een herhalingspoging, indien ingeschakeld. Voor serviceproviders die niet zijn geconfigureerd voor het herhalingsmechanisme, is de XML-inhoud optioneel.

Hieronder staat een HTTP POST-verzoek en -antwoord, bijvoorbeeldampvan een leveringsrapport dat aan een serviceprovider is geleverd:

HTTP-verzoek:

POST /context/app HTTP/1.1
Inhoudstype: application/x-www-form-urlgecodeerd;charset=utf-8
Host: server:poort
Inhoud-lengte: xx

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

HTTP-reactie:

HTTP/1.1 200 OK
Inhoudstype: tekst/plat

9.2 Opnieuw proberen

Het LINK Mobility-systeem kan herkansingen uitvoeren voor mislukte, d.w.z. niet-bevestigde, leveringsrapportleveringen. De serviceprovider kan het gewenste herkansingsgedrag kiezen:

Geen nieuwe poging (standaard) – het bericht wordt verwijderd als de verbindingspoging mislukt, als er een time-out optreedt bij het lezen of als er een HTTP-foutcode is.

Opnieuw proberen – het bericht wordt opnieuw verzonden bij elk type verbindingsprobleem, leestime-out of negatieve bevestiging.

Wanneer opnieuw proberen voor NAK is ingeschakeld, is het belangrijk om te begrijpen welke scenario's een nieuwe poging van LINK Mobility genereren en hoe de nieuwe poging werkt. Elke serviceprovider heeft zijn eigen wachtrij voor opnieuw proberen, waarin berichten worden geordend op basis van de berichttijdamp. Link Mobility probeert altijd oudere berichten eerst te bezorgen, ook al is de individuele volgorde van berichten die aan de serviceprovider worden bezorgd niet gegarandeerd. De belangrijkste reden dat berichten uit de retry-wachtrij worden verwijderd, is een van twee redenen: ofwel verloopt de bericht-TTL of (theoretisch) raakt de retry-wachtrij vol. De TTL is afhankelijk van de operator en het account, d.w.z. kan variëren afhankelijk van de operator en/of het type bericht, bijvoorbeeld premium SMS of standaardtarief SMS-bericht.

Een serviceprovider die de optie voor opnieuw proberen heeft ingeschakeld, moet de unieke ID van het MT-bericht controleren om er zeker van te zijn dat het bericht niet al is ontvangen.

Het is belangrijk dat de serviceprovider zich aan deze eenvoudige regels houdt wanneer er een fout optreedt tijdens de verwerking van een leveringsrapport als de reden voor de fout: Tijdelijk is, bijvoorbeeld omdat de database niet beschikbaar is, moet er een NAK worden geretourneerd. LINK Mobility zal het bericht opnieuw verzenden.

Permanent en een nieuwe poging veroorzaken waarschijnlijk hetzelfde soort probleem, er moet een ACK worden geretourneerd. Bijvoorbeeldample, wanneer het bericht niet correct kon worden geparseerd of een onverwachte runtime-fout veroorzaakte.

Als u dienovereenkomstig handelt, voorkomt u dat er blokkeringen of een lagere doorvoersnelheid optreden doordat een bezorgingsrapport herhaaldelijk opnieuw wordt verzonden.

10. Implementatietips

1. Het is mogelijk om uw web browser om verzoeken in te dienen bij de API. Dit maakt het heel eenvoudig om de services te verkennen en evalueren zonder enige ontwikkeltools.

2. Chrome of Firefox worden aanbevolen samen met een extensie zoals JSONView om mooi geformatteerde JSON weer te geven.

3. We hebben SoapUI gebruikt voor het testen van POST, basisverificatie en voor het inspecteren van de onbewerkte HTTP-aanvraag- en antwoordberichten.

https://www.soapui.org/

4. De cURL tool is handig voor het indienen van POST-verzoeken met basisverificatie. Zie examphieronder.

https://curl.haxx.se/

curl NA \
-H “Inhoudstype: toepassing/x-www-formulier-urlgecodeerd” \
-H “Autorisatie: Basis am9objpjaGFuZ2VtZSA=” \
https://europe.ipx.com/restapi/v1/sms/send \
–data “bestemmingsadres=46123456789&berichttekst=Hallo+Wereld%21”

_______________

Transformeren van gepersonaliseerde communicatie

Documenten / Bronnen

LINK Mobiliteit Implementatiehandleiding REST API SMS [pdf] Gebruikershandleiding
Implementatiehandleiding voor mobiliteit REST API SMS, Mobiliteit, Implementatiehandleiding REST API SMS, REST API SMS, API SMS, SMS

Referenties

Laat een reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *