Asynchronous Push Notification Framework for Application Store Events
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Third-party application developers face delays in receiving data from application stores due to polling mechanisms, which can result in inefficient data delivery, especially when no new data has been generated since the last poll.
Innovation Solution
Implementing asynchronous push notifications that allow third-party developers to receive application store events in real or near-real time, eliminating the need for polling by using a notification service that generates and delivers event messages to defined endpoints or queues within a service provider network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If polling mechanisms are used to retrieve data from application stores, then third-party developers can obtain information about in-application purchases and other events, but data delivery is delayed and inefficient when no new data has been generated since the last poll
Solution Approach 1:
Instead of having third-party developers continuously poll the application store for data (pull model), the system inverts the approach by having the application store proactively push notifications to developers when events occur (push model). This eliminates unnecessary polling requests when no new data exists and ensures immediate delivery when data is available.
Solution Approach 2:
The system implements a feedback mechanism where the application store monitors for new events (such as in-application purchases) and automatically sends notifications to subscribed third-party developers. This feedback loop ensures that developers receive data as soon as it is generated, eliminating the delay inherent in polling mechanisms.
2Reliability
If third-party developers continuously poll application store systems for updated data, then they can receive information about events, but unnecessary polling occurs when no new data has been generated
Solution Approach 1:
The application store system performs self-service by automatically detecting when new events occur and proactively notifying subscribed developers. This eliminates the need for developers to continuously poll the system, as the application store itself manages the data distribution by sending notifications only when relevant updates are available.
Solution Approach 2:
The system inverts the traditional client-server interaction model by having the server (application store) initiate communication with clients (developers) when needed, rather than clients continuously querying the server. This reversal eliminates wasteful polling while ensuring reliable data delivery.
3Ease of operation
If polling is used to verify purchase receipts and obtain event data, then third-party developers can access application store information, but the process is inefficient and causes delayed delivery of relevant data
Solution Approach 1:
The system establishes a feedback channel where the application store automatically detects events (such as purchase receipts) and pushes notifications to third-party developers in real-time. This maintains operational simplicity for developers while dramatically improving data delivery speed by eliminating the wait time associated with polling intervals.
Solution Approach 2:
The application store prepares and queues notification data in advance when events occur, so that when a developer subscribes or when a notification is sent, the data is already ready for immediate transmission. This preliminary preparation eliminates delays and ensures fast data delivery while keeping the developer interface simple.
Data Source
AI summary
Technologies are disclosed herein for providing asynchronous application store event notifications. An application developer registers with an application store to receive asynchronous push notifications for application store events of interest, such as events relating to in-application purchases, payment events, fulfillment events, application publishing events, or other types of events. When an event for which a notification is to be provided is detected, an application store event message is generated for the event and provided to a notification service. The notification service generates an application store event notification for the event on a topic defined in advance by the application developer. The application store event notification may then be delivered to an endpoint defined by the application developer, such as a hypertext transfer protocol (HTTP) endpoint. Alternately, the application store event notification may be placed on a queue defined by the application developer that is provided by a queue service.


