It seems that you are in United States. Do you want to visit our website more suitable for your region? Go to our global (English) site

CM’s unieke Notification Retry – zo werkt dat

3 minutes read

CM garandeert aflevering van SMS door het unieke retry systeem

Onze klanten vertrouwen er op dat wij hun berichten afleveren. CM’s techniek is daarom gericht op betrouwbaarheid. Dat uit zich onder meer door het retry systeem dat we hebben ingebouwd in ons SMS platform.

Dat uit zich onder meer door het retry systeem dat we hebben ingebouwd in ons SMS platform. De kwaliteit van ons notificatiesysteem meten we onder meer aan de hand van de snelheid waarmee we afleveren en het afleverpercentage.

Retry systeem

Een in het oog springende manier waarop we het afleveren van berichten garanderen, is ons retry systeem. We monitoren of berichten aankomen op de telefoon en of dit snel genoeg gebeurt. Is dat niet het geval, versturen we het bericht nogmaals, maar dan over een andere leverancier of zelfs een ander medium.

Hoe zit dat technisch in elkaar?

Ons SMS systeem verstuurt het bericht in eerste instantie over de verbinding met de preferente leverancier. Dat kan bijvoorbeeld een telecomoperator zijn, of een push platform. Hoe het systeem de preferente leverancier bepaalt, is een verhaal op zich, waarover ik in dit artikel niet verder zal uitweiden. We krijgen op de verbinding al meteen een antwoord terug; die accepteert of weigert het bericht.

Delivery en status reports

Als het bericht wordt geaccepteerd, probeert de leverancier het bericht af te leveren op de telefoon. Het resultaat hiervan ontvangen we in een zogenaamd ‘delivery report’ of ‘status report’. Het bericht kan afgeleverd worden of falen. Als het bericht geweigerd of gefaald is, treedt ons ‘Retry on Failed’ systeem in werking. Als het bericht geaccepteerd is, maar niet tijdig afgeleverd (of gefaald) is, treedt ons ‘Retry on Overdue’ systeem in werking.

Retry on Failed en Retry on Overdue

Er zijn dus twee retry systemen:

  1. Retry on Failed systeem: voor berichten die een leverancier niet kan afleveren
  2. Retry on Overdue systeem: voor berichten die niet tijdig afgeleverd zijn.

In beide gevallen stuurt het systeem het bericht nog eens over een andere verbinding. Welke dat is, hangt af van onder meer het type verkeer en het type retry. In de regel zal een Retry on Failed opnieuw worden verzonden als SMS over een directe verbinding met een telecomoperator. SMS is nog altijd het meest betrouwbare medium om een bericht af te leveren.

SMS in de wacht

In geval van Retry on Overdue zal het een SMS-verbinding zijn waarop geen buffering zit. Als het bericht in een buffer moet wachten, is dat meestal omdat de telefoon uit staat. Het is daarmee waarschijnlijk dat het oorspronkelijke bericht al staat te wachten tot de telefoon bereikbaar is. Door een verbinding te gebruiken waarop geen buffers zitten, voorkomen we dat het bericht twee keer wordt afgeleverd.

Ons notificatiesysteem is opgedeeld in vier delen.

Het eerste gedeelte is de inkomende zijde. Daar draait serversoftware waar op verbindingen van onze klanten en applicaties binnen komen. Het oorspronkelijke bericht komt altijd op dit systeem binnen vanuit een klant of applicatie.

Het tweede gedeelte is de logica en routering. Daar zit ook de retry logica grotendeels in verscholen.

Het derde gedeelte, de uitgaande zijde, maakt verbindingen met leveranciers. Hier komen de status reports binnen, die worden doorgestuurd aan het tweede subsysteem; de logica en routering.

Het vierde systeem is de notificatielogging, waar de berichtinformatie en berichtinhoud (versleuteld) worden opgeslagen. Dit loggen gebeurt bijna direct.

 

Het tweede gedeelte, de logica, beslist aan de hand van een geweigerd of gefaald status report of er een retry bericht moet worden verstuurd. De logica verstuurt dit bericht naar de inkomende zijde. Het tweede bericht legt binnen CM dezelfde weg af als het originele bericht. Wel is het bericht aangeduid als retry-bericht waardoor de logica haar beslissingen voor dit tweede bericht kan aanpassen.

Van customer naar supplier

Een Retry on Overdue-bericht wordt verstuurd door een proces dat periodiek de realtime logging raadpleegt om berichten te vinden waar nog geen definitieve status van bekend is. Als berichten geen definitieve status hebben binnen de verwachte tijd, zal er een retry-bericht worden verzonden naar het eerste deelsysteem. Net als bij de Retry on Failed legt ook dit bericht binnen CM dezelfde weg als het origineel.

 

Probeer sms gratis



Interessant? Deel het met je netwerk!

Over de auteur

Erik Eggens

Connect met Erik via

LinkedIn, Twitter.