Patent Document ID: 10163133
Application ID: 15077847
Patent Flag: 1

Claim One:
1. A method comprising: receiving a request for a stream of messages to be provided to a requesting user of a real-time messaging platform that provides streams of messages authored by users of the platform; filtering a set of available promotion items to identify a subset of candidate promotion items based on a fatigue map previously generated and stored in a memory object caching system, thereby removing those promotion items where prior presentations of promotion items to the requesting user in messages has exceeded a threshold; for each of the subset of candidate promotion items remaining after filtering, computing a level of engagement based on interactions with messages including the candidate promotion item by users of the platform who were previously presented the candidate promotion item in streams of messages, and decaying the level of engagement based on an amount of time elapsed since the interactions; and selecting at least one of the subset of candidate promotion items for inclusion in the message stream based on the decayed levels of engagement; and providing the message stream in response to the request.