3-Steps to Building a Notification Pusher with Amazon SNS and Ruby
Much research on push notification behaviour focuses on the potential for boosting user engagement. Increased engagement hinges on integration with back end company systems to initiate notification sending and provide notification message content. That integration can be hard: a recent Gartner report commented that integration is often the largest part of the effort of delivering an enterprise mobile app.
Using Amazon Simple Notification Service (Amazon SNS) and the Amazon Web Services Software Development Kit (AWS SDK) for push notification integration can help ease any integration pain.
In our post Step-by-Step Guide to Setup iOS Push Notifications with Amazon SNS we described how SNS can be used to used to send a push notification message to mobile app users. While SNS takes care of the integration details needed to securely communicate with platform-specific push services, including Apple Push Notification Service (APNs) for iOS and Firebase Cloud Messaging (FCM) for Android, there is still a need to integrate SNS with your company system. We refer to this component this as a notification Pusher.
A notification Pusher is a service that manages pushing notification messages to mobile app users. It provides an Application Programming Interface (API) purpose-built for the needs of company systems. To communicate with Amazon SNS, the notification Pusher uses the AWS SDK. The AWS SDK is available for a wide range of programming languages, so when developing a notification Pusher that integrates with SNS you can choose a language that matches your platform.
Choosing a platform for your notification Pusher may depend on your company environment, but a popular and pragmatic pick is Ruby on Rails. Rails is great for rapid prototyping – one reason why it’s so popular with tech start-ups, but it’s also used by large websites, like Hulu, Airbnb, and Basecamp. To build you notification Pusher with Ruby, you’d use the AWS Ruby SDK.
And better yet, you can take advantage of AWS Elastic Beanstalk, an easy-to-use service for deploying and scaling web applications and services. Rather than hosting your notification Pusher yourself, you can simply upload your code and Elastic Beanstalk automatically handles the deployment, including capacity provisioning, load balancing, auto-scaling and application health monitoring.
Using our step-by-step guide you can build a notification Pusher to send mobile push notifications in just three steps:
- Create an AWS Elastic Beanstalk application
- Add the AWS Ruby SDK to your notification Pusher application
- Upload your Pusher application to AWS Elastic Beanstalk
Download our guide for step-by-step instructions with screenshots to create and deploy a notification Pusher using Amazon SNS, the AWS Ruby SDK and AWS Elastic Beanstalk. We’ve also included a starter Ruby on Rails project for your notification Pusher.