The invention is related to systems and methods for enhancing customer engagement. In part, this is accomplished by sending messages to users. The messages could be mobile or browser-based push notifications, text (SMS/MMS) messages, email messages, in-application messages, or an audio recording that is sent to users via a telephony system. The present invention is focused on reliably delivering in-application messages to users.
Companies also often hire a customer engagement service to help manage the delivery messages to their customers. The customer engagement service can cause messages to be delivered to customers at opportune times when the messaging may have the most influence over customer behavior. Similarly, the customer engagement service may know when certain types of message will have the greatest value to customers, and then seek to deliver the messages at those times.
Companies often provide a software application to their customers that the customers install on a computing device such as a laptop computer, a desktop computer, a tablet or a smartphone. The software applications can provide a wide array of functionality or information to customers depending on what types of goods and services the company provides to its customers. For example, an online retailer may provide its customers with a software application that makes it easy for customers to make online purchases. A media company may provide its customers with a software application that makes it easy for the customers to access and watch media content.
Regardless of the type of software application that a company provides to its customers, it is often possible to deliver messages to the customers via the software application while they are using the company's software application. Such messages are referred to as in-application or “in-app” messages.
A customer engagement service hired by a company can control the flow and timing of the delivery of in-app messages. Indeed, the customer engagement service may deliberately coordinate the in-app messages with the delivery of messages sent to the customers via alternate delivery channels to help improve the customers' overall experience.
One way that a customer engagement service can cause an in-application message to be delivered to a user is to send a push notification with message information to the user's computing device. The push notification is designed to be delivered to a company's software application resident on the user's computing device. The push notification may also include information identifying the message that is to be presented to the user, or information that the software application can use to generate a message that is then presented to the user.
Push notifications are actually delivered to user computing devices via push notification services. While push notification services reliably and timely deliver push notifications to user devices in many parts of the world, in some geographical regions the delivery of push notifications to user computing devices is less reliable. In some instances, this unreliability may occur because of the physical infrastructure in those geographical regions. In other instances, government regulations or government interference can cause unreliability in the delivery of push notifications. Regardless of the reasons, it is common in some geographical regions for the delivery of push notifications to be significantly delayed, and/or for the delivery of some push notifications to fail completely.
When a push notification containing message data for an in-application message is delayed or lost, the user to which the push notification was sent will get a delayed presentation of an in-application message, or the user may fail to even receive the in-application message. A delayed message or a lost message can significantly interfere with a customer engagement service's effort to orchestrate the timely delivery of messages to users on behalf of client companies.