Product engineering services for Drizzle Labs, making SMS popular again

Get in touch

Services

Messaging platform
Ad serving
Interactive media
Offline message sync

Executive Summary

When it comes to texting, users are now accustomed to
myriad of features, and the current messaging apps no
longer fit in. Drizzle is a suite of apps for iOS and Android
that pays a user to text. It does so by serving non-intrusive
advertisements to their users. Each advertisement that a
user sees creates a drop, and more drops a user receives
the more they can cash-in.

Ben Mizes, CEO, Drizzle Labs

Ben Mizes

“Simform made their developers available to us full time, with dedicated access to their project managers as well. They were even willing to work the occasional weekend to hit a deadline. All in all a great experience.”

Challenges

Layer customization

Layer is a great platform to build Chat/SMS apps, but it is quite rigid in terms of customization.

Offline-online synchronization

The app has to co-ordinate between online and offline synchronization, which is pretty complicated in this case.

Implementing reactions

A text chat is single threaded, which makes implementing reactions extremely difficult.

Solution

Layer as the messaging platform

We utilized Layer’s powerful platform to establish a communication channel that runs over top of TCP/IP as opposed to traditional telephony networks.

Set as Default SMS app

We managed and wrote the messaging activities to define clear rules of how the app would behave if it has been selected as the default messaging app, and when it wasn’t. Upon being selected as the default SMS app for the operating system, the SMS is prevented from being written to the SMS provider.

Implementing reactions

This implementation was challenging due to the single threaded nature of SMS app. We added preferential delivery to prevent this single threaded system from becoming slow and collapsing - Text messages gets preference over reactions.

Solution

Offline functionality

When a SMS or MMS is received in absence of internet connectivity, it is delivered to the native SMS text application and get stored into a local database. Whenever internet connectivity is available, the SMS or MMS is then synced into the Layer server DB.

Layer customization

While layer satisfied most of the app’s requirement as a messaging infrastructure, it lacked certain features like “last seen”. We customized layer and built the new functionalities using node.js.

SMS and MMS performance optimization

Having more than 4000-5000 messages per profile, we implemented an optimized text-searching functionality, and took care of scrolling issues that comes with increased messages.

Business Impact

When the app was launched, within the first week it received more than 10,000 downloads, and has a very high user retention. Upon validating their hypothesis, they successfully raised more than $1 Million to further carryout product operations and acquire more users.  

Speak With Our Expert