Inbound SMS Service Provider Recommendations

We have some SMS messaging built into our product and testing it has been… a mess. I’ve got testers using their personal devices to get inbound SMS messages and that is incredibly limited in scope.

My recommendation to fix this has been to use an inbound SMS service with a bank of numbers. Testing sets up accounts with those numbers for SMS testing and a webhook in the service (desired solution) then pushes all inbound messages to an easily accessible place for testing to validate.

Looking for recommendations on decent inbound SMS service providers. I’m 99% sure we can do this through our existing AWS or Twilio accounts, but I’d like some options to contrast against. Anyone have any options to recommend?

3 Likes

I can not give a concrete answer.
Do you really always need SMs? Would it be sufficient to test the integration with such a service and test all details with a simulator or mock-up?

Also I thought the last S stands already for Service.
This confuses me.

1 Like

I used to work on mobile long ago. and before that in industrial-control, when web SMS services only just started and I had to port my dial-up SMS sender portal code (ala bbs style) instead to use a web-service instead. I never automated the testing E2E though. Because it is hard.

20 years later I have a few sim cards, because I have mobile phones as my test platform, but SMS is not part of the picture, actually push notifications is the next big fish for me. Basically these SMS services are reliable, very reliable, especially if you are paying per message sent. But if I was doing it all over again today, I would get the company IT people who provide phones to salespeople to give you 2 sim cards for a starter. Then buy one or two of these https://uk.rs-online.com/web/p/modems/7620086 (not necessarily that make or model, much cheaper ones do exist) and a serial port usb woggle and get coding with AT commands. These modems all work the same, so any models or makes will do. Then set up a CI/CD job to run your little test every single night with a ~60 second timeout, job done. Normally SMS is pretty quick during quiet periods. I would even batch up about 5 different unique messages, as a sanity check. SMS will normally be delivered about 5 seconds if lucky, but you will have a good feel for what constitutes non-working based on your own goals and experience. Good luck, and let us know how you get on, pretty sure the coding of the receiver is really an afternoon’s work, it will be more fun finding a good spot to place the receiver.

/edit @davidshute I’m super envious of you now. this sounds like a few fun Friday-Afternooners project

2 Likes

@davidshute If you have a Twilio account, you can create tests easily in English with testRigor. Here is an example: Keys to Testing 2-factor Authentication - testRigor Software Testing Tool

Disclaimer: I’m a co-founder of testRigor

1 Like

You can take a look at GitHub - pentagridsec/smsgate: SMSgate is an open source Python-based server for sending and especially receiving SMS using multiple GSM modems and SIM cards. to see if that is helpful for you, in terms of a platform for SMS, you still need to provision the hardware yourself.

That is a super cool XML-RPC server for GSM modems, they seem to have thought of everything when building it. Nice find @daluu , it’s even in active development.