A method, characterized by: providing interfaces to applications to send announcements, wherein each of said announcements either completely embeds a message or refers to a message, that is accessible separately, including in each of said announcements a reference to a file for downloading, coupling to an application repository, where said files are stored for download, specifying whether each of said announcements is to be sent via multicast or via unicast transmitting said announcements to a plurality of user devices (520, 522, 524) using multicast transmission and/or using a unicast transmission, wherein a client side messaging network implemented on each of the user devices (520, 522, 524) provides interfaces to listeners on each of said plurality of said user devices (520, 522, 524) to register interest in announcements, to receive said announcements and to forward said announcements to interested client applications, wherein each of said plurality of said user devices (520, 522, 524) is adapted to acquire download information for a multicast data carousel used to deliver said files over multicast based on metadata inside said announcements, wherein each of said plurality of said user devices (520, 522, 524) is adapted to fall back on unicast download, in case a fallback unicast download location is provided and multicast download fails, wherein each of said plurality of said user devices (520, 522, 524) is adapted to keep track of which of said announcements it has received and to report a list of recently completed announcements keeping track of said announcements; determining that a multicast download for a download of one or more of said files is unavailable; and providing a unicast alternative for the download if the multicast download is unavailable on the basis of said announcement track. providing interfaces to applications to send announcements, wherein each of said announcements either completely embeds a message or refers to a message, that is accessible separately, including in each of said announcements a reference to a file for downloading, coupling to an application repository, where said files are stored for download, specifying whether each of said announcements is to be sent via multicast or via unicast transmitting said announcements to a plurality of user devices (520, 522, 524) using multicast transmission and/or using a unicast transmission, wherein a client side messaging network implemented on each of the user devices (520, 522, 524) provides interfaces to listeners on each of said plurality of said user devices (520, 522, 524) to register interest in announcements, to receive said announcements and to forward said announcements to interested client applications, wherein each of said plurality of said user devices (520, 522, 524) is adapted to acquire download information for a multicast data carousel used to deliver said files over multicast based on metadata inside said announcements, wherein each of said plurality of said user devices (520, 522, 524) is adapted to fall back on unicast download, in case a fallback unicast download location is provided and multicast download fails, wherein each of said plurality of said user devices (520, 522, 524) is adapted to keep track of which of said announcements it has received and to report a list of recently completed announcements keeping track of said announcements; determining that a multicast download for a download of one or more of said files is unavailable; and providing a unicast alternative for the download if the multicast download is unavailable on the basis of said announcement track.