Bei uns gibt es einige Anwendungen, die SMS verschicken:
- Icinga verschickt Monitoring-Alerts
- ein 2FA-Service verschickt Login-TANs
- Jira verschickt Alerts für bestimmte Tickets
Bis vor kurzem haben wir dafür Hardware-Maschinen mit Mobilfunk-Modems betrieben.
Das hatte leider einige Nachteile:
- Diese Maschinen brauchen spezialisierte Hardware und können nicht virtualisiert werden
- Aufwand bei Updates; insbesondere hatten wir einen gepatchten gsmmuxd
Unser Ziel war es, diese Maschinen loszuwerden. Um weiterhin SMS versenden zu können, brauchten wir also einen externen Dienstleister mit einer API.
Die neue API
Wir wollten uns bei der neuen Lösung nicht fest an einen Anbieter binden. In den Begriffen der Softwareentwicklung würde man sagen: wir wollen Loose Coupling.
Deswegen haben wir eine interne API geschaffen, die zwischen unseren Anwendungen und dem Versender steht. Diese API ist ein stabiles Interface; worüber eine SMS versendet wird ist dann nur ein Implementierungsdetail.
„Unsere interne API für SMS-Versand“ weiterlesen