US20160350816A1 - Advertising middleware - Google Patents
Advertising middleware Download PDFInfo
- Publication number
- US20160350816A1 US20160350816A1 US15/232,491 US201615232491A US2016350816A1 US 20160350816 A1 US20160350816 A1 US 20160350816A1 US 201615232491 A US201615232491 A US 201615232491A US 2016350816 A1 US2016350816 A1 US 2016350816A1
- Authority
- US
- United States
- Prior art keywords
- content
- application
- mobile terminal
- middleware component
- middleware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0277—Online advertisement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0242—Determining effectiveness of advertisements
- G06Q30/0246—Traffic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0247—Calculate past, present or future revenues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0257—User requested
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0267—Wireless devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Definitions
- the invention relates generally to a method and a system for facilitating the distribution and access of electronic information. Specifically, the invention relates to a system and method for providing advertising information to applications.
- Advertising-supported applications are increasing in popularity as advertisers and companies strive for new ways to reach the public or a specified segment thereof.
- Advertising-supported application or adware is any software package which automatically plays, displays, or downloads advertising material to a computer after the software is installed on it or while the application is being used.
- Advertising-supported applications are often small and unobtrusive to attract more users and appear less invasive. Companies often offer greater discounts or special offers through these applications as an incentive to use the advertising applications.
- Advertising-supported applications have been developed for computing devices such as desktop computers, laptops and even mobile devices, such as Personal Data Assistants (PDAs) and cellular phones.
- PDAs Personal Data Assistants
- developers of advertising-supported applications often need to program the applications specifically for each device or architecture.
- the advertisement middleware provides the functionality to interface with hardware and software components associated with a particular device. As such, application developers do not need to cater their programming to a particular device or type of device.
- the advertisement middleware may contain various modules including an advertisement player, an advertisement cache, reporting, profiling, loyalty tracker and a payment component. Each module facilitates certain functions associated with displaying or otherwise providing an advertisement to an application.
- the player module may include programming that instructs a display of the underlying device to display or play one or more advertisements.
- the cache may store advertisements for faster retrieval.
- the application middleware may track loyalty of a user to a certain company or type of advertisement.
- a user may earn loyalty credit if, for example, they view and/or click multiple advertisements from a certain company over a specified period of time.
- loyalty credit may be earned if a user purchases a product that is advertised.
- the middleware may further include a transport layer that implements multiple transport protocols.
- a transport layer that implements multiple transport protocols.
- communications between an application and a content server may be significantly streamlined.
- applications might not be required to know which servers use which communication protocol.
- applications may retrieve advertisements from a variety of servers using different communication protocols.
- advertising middleware may provide a payment model for developers. Specifically, advertising middleware may keep track of click-throughs or other forms of access of advertisements for each advertising application. Based on the number of click-throughs associated with a particular advertising application, the developer of the advertising application may be rewarded a specified payment. Thus, various advertising payment models may be developed based on the effectiveness of advertising applications. The incentives may further motivate development of additional advertising applications.
- FIG. 1 illustrates a block diagram of a wireless communication system in which various embodiments may be implemented.
- FIG. 2 illustrates a mobile terminal in which one or more illustrative embodiments may be implemented.
- FIG. 3 is a block diagram illustrating components of an application middleware and interactions with other components according to one or more aspects described herein.
- FIG. 4 illustrates a block functionality diagram of an advertising middleware component according to one or more aspects described herein.
- FIG. 5 illustrates a flow chart of a method for providing relevant advertisements to a requesting application via a middleware component according to one or more aspects described herein.
- FIG. 6 is a flowchart illustrating a method for providing incentives to application developers according to one or more aspects described herein.
- FIG. 1 illustrates an example of a wireless communication system 110 in which systems and methods according to at least some embodiments may be employed.
- One or more network-enabled mobile devices 112 such as a personal digital assistant (PDA), cellular telephone, mobile terminal, personal video recorder, portable television, personal computer, digital camera, digital camcorder, portable audio device, portable radio, or combinations thereof, are in communication with a service source 122 through a broadcast network 114 (which may include the Internet or similar network) and/or a cellular network 116 .
- the mobile terminal/device 112 may include a digital broadband broadcast receiver device.
- the service source 122 may be connected to several service providers such as advertisement source 125 that may provide their actual program content or information or description of their services and programs to the service source 122 that further provides the content or information to the mobile device 112 .
- the several service providers including advertisement source 125 may include but are not limited to one or more television and/or digital television service providers, AM/FM radio service providers, advertisement servers and/or providers, SMS/MMS push service providers, Internet content or access providers.
- broadcast network 114 may broadcast advertisements from one or more service sources such as service source 122 .
- Service source 122 may obtain or receive advertisements from an advertisement server or provider. The advertisements may then be received by mobile terminal 112 through the broadcast network 114 and stored in a database for display to a user of terminal 112 .
- a broadcast service source 122 may obtain revenue from displaying advertisements in their broadcasts. As such, the broadcast service source 122 may periodically retrieve advertisements from an advertisement source 125 or database and broadcast the advertisement to a user population subscribed to the broadcast service.
- IPDC IP datacasting
- IPDC IP datacasting
- the mobile device 112 may also send and receive messages to and from the service source 122 through the cellular network 116 .
- the cellular network 116 may include a wireless network and a base transceiver station transmitter 120 .
- the cellular network may include a second/third-generation (2G/3G) cellular data communications network, a Global System for Mobile communications network (GSM), a Universal Mobile Telecommunications System (UMTS) and/or other wireless communication network such as a WLAN network.
- 2G/3G second/third-generation
- GSM Global System for Mobile communications network
- UMTS Universal Mobile Telecommunications System
- communications through the cellular network 116 may allow a service source 122 to distribute advertisements on an individual basis.
- the service source 122 may obtain and distribute advertisements from an advertising source 125 based on user interests, usage statistics, a user's most frequent time of use and the like.
- mobile device 112 may access either the broadcast network 114 or cellular network 116 to retrieve advertisements or other forms of content from a server or content provider 122 .
- device 112 may request additional advertisements from an advertisement server 125 in response to determining that no advertisements are stored in device 112 .
- mobile device 112 may include a wireless interface configured to send and/or receive digital wireless communications within cellular network 116 using base transceiver station transmitter 120 .
- the information received by mobile device 112 through the cellular network 116 or broadcast network 114 via a cellular network tower 118 may include user input or selection (for example, in an interactive transmission), applications, services, electronic images, content requests, audio clips, video clips, and/or WTAI (Wireless Telephony Application Interface) messages.
- WTAI Wireless Telephony Application Interface
- one or more base stations may support digital communications with receiver device 112 while the receiver device is located within the administrative domain of cellular network 116 .
- mobile device 112 may include processor 128 connected to user interface 130 , memory 134 and/or other storage, and display 136 .
- Mobile device 112 may also include battery 150 , speaker 152 and antennas 154 .
- User interface 130 may further include a keypad, touch screen, voice interface, four arrow keys, joy-stick, stylus, data glove, mouse, roller ball, touch screen, or the like.
- user interface 130 may include the entirety of or portion of display 136 .
- Computer executable instructions and data used by processor 128 and other components within mobile device 112 may be stored in a computer readable memory 134 .
- the memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory.
- Software 140 may be stored within memory 134 and/or storage to provide instructions to processor 128 for enabling mobile device 112 to perform various functions.
- some or all of the computer executable instructions may be embodied in hardware or firmware (not shown).
- Mobile device 112 may be configured to receive, decode and process digital broadband broadcast transmissions that are based, for example, on the Digital Video Broadcast (DVB) standard, such as DVB-H, DVB-T or DVB-MHP, through a specific DVB receiver 141 .
- the mobile device may also be provided with other types of receivers for digital broadband broadcast transmissions.
- receiver device 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142 , WLAN transceiver 143 , and telecommunications transceiver 144 .
- mobile device 112 may receive radio data stream (RDS) messages.
- RDS radio data stream
- one DVB 10 Mbit/s transmission may have 200, 50 kbit/s audio program channels or 50, 200 kbit/s video (TV) program channels.
- the mobile device 112 may be configured to receive, decode, and process transmission based on the Digital Video Broadcast-Handheld (DVB-H) standard or other DVB standards, such as DVB-Multimedia Home Platform, DVB-Satellite (DVB-S), DVBTerrestrial (DVB-T) or DVB-Cable (DVB-C).
- DVD-H Digital Video Broadcast-Handheld
- DVB-S Digital Video Broadcast-Handheld
- other DVB standards such as DVB-Multimedia Home Platform, DVB-Satellite (DVB-S), DVBTerrestrial (DVB-T) or DVB-Cable (DVB-C).
- digital transmission formats may alternatively be used to deliver content and information of availability of supplemental services, such as ATSC (Advanced Television Systems Committee), NTSC (National Television System Committee), ISDB-T (Integrated Services Digital Broadcasting—Terrestrial), DAB (Digital Audio Broadcasting), DMB (Digital Multimedia Broadcasting), FLO (Forward Link Only) or D1RECTV.
- the digital transmission may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of a mobile terminal and may enable smooth and seamless handover. Time-slicing consists of sending data in bursts using a higher instantaneous bit rate as compared to the bit rate required if the data were transmitted using a traditional streaming mechanism.
- the mobile device 112 may have one or more buffer memories for storing the decoded time sliced transmission before presentation. The power of receiver between bursts may be turned off to reduce power consumption.
- a user of a mobile device may agree to receive advertisements on her mobile device.
- a user may download a widget application that provides deals or discounts for allowing advertisements from organizations or companies to be displayed on the user's device.
- the user's mobile terminal may include an advertisement middleware that provides a widget or application API that allows an application to call standardized functions for retrieving advertisements or performing other advertising tasks.
- a widget as used herein, relates to a user interface element and/or application that provides information such as advertising or weather information to a user based on a variety of factors such as user preferences. Examples of advertising widgets and other advertising applications are described in a U.S.
- Middleware in general, refers to an entity that facilitates interaction between software and/or hardware components. For example, a middleware may perform processes such as mediation between an application and a network to manage the interaction between disparate applications across heterogeneous platforms.
- the advertisement middleware described herein provides a variety of functionalities associated with the display and retrieval of advertisements. In particular, the middleware relieves the widget or other application from having to implement the middleware functionalities. Instead, the application may call various functions of the middleware to accomplish various advertisement tasks or processes.
- Advertisement middleware may be stored in a computer readable medium 134 in a user's mobile terminal 112 along one or more advertisement applications that may interface with the middleware. The advertisement application or widget may display advertisements or other information on display 136 .
- Advertisement middleware may also include components for interfacing with one or more hardware components such as WLAN transceiver 143 , telecom transceiver 144 and display 136 to perform one or more tasks.
- FIG. 3 is a block diagram illustrating a middleware component 301 .
- middleware component 301 may coordinate communication, data, messages, and user interaction between one or more content servers 315 a and 315 b and one or more applications 305 a, 305 b and 305 c executing on the mobile terminal device.
- Middleware component 301 may expose one or more functional APIs, such as API 307 , to provide an application 305 with a standardized interface for performing advertisement related functions.
- the functional API 307 may publish a function called GET ADVERTISEMENT that directs the middleware component 301 to obtain one or more advertisements based on one or more specified parameters.
- DISPLAY ADVERTISEMENT that directs middleware 301 to display an advertisement on a display of a mobile terminal device
- ADD CREDIT which instructs middleware 301 to add credit or loyalty points to a user's account. Credit and/or loyalty points may be added based on factors such as a number of advertisements viewed on the device.
- the middleware component 301 may also interact with a server 315 a or 315 b through a transport layer 317 which may include a plurality of transport mechanisms and/or protocols including HTTP, FTP, SMS, Bluetooth, WLAN, Radio Frequency Identification (RFID), RSS, or 2D Barcode.
- a transport layer 317 which may include a plurality of transport mechanisms and/or protocols including HTTP, FTP, SMS, Bluetooth, WLAN, Radio Frequency Identification (RFID), RSS, or 2D Barcode.
- middleware component 301 may determine that there are no advertisements available in the device's storage. As such, middleware 301 may connect to an advertisement server 315 a to request additional advertisements. The request may be issued through the transport layer 317 which may provide multiple protocols for making such a request.
- middleware 301 may periodically update an advertisement server 315 a with loyalty information associated with a particular user or device through the transport layer 317 .
- transport layer 317 may facilitate any communications with external devices or entities.
- middleware component 301 may include or interact with a hardware API to instruct various hardware components to perform certain functions or tasks.
- an application may call a DISPLAY ADVERTISEMENT function.
- middleware 301 may interface with a display component through the hardware API to display a specified advertisement.
- FIG. 3 The processes and interfaces shown in FIG. 3 are for illustrative purposes, and those of skill in the art will appreciate that middleware component 301 may support additional processes, components and interfaces in addition to those shown.
- middleware component 301 exposes one or more APIs to application programs 305 a, 305 b and 305 c executing on the mobile terminal device.
- Application programs 305 a, 305 b and 305 c may be implemented on a variety of platforms including Symbian and J2ME.
- Each application program 305 a, 305 b and 305 c may contain predefined programming to facilitate interfacing with the middleware component 301 using the exposed APIs.
- the functional APIs associated with middleware 301 may be published to the public or a group of developers to allow them to implement the proper programming in applications 305 a, 305 b and 305 c to utilize the functionalities of middleware 301 .
- applications 305 a, 305 b and 305 c might not need to implement the functionalities already provided by the middleware component 301 .
- applications might not need to include programming to perform functions such as storing user profiles and interfacing with software and hardware subsystems.
- Advantages of using the functionalities of component 301 may include a reduction in load on the overall operating system of the underlying device.
- FIG. 4 is a block diagram illustrating architecture of a middleware component, such as component 301 of FIG. 3 .
- Middleware component may include a player module 411 , a cache module 412 , a report module 413 , a profile module 414 , a loyalty module 415 , and/or a payment module 416 .
- middleware component 301 may interface with a content server 315 (not shown), e.g., advertising server, via transport mechanism 317 , as well as with the user of the mobile terminal device via one or more end-user interfaces such as keys, buttons, dials, display screens, speakers, etc., of the mobile terminal device.
- a content server 315 not shown
- end-user interfaces such as keys, buttons, dials, display screens, speakers, etc.
- functional API 307 may interface with one or more application level programs (not shown). This interaction may be controlled and/or directed by a user of the mobile terminal device on which the one or more applications are executing via one or more end-user interfaces. Function calls and requests by the applications through functional API 307 may be routed directly to the module of the middleware component to which it corresponds, as further described below.
- the middleware component 301 may include a manager module (not shown) that initially receives the request or input from the application via the functional API 307 and directs the request to the applicable module of the middleware component 301 . While specific APIs are called out and described herein, those of skill in the art will appreciate that additional or different APIs may be used.
- Player module 411 in an illustrative embodiment, is responsible for displaying or otherwise providing one or more advertisements to the application.
- Player module 411 may receive a request from an application via the functional API 307 to display or provide advertisements.
- player module 411 may extract from the request one or more parameters, such as the type of advertisement to be provided, e.g., full screen, banner, ticker, or widget; duration for displaying or playing advertisement; position and/or size of advertisement to be displayed; and interval for refreshing the advertisement or for providing new advertisements.
- Some parameters may be optional and may be used with pre-defined default values if left unspecified.
- Player module 411 may subsequently select one or more advertisements in accordance with the parameters from a cache module 412 that stores advertisements.
- Cache module 412 may be implemented as a database with retrieval functions to facilitate the selection of advertisements based upon the parameters. If cache module 412 is empty or does not contain any advertisements fitting the parameters requested by the application, player module 411 or cache module 412 may retrieve one or more advertisements from a server (e.g., server 315 a of FIG. 3 ) via a transport mechanism 317 in accordance with the parameters specified in the initial request. Additional parameters may be extracted from the device, such as usage and user profile information, and may be provided to the server to facilitate delivery of optimized content.
- parameters relating to gender may be extracted from user profile information to determine the advertisement preferences based upon the gender of the user. These parameters may be used to retrieve, or place a higher priority for retrieving, advertisements targeted to a male audience, and/or not retrieve, or place a lower priority in retrieving, advertisements targeted exclusively to a female audience. Additionally, or alternatively, the cache module 412 may periodically retrieve new advertisements from the server based on previously used parameters.
- the usage information transmitted to the server may reveal that a significant portion of advertisements being displayed in an application has been regarding sports equipment in a banner-type advertisement.
- the cache module 412 may periodically, e.g., every five hours, retrieve new advertisements from the server regarding sports equipment in a banner-type format.
- the cache module 412 may opt to retrieve non-sports equipment related advertisements to provide more variety to the cache pool. By pre-fetching content, future retrieval of advertisements from the cache by the player module 411 may be greatly expedited.
- the cache module 412 may periodically retrieve content from nearby servers based upon changes in the mobile device's location, such as automatically retrieving new advertisements from a nearest content server with respect to the mobile device. For example, a user at a supermarket may receive advertisements on the weekly specials at the supermarket on her mobile device that were retrieved by the cache module 412 via a transport mechanism, e.g., WLAN, from an advertising server located in the store. Retrieved advertisements may be stored in cache module 412 for later use by player module 411 .
- a transport mechanism e.g., WLAN
- player module 411 may display or play the advertisement in the application or otherwise provide the one or more advertisements to the requesting application.
- the advertisement may include an animation or video clip.
- the advertisement may be played using various hardware devices including a display and speakers of the device.
- Report module 413 monitors and tracks usage of the middleware component 301 and the middleware modules.
- Report module 413 may receive or collect usage information from other middleware modules 411 , 412 , 414 , 415 and/or 416 .
- the usage information may include, for example, which advertisements have been provided by player module 411 to the requesting application or user.
- the information may be gathered at any desired time, e.g., periodically, whenever content is requested, etc., and stored in cache module 412 or another database.
- Middleware component 301 e.g., via report module 413 , may expose one or more APIs to allow an application to access and/or retrieve usage information from the database or allow the application to request authorization, initiation and/or stoppage of the usage monitoring.
- information collected by report module 413 may further be transmitted to one or more advertisement servers. With the collected information, the servers may, for example, analyze statistics of service usage.
- Profile module 414 stores and manages user profile information including user behavior and interactions and user preferences. Some or all of the information may be gathered from another middleware module, e.g., report module 413 .
- middleware component 301 via profile module 414 , may expose one or more APIs to allow an application and user to update the user or device's profile information, including preferences.
- Profile information may also be transmitted to a server, e.g., via player module 411 , to facilitate retrieval of targeted advertisements from the server.
- profile module 414 may collect data regarding the frequency with which the user or device requests and views advertisements. Profile module 414 may further collect information related to what types of advertisements are typically viewed and/or requested. Using such data, relevant advertisements may be retrieved from an advertisement server.
- Loyalty module 415 stores and manages user loyalty information to facilitate providing the user with rewards or incentives for certain user interactions with advertisements. Some or all of the information used and/or stored by loyalty module 415 may be gathered from another middleware module (e.g., report module 413 ) or from the advertisements (e.g., rewards specified in metadata associated with the advertisements). Middleware component 301 , e.g., via loyalty module 415 , may expose one or more APIs to allow applications and/or the user to access the loyalty information. Additionally, loyalty information may be transmitted to the server 315 which may subsequently relay the information to the appropriate advertisers.
- middleware module e.g., report module 413
- the advertisements e.g., rewards specified in metadata associated with the advertisements.
- Middleware component 301 e.g., via loyalty module 415 , may expose one or more APIs to allow applications and/or the user to access the loyalty information. Additionally, loyalty information may be transmitted to the server 315 which may subsequently relay the information to the appropriate advertisers.
- user interactions such as following a link in an advertisement or making a purchase with an advertiser, may entitle the user to rewards including receiving extra mobile minutes, discounts from the advertiser, or application-specific rewards (e.g., extra lives in a video game application).
- rewards including receiving extra mobile minutes, discounts from the advertiser, or application-specific rewards (e.g., extra lives in a video game application).
- Payment module 416 stores and manages payment information.
- payment module 416 may store and manage payment data to facilitate payment of fees to application developers for advertisements provided to the user via one or more applications a developer created. For example, developers may be paid based on the number of views or click-throughs the advertisements generated, and/or commission based on sales transactions.
- Some or all of the information may be gathered from another middleware module, e.g., report module 413 .
- the information may further be transmitted to an advertising server 315 to facilitate payment processing.
- Each block within component 301 may be implemented in software via computer executable instructions stored in a memory, or via hardware, e.g., as one or more ASICs, or the like.
- the functional modules illustrated in FIG. 4 are but one possible embodiment, as functionality may be combined across modules, or split to create even more functional modules. Some modules may be optional, and additional modules may be added. The scope of the invention is not limited to the illustrative embodiment of FIG. 4 .
- FIG. 5 is a flowchart illustrating a method for providing relevant advertisements to a requesting application via a middleware component such as component 301 in FIGS. 3 and 4 .
- a registration request may be received from an application.
- an application upon loading or boot-up, may call an NAD REGISTER( ) function to register with a known middleware component.
- An application may be aware of the middleware component based on, for example, system wide broadcasts or advertisements from the middleware component.
- step 505 a determination is made as to whether the middleware component has been loaded. If the middleware component has not been loaded, then in step 510 , the middleware component is initialized and loaded.
- the middleware component may be configured to automatically load upon startup of the mobile terminal device or alternatively or additionally, may be built-in to the operating system. Thus, if the middleware component is already loaded when the registration request is made by the application, the middleware component may register the application in response in step 515 .
- the requesting second application may be assigned a unique identifier to differentiate the requesting second application from other applications, e.g., the aforementioned first application.
- the middleware component may receive a request for one or more advertisements, including values associated with a list of parameters such as type, duration, position, and interval from the application via a functional API. This request may be sent directly to a player module or alternatively, to a manager module which directs the request to the player module.
- the middleware component or a module thereof searches a cache for one or more advertisements in accordance with the parameters.
- a determination is made as to whether the cache contains a relevant advertisement matching the specified parameters.
- the middleware component may then, in step 540 , transmit a request for one or more advertisements to an advertising server via a transport mechanism such as HTTP.
- a transport mechanism such as HTTP.
- one or more advertisements are received from the advertising server through the transport layer and stored in the cache.
- the selected advertisements are displayed to the user according to, for example, the parameters received in step 520 .
- the relevant advertisement is retrieved from the cache in step 535 and displayed in step 550 .
- the middleware component may receive a deregistration message from the second application via an NAD DEREGISTER( ) function if, for example, the application is being closed by a user.
- the middleware component may be unloaded from memory. Where other application(s) are still registered or communicating with the middleware component, the middleware might not be unloaded. Alternatively, the middleware component may remain resident in memory until the mobile device is powered off.
- FIG. 6 is a flowchart illustrating a business model for generating revenue for developers of mobile applications that display advertisements via the middleware component.
- a developer implements calling functionality into her application enabling the application to interface with a middleware component through a standardized functional API. Developers may be able to access the middleware component if, for example, the middleware component and functional API are publicly available and downloadable free of charge.
- a developer registers the application with an advertising server to set up payment information. For example, the developer may sign up an account on the server under a payment schedule that pays commission based upon total views or click-throughs of advertisements displayed in its application.
- step 602 the application communicates with the server via the middleware component and sends user report information such as user views and click-throughs of advertisements to the server.
- a credit may be applied to the developer's account with any commission generated from the displayed advertisements.
- step 604 the developer is paid the amount owed in his account. A minimum amount owed may be required before payment is made.
- a level of payment may also be associated with the functionalities or complexities of the developer's applications. For example, an application with more functions such as music and games may be provided a greater payout than an application that is dedicated to displaying advertisements.
- the methods and features recited herein may further be implemented through any number of computer readable mediums that are able to store computer readable instructions.
- Examples of computer readable mediums that may be used include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, DVD or other optical disk storage, magnetic cassettes, magnetic tape, magnetic storage and the like.
- a developer has invested a great deal of time, resources, and money into producing a massive multi-player game that runs on mobile devices and wishes to generate revenue from the game.
- the developer could charge a price for purchasing the game or a periodic subscription fee to play the game, but such business models would likely not reach as wide a user-base as a game distributed without charge.
- the developer may instead, or additionally as an option, offer a version of the game free of charge, but one that is supported through advertisements displayed in the game.
- the developer could implement such functionality directly into the game, but doing so would be costly and complex, as the developer will have to account for various software and hardware platforms, advertisement formats, server specifications, etc. Instead, the developer may simply implement a function in the game, e.g., GET ADVERTISEMENT( ) to call the advertisement middleware to display advertisements according to any desired parameters.
- the game may request that ticker-type (TYPE) advertisements be displayed at the bottom of the game screen (POSITION), to minimize obstruction of the game, while the game is being played (DURATION), with a one-minute refreshment rate for new advertisements (INTERVAL).
- TYPE ticker-type
- POSITION bottom of the game screen
- DURATION a one-minute refreshment rate for new advertisements
- the player module of the middleware upon receiving the request from the game, selects from the cache module advertisements fitting the parameters, i.e., ticker-type. If the cache is empty, or no content is selected as fitting the parameters provided, the cache module downloads new advertisements, e.g., via HTTP, from an advertising server. Additional information from other middleware modules is transmitted to the server to ensure that advertisements downloaded are targeted to the user, such as user profile information gathered from user registration in the game.
- advertisements are selected by the player module, either from the cache or from the server, they are displayed to the user in the game according to the other parameters requested, e.g., bottom of screen.
- the developer registers this application with the advertising server and sets up an account where future earnings may be credited.
- an advertisement for a MP 3 player is displayed in the game.
- the user of the mobile device decides to follow the link in the advertisement, and liking what she sees, purchases the MP3 player.
- the user profile module tracks the interaction, e.g. via the report module, and updates the user profile information to reflect the purchase/click-through. This information may be transmitted to an advertising server by the middleware to retrieve future advertisements relating to this purchase/click-through, such as accessories for MP3 players, other portable players, etc.
- the loyalty module tracks the purchase and rewards the player in the game, such as giving the player some game-currency, with the amount dependent upon the purchase price, e.g., higher purchases are rewarded by higher awards, or the number of click-throughs or ad-views.
- the payment module tracks the view, click-through, and purchase generated by this advertisement and transmits the information to the advertising server, which credits the developer's account for any revenue generated from the view and click-through, and commission fee associated with the purchase.
- Such an implementation benefits all parties involved. Users can play the game for free and receive bonuses, rewards, or discounts for interacting with advertisers. A developer can capitalize on revenue opportunities that otherwise would not be possible through traditional business avenues or are practically unfeasible given the complexity of implementing advertising functionality directly into its game. Finally, advertisers can reach a vast consumer-base for relatively little cost and gains wide exposure from users interacting with the advertisements.
Abstract
Description
- This application is a continuation of U.S. patent application Ser. No. 14/852,160, filed Sep. 11, 2015, entitled “Advertising Middleware”, which is a continuation of U.S. patent application Ser. No. 11/428,001, filed Jun. 30, 2006, entitled “Advertising Middleware”, which are each hereby incorporated by reference herein in their entireties.
- The invention relates generally to a method and a system for facilitating the distribution and access of electronic information. Specifically, the invention relates to a system and method for providing advertising information to applications.
- Advertising-supported applications are increasing in popularity as advertisers and companies strive for new ways to reach the public or a specified segment thereof. Advertising-supported application or adware is any software package which automatically plays, displays, or downloads advertising material to a computer after the software is installed on it or while the application is being used. Advertising-supported applications are often small and unobtrusive to attract more users and appear less invasive. Companies often offer greater discounts or special offers through these applications as an incentive to use the advertising applications. Advertising-supported applications have been developed for computing devices such as desktop computers, laptops and even mobile devices, such as Personal Data Assistants (PDAs) and cellular phones. However, with the ever increasing number of types and brands of computing devices, developers of advertising-supported applications often need to program the applications specifically for each device or architecture. Programming applications for each different type of device or architecture can be time consuming, complex and costly for not only the developers but for the companies funding such ventures. As such, some advertising applications may only exist for certain devices or types of devices, limiting the reach of some advertisements. Further, downloading applications that are not specifically designed for a user's device may cause significant technical issues with the device.
- For the foregoing reasons, a system and method of facilitating access to advertising functionality is needed.
- Many of the aforementioned problems are solved by providing a method and system that provides an application programming interface for facilitating advertisement functionality. Application developers may create applications using functions and hooks provided by a standardized advertisement middleware. The advertisement middleware provides the functionality to interface with hardware and software components associated with a particular device. As such, application developers do not need to cater their programming to a particular device or type of device. The advertisement middleware may contain various modules including an advertisement player, an advertisement cache, reporting, profiling, loyalty tracker and a payment component. Each module facilitates certain functions associated with displaying or otherwise providing an advertisement to an application. For example, the player module may include programming that instructs a display of the underlying device to display or play one or more advertisements. The cache may store advertisements for faster retrieval.
- In accordance with another aspect, the application middleware may track loyalty of a user to a certain company or type of advertisement. A user may earn loyalty credit if, for example, they view and/or click multiple advertisements from a certain company over a specified period of time. Alternatively, loyalty credit may be earned if a user purchases a product that is advertised.
- In accordance with still another aspect, the middleware may further include a transport layer that implements multiple transport protocols. With the transport layer, communications between an application and a content server, for example, may be significantly streamlined. In particular, applications might not be required to know which servers use which communication protocol. As such, applications may retrieve advertisements from a variety of servers using different communication protocols.
- In yet another aspect, advertising middleware may provide a payment model for developers. Specifically, advertising middleware may keep track of click-throughs or other forms of access of advertisements for each advertising application. Based on the number of click-throughs associated with a particular advertising application, the developer of the advertising application may be rewarded a specified payment. Thus, various advertising payment models may be developed based on the effectiveness of advertising applications. The incentives may further motivate development of additional advertising applications.
- These as well as other advantages and aspects of the invention are apparent and understood from the following detailed description of the invention, the attached claims, and the accompanying drawings.
- The present invention is illustrated by way of example and not limited in the accompanying figures in which like reference numerals indicate similar elements and in which:
-
FIG. 1 illustrates a block diagram of a wireless communication system in which various embodiments may be implemented. -
FIG. 2 illustrates a mobile terminal in which one or more illustrative embodiments may be implemented. -
FIG. 3 is a block diagram illustrating components of an application middleware and interactions with other components according to one or more aspects described herein. -
FIG. 4 illustrates a block functionality diagram of an advertising middleware component according to one or more aspects described herein. -
FIG. 5 illustrates a flow chart of a method for providing relevant advertisements to a requesting application via a middleware component according to one or more aspects described herein. -
FIG. 6 is a flowchart illustrating a method for providing incentives to application developers according to one or more aspects described herein. - In the following description of the various embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope of the present invention.
- Aspects of the present invention may be utilized across a broad array of networks and communication protocols.
FIG. 1 illustrates an example of awireless communication system 110 in which systems and methods according to at least some embodiments may be employed. One or more network-enabledmobile devices 112, such as a personal digital assistant (PDA), cellular telephone, mobile terminal, personal video recorder, portable television, personal computer, digital camera, digital camcorder, portable audio device, portable radio, or combinations thereof, are in communication with aservice source 122 through a broadcast network 114 (which may include the Internet or similar network) and/or acellular network 116. The mobile terminal/device 112 may include a digital broadband broadcast receiver device. Theservice source 122 may be connected to several service providers such asadvertisement source 125 that may provide their actual program content or information or description of their services and programs to theservice source 122 that further provides the content or information to themobile device 112. The several service providers includingadvertisement source 125 may include but are not limited to one or more television and/or digital television service providers, AM/FM radio service providers, advertisement servers and/or providers, SMS/MMS push service providers, Internet content or access providers. - In one or more arrangements,
broadcast network 114 may broadcast advertisements from one or more service sources such asservice source 122.Service source 122 may obtain or receive advertisements from an advertisement server or provider. The advertisements may then be received bymobile terminal 112 through thebroadcast network 114 and stored in a database for display to a user ofterminal 112. In one example, abroadcast service source 122 may obtain revenue from displaying advertisements in their broadcasts. As such, thebroadcast service source 122 may periodically retrieve advertisements from anadvertisement source 125 or database and broadcast the advertisement to a user population subscribed to the broadcast service. One method of broadcasting data is using IP datacasting (IPDC). IPDC combines digital broadcasting and Internet Protocol. As such, a variety of information and services may be transmitted using such a network and protocol. - The
mobile device 112 may also send and receive messages to and from theservice source 122 through thecellular network 116. Thecellular network 116 may include a wireless network and a basetransceiver station transmitter 120. The cellular network may include a second/third-generation (2G/3G) cellular data communications network, a Global System for Mobile communications network (GSM), a Universal Mobile Telecommunications System (UMTS) and/or other wireless communication network such as a WLAN network. In one or more aspects, communications through thecellular network 116 may allow aservice source 122 to distribute advertisements on an individual basis. That is, rather than broadcasting advertisements to an entire subscriber population, theservice source 122 may obtain and distribute advertisements from anadvertising source 125 based on user interests, usage statistics, a user's most frequent time of use and the like. Alternatively or additionally,mobile device 112 may access either thebroadcast network 114 orcellular network 116 to retrieve advertisements or other forms of content from a server orcontent provider 122. In one example,device 112 may request additional advertisements from anadvertisement server 125 in response to determining that no advertisements are stored indevice 112. - In accordance with one aspect of the invention,
mobile device 112 may include a wireless interface configured to send and/or receive digital wireless communications withincellular network 116 using basetransceiver station transmitter 120. The information received bymobile device 112 through thecellular network 116 orbroadcast network 114 via acellular network tower 118 may include user input or selection (for example, in an interactive transmission), applications, services, electronic images, content requests, audio clips, video clips, and/or WTAI (Wireless Telephony Application Interface) messages. As part ofcellular network 116, one or more base stations (not shown) may support digital communications withreceiver device 112 while the receiver device is located within the administrative domain ofcellular network 116. - As shown in
FIG. 2 ,mobile device 112 may includeprocessor 128 connected to user interface 130,memory 134 and/or other storage, anddisplay 136.Mobile device 112 may also includebattery 150,speaker 152 andantennas 154. User interface 130 may further include a keypad, touch screen, voice interface, four arrow keys, joy-stick, stylus, data glove, mouse, roller ball, touch screen, or the like. In addition, user interface 130 may include the entirety of or portion ofdisplay 136. - Computer executable instructions and data used by
processor 128 and other components withinmobile device 112 may be stored in a computerreadable memory 134. The memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory.Software 140 may be stored withinmemory 134 and/or storage to provide instructions toprocessor 128 for enablingmobile device 112 to perform various functions. Alternatively, some or all of the computer executable instructions may be embodied in hardware or firmware (not shown). -
Mobile device 112 may be configured to receive, decode and process digital broadband broadcast transmissions that are based, for example, on the Digital Video Broadcast (DVB) standard, such as DVB-H, DVB-T or DVB-MHP, through aspecific DVB receiver 141. The mobile device may also be provided with other types of receivers for digital broadband broadcast transmissions. Additionally,receiver device 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142,WLAN transceiver 143, andtelecommunications transceiver 144. In one aspect of the invention,mobile device 112 may receive radio data stream (RDS) messages. - In an example of the DVB standard, one DVB 10 Mbit/s transmission may have 200, 50 kbit/s audio program channels or 50, 200 kbit/s video (TV) program channels. The
mobile device 112 may be configured to receive, decode, and process transmission based on the Digital Video Broadcast-Handheld (DVB-H) standard or other DVB standards, such as DVB-Multimedia Home Platform, DVB-Satellite (DVB-S), DVBTerrestrial (DVB-T) or DVB-Cable (DVB-C). Similarly, other digital transmission formats may alternatively be used to deliver content and information of availability of supplemental services, such as ATSC (Advanced Television Systems Committee), NTSC (National Television System Committee), ISDB-T (Integrated Services Digital Broadcasting—Terrestrial), DAB (Digital Audio Broadcasting), DMB (Digital Multimedia Broadcasting), FLO (Forward Link Only) or D1RECTV. Additionally, the digital transmission may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of a mobile terminal and may enable smooth and seamless handover. Time-slicing consists of sending data in bursts using a higher instantaneous bit rate as compared to the bit rate required if the data were transmitted using a traditional streaming mechanism. In this case, themobile device 112 may have one or more buffer memories for storing the decoded time sliced transmission before presentation. The power of receiver between bursts may be turned off to reduce power consumption. - In one or more configurations, a user of a mobile device may agree to receive advertisements on her mobile device. For example, a user may download a widget application that provides deals or discounts for allowing advertisements from organizations or companies to be displayed on the user's device. To facilitate the display of advertisements in widget applications and other applications, the user's mobile terminal may include an advertisement middleware that provides a widget or application API that allows an application to call standardized functions for retrieving advertisements or performing other advertising tasks. A widget, as used herein, relates to a user interface element and/or application that provides information such as advertising or weather information to a user based on a variety of factors such as user preferences. Examples of advertising widgets and other advertising applications are described in a U.S. patent application Ser. No. 11/453,146, entitled “AUCTIONS FOR WIDGET SPACE,” filed Jun. 15, 2006, the content of which is hereby incorporated by reference in its entirety.
- Middleware, in general, refers to an entity that facilitates interaction between software and/or hardware components. For example, a middleware may perform processes such as mediation between an application and a network to manage the interaction between disparate applications across heterogeneous platforms. The advertisement middleware described herein provides a variety of functionalities associated with the display and retrieval of advertisements. In particular, the middleware relieves the widget or other application from having to implement the middleware functionalities. Instead, the application may call various functions of the middleware to accomplish various advertisement tasks or processes. Advertisement middleware may be stored in a computer
readable medium 134 in a user'smobile terminal 112 along one or more advertisement applications that may interface with the middleware. The advertisement application or widget may display advertisements or other information ondisplay 136. Advertisement middleware may also include components for interfacing with one or more hardware components such asWLAN transceiver 143,telecom transceiver 144 anddisplay 136 to perform one or more tasks. -
FIG. 3 is a block diagram illustrating amiddleware component 301. Among other capabilities,middleware component 301 may coordinate communication, data, messages, and user interaction between one ormore content servers more applications Middleware component 301 may expose one or more functional APIs, such asAPI 307, to provide an application 305 with a standardized interface for performing advertisement related functions. For example, thefunctional API 307 may publish a function called GET ADVERTISEMENT that directs themiddleware component 301 to obtain one or more advertisements based on one or more specified parameters. Other functions may also be published throughfunctional API 307 including DISPLAY ADVERTISEMENT that directsmiddleware 301 to display an advertisement on a display of a mobile terminal device and ADD CREDIT which instructsmiddleware 301 to add credit or loyalty points to a user's account. Credit and/or loyalty points may be added based on factors such as a number of advertisements viewed on the device. - The
middleware component 301 may also interact with aserver transport layer 317 which may include a plurality of transport mechanisms and/or protocols including HTTP, FTP, SMS, Bluetooth, WLAN, Radio Frequency Identification (RFID), RSS, or 2D Barcode. For example,middleware component 301 may determine that there are no advertisements available in the device's storage. As such,middleware 301 may connect to anadvertisement server 315 a to request additional advertisements. The request may be issued through thetransport layer 317 which may provide multiple protocols for making such a request. In another example,middleware 301 may periodically update anadvertisement server 315 a with loyalty information associated with a particular user or device through thetransport layer 317. In general,transport layer 317 may facilitate any communications with external devices or entities. - Alternatively or additionally,
middleware component 301 may include or interact with a hardware API to instruct various hardware components to perform certain functions or tasks. In one or more instances, an application may call a DISPLAY ADVERTISEMENT function. In response,middleware 301 may interface with a display component through the hardware API to display a specified advertisement. The processes and interfaces shown inFIG. 3 are for illustrative purposes, and those of skill in the art will appreciate thatmiddleware component 301 may support additional processes, components and interfaces in addition to those shown. - Further,
middleware component 301 exposes one or more APIs toapplication programs Application programs application program middleware component 301 using the exposed APIs. The functional APIs associated withmiddleware 301 may be published to the public or a group of developers to allow them to implement the proper programming inapplications middleware 301. Thus,applications middleware component 301. For example, applications might not need to include programming to perform functions such as storing user profiles and interfacing with software and hardware subsystems. Advantages of using the functionalities ofcomponent 301 may include a reduction in load on the overall operating system of the underlying device. -
FIG. 4 is a block diagram illustrating architecture of a middleware component, such ascomponent 301 ofFIG. 3 . Middleware component may include aplayer module 411, acache module 412, areport module 413, aprofile module 414, aloyalty module 415, and/or apayment module 416. In addition,middleware component 301 may interface with a content server 315 (not shown), e.g., advertising server, viatransport mechanism 317, as well as with the user of the mobile terminal device via one or more end-user interfaces such as keys, buttons, dials, display screens, speakers, etc., of the mobile terminal device. - As described above,
functional API 307 may interface with one or more application level programs (not shown). This interaction may be controlled and/or directed by a user of the mobile terminal device on which the one or more applications are executing via one or more end-user interfaces. Function calls and requests by the applications throughfunctional API 307 may be routed directly to the module of the middleware component to which it corresponds, as further described below. Alternatively or additionally, themiddleware component 301 may include a manager module (not shown) that initially receives the request or input from the application via thefunctional API 307 and directs the request to the applicable module of themiddleware component 301. While specific APIs are called out and described herein, those of skill in the art will appreciate that additional or different APIs may be used. -
Player module 411, in an illustrative embodiment, is responsible for displaying or otherwise providing one or more advertisements to the application.Player module 411 may receive a request from an application via thefunctional API 307 to display or provide advertisements. In response,player module 411 may extract from the request one or more parameters, such as the type of advertisement to be provided, e.g., full screen, banner, ticker, or widget; duration for displaying or playing advertisement; position and/or size of advertisement to be displayed; and interval for refreshing the advertisement or for providing new advertisements. Some parameters may be optional and may be used with pre-defined default values if left unspecified. -
Player module 411 may subsequently select one or more advertisements in accordance with the parameters from acache module 412 that stores advertisements.Cache module 412 may be implemented as a database with retrieval functions to facilitate the selection of advertisements based upon the parameters. Ifcache module 412 is empty or does not contain any advertisements fitting the parameters requested by the application,player module 411 orcache module 412 may retrieve one or more advertisements from a server (e.g.,server 315 a ofFIG. 3 ) via atransport mechanism 317 in accordance with the parameters specified in the initial request. Additional parameters may be extracted from the device, such as usage and user profile information, and may be provided to the server to facilitate delivery of optimized content. - For example, parameters relating to gender may be extracted from user profile information to determine the advertisement preferences based upon the gender of the user. These parameters may be used to retrieve, or place a higher priority for retrieving, advertisements targeted to a male audience, and/or not retrieve, or place a lower priority in retrieving, advertisements targeted exclusively to a female audience. Additionally, or alternatively, the
cache module 412 may periodically retrieve new advertisements from the server based on previously used parameters. - For example, the usage information transmitted to the server may reveal that a significant portion of advertisements being displayed in an application has been regarding sports equipment in a banner-type advertisement. The
cache module 412 may periodically, e.g., every five hours, retrieve new advertisements from the server regarding sports equipment in a banner-type format. Alternatively, thecache module 412 may opt to retrieve non-sports equipment related advertisements to provide more variety to the cache pool. By pre-fetching content, future retrieval of advertisements from the cache by theplayer module 411 may be greatly expedited. - Additionally, or alternatively, the
cache module 412 may periodically retrieve content from nearby servers based upon changes in the mobile device's location, such as automatically retrieving new advertisements from a nearest content server with respect to the mobile device. For example, a user at a supermarket may receive advertisements on the weekly specials at the supermarket on her mobile device that were retrieved by thecache module 412 via a transport mechanism, e.g., WLAN, from an advertising server located in the store. Retrieved advertisements may be stored incache module 412 for later use byplayer module 411. - Once
player module 411 has received one or more advertisements in accordance with the parameters fromcache module 412 or an external advertisement server,player module 411 may display or play the advertisement in the application or otherwise provide the one or more advertisements to the requesting application. In one or more arrangements, the advertisement may include an animation or video clip. In such arrangements, the advertisement may be played using various hardware devices including a display and speakers of the device. -
Report module 413 monitors and tracks usage of themiddleware component 301 and the middleware modules.Report module 413 may receive or collect usage information fromother middleware modules player module 411 to the requesting application or user. The information may be gathered at any desired time, e.g., periodically, whenever content is requested, etc., and stored incache module 412 or another database.Middleware component 301, e.g., viareport module 413, may expose one or more APIs to allow an application to access and/or retrieve usage information from the database or allow the application to request authorization, initiation and/or stoppage of the usage monitoring. Additionally, information collected byreport module 413 may further be transmitted to one or more advertisement servers. With the collected information, the servers may, for example, analyze statistics of service usage. -
Profile module 414 stores and manages user profile information including user behavior and interactions and user preferences. Some or all of the information may be gathered from another middleware module, e.g.,report module 413. In one example,middleware component 301, viaprofile module 414, may expose one or more APIs to allow an application and user to update the user or device's profile information, including preferences. Profile information may also be transmitted to a server, e.g., viaplayer module 411, to facilitate retrieval of targeted advertisements from the server. For example,profile module 414 may collect data regarding the frequency with which the user or device requests and views advertisements.Profile module 414 may further collect information related to what types of advertisements are typically viewed and/or requested. Using such data, relevant advertisements may be retrieved from an advertisement server. -
Loyalty module 415 stores and manages user loyalty information to facilitate providing the user with rewards or incentives for certain user interactions with advertisements. Some or all of the information used and/or stored byloyalty module 415 may be gathered from another middleware module (e.g., report module 413) or from the advertisements (e.g., rewards specified in metadata associated with the advertisements).Middleware component 301, e.g., vialoyalty module 415, may expose one or more APIs to allow applications and/or the user to access the loyalty information. Additionally, loyalty information may be transmitted to the server 315 which may subsequently relay the information to the appropriate advertisers. For example, user interactions such as following a link in an advertisement or making a purchase with an advertiser, may entitle the user to rewards including receiving extra mobile minutes, discounts from the advertiser, or application-specific rewards (e.g., extra lives in a video game application). -
Payment module 416 stores and manages payment information. For example,payment module 416 may store and manage payment data to facilitate payment of fees to application developers for advertisements provided to the user via one or more applications a developer created. For example, developers may be paid based on the number of views or click-throughs the advertisements generated, and/or commission based on sales transactions. Some or all of the information may be gathered from another middleware module, e.g.,report module 413. The information may further be transmitted to an advertising server 315 to facilitate payment processing. - Each block within
component 301 may be implemented in software via computer executable instructions stored in a memory, or via hardware, e.g., as one or more ASICs, or the like. The functional modules illustrated inFIG. 4 are but one possible embodiment, as functionality may be combined across modules, or split to create even more functional modules. Some modules may be optional, and additional modules may be added. The scope of the invention is not limited to the illustrative embodiment ofFIG. 4 . -
FIG. 5 is a flowchart illustrating a method for providing relevant advertisements to a requesting application via a middleware component such ascomponent 301 inFIGS. 3 and 4 . Instep 500, a registration request may be received from an application. For example, an application, upon loading or boot-up, may call an NAD REGISTER( ) function to register with a known middleware component. An application may be aware of the middleware component based on, for example, system wide broadcasts or advertisements from the middleware component. Instep 505, a determination is made as to whether the middleware component has been loaded. If the middleware component has not been loaded, then instep 510, the middleware component is initialized and loaded. In one or more arrangements, the middleware component may be configured to automatically load upon startup of the mobile terminal device or alternatively or additionally, may be built-in to the operating system. Thus, if the middleware component is already loaded when the registration request is made by the application, the middleware component may register the application in response instep 515. - For example, the requesting second application may be assigned a unique identifier to differentiate the requesting second application from other applications, e.g., the aforementioned first application. In
step 520, the middleware component may receive a request for one or more advertisements, including values associated with a list of parameters such as type, duration, position, and interval from the application via a functional API. This request may be sent directly to a player module or alternatively, to a manager module which directs the request to the player module. Instep 525, the middleware component or a module thereof searches a cache for one or more advertisements in accordance with the parameters. Instep 530, a determination is made as to whether the cache contains a relevant advertisement matching the specified parameters. - If the cache is empty or no advertisements are identified as fitting the parameters from the cache in
step 530, the middleware component may then, instep 540, transmit a request for one or more advertisements to an advertising server via a transport mechanism such as HTTP. Instep 545, one or more advertisements are received from the advertising server through the transport layer and stored in the cache. Instep 550, the selected advertisements are displayed to the user according to, for example, the parameters received instep 520. Alternatively, if a relevant advertisement is available in the cache fromstep 530, the relevant advertisement is retrieved from the cache instep 535 and displayed instep 550. Instep 555, the middleware component may receive a deregistration message from the second application via an NAD DEREGISTER( ) function if, for example, the application is being closed by a user. In one or more arrangements, if the middleware component is not being used by other application, the middleware component may be unloaded from memory. Where other application(s) are still registered or communicating with the middleware component, the middleware might not be unloaded. Alternatively, the middleware component may remain resident in memory until the mobile device is powered off. -
FIG. 6 is a flowchart illustrating a business model for generating revenue for developers of mobile applications that display advertisements via the middleware component. Instep 600, a developer implements calling functionality into her application enabling the application to interface with a middleware component through a standardized functional API. Developers may be able to access the middleware component if, for example, the middleware component and functional API are publicly available and downloadable free of charge. Instep 601, a developer registers the application with an advertising server to set up payment information. For example, the developer may sign up an account on the server under a payment schedule that pays commission based upon total views or click-throughs of advertisements displayed in its application. Instep 602, the application communicates with the server via the middleware component and sends user report information such as user views and click-throughs of advertisements to the server. Instep 603, a credit may be applied to the developer's account with any commission generated from the displayed advertisements. Instep 604, the developer is paid the amount owed in his account. A minimum amount owed may be required before payment is made. In one or more arrangements, a level of payment may also be associated with the functionalities or complexities of the developer's applications. For example, an application with more functions such as music and games may be provided a greater payout than an application that is dedicated to displaying advertisements. - The methods and features recited herein may further be implemented through any number of computer readable mediums that are able to store computer readable instructions. Examples of computer readable mediums that may be used include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, DVD or other optical disk storage, magnetic cassettes, magnetic tape, magnetic storage and the like.
- The following example provides an illustrative implementation of certain aspects of the present invention. A developer has invested a great deal of time, resources, and money into producing a massive multi-player game that runs on mobile devices and wishes to generate revenue from the game. The developer could charge a price for purchasing the game or a periodic subscription fee to play the game, but such business models would likely not reach as wide a user-base as a game distributed without charge. Thus, the developer may instead, or additionally as an option, offer a version of the game free of charge, but one that is supported through advertisements displayed in the game. The developer could implement such functionality directly into the game, but doing so would be costly and complex, as the developer will have to account for various software and hardware platforms, advertisement formats, server specifications, etc. Instead, the developer may simply implement a function in the game, e.g., GET ADVERTISEMENT( ) to call the advertisement middleware to display advertisements according to any desired parameters.
- For example, the game may request that ticker-type (TYPE) advertisements be displayed at the bottom of the game screen (POSITION), to minimize obstruction of the game, while the game is being played (DURATION), with a one-minute refreshment rate for new advertisements (INTERVAL). Such an example shows four parameters for displaying the advertisement. The player module of the middleware, upon receiving the request from the game, selects from the cache module advertisements fitting the parameters, i.e., ticker-type. If the cache is empty, or no content is selected as fitting the parameters provided, the cache module downloads new advertisements, e.g., via HTTP, from an advertising server. Additional information from other middleware modules is transmitted to the server to ensure that advertisements downloaded are targeted to the user, such as user profile information gathered from user registration in the game. Once advertisements are selected by the player module, either from the cache or from the server, they are displayed to the user in the game according to the other parameters requested, e.g., bottom of screen. As such, the developer registers this application with the advertising server and sets up an account where future earnings may be credited.
- Assume, for example, that an advertisement for a MP3 player is displayed in the game. The user of the mobile device decides to follow the link in the advertisement, and liking what she sees, purchases the MP3 player. The user profile module tracks the interaction, e.g. via the report module, and updates the user profile information to reflect the purchase/click-through. This information may be transmitted to an advertising server by the middleware to retrieve future advertisements relating to this purchase/click-through, such as accessories for MP3 players, other portable players, etc. The loyalty module tracks the purchase and rewards the player in the game, such as giving the player some game-currency, with the amount dependent upon the purchase price, e.g., higher purchases are rewarded by higher awards, or the number of click-throughs or ad-views. Additionally, the user may be given future discounts on products purchased from the same advertiser. Finally, the payment module tracks the view, click-through, and purchase generated by this advertisement and transmits the information to the advertising server, which credits the developer's account for any revenue generated from the view and click-through, and commission fee associated with the purchase.
- Such an implementation benefits all parties involved. Users can play the game for free and receive bonuses, rewards, or discounts for interacting with advertisers. A developer can capitalize on revenue opportunities that otherwise would not be possible through traditional business avenues or are practically unfeasible given the complexity of implementing advertising functionality directly into its game. Finally, advertisers can reach a vast consumer-base for relatively little cost and gains wide exposure from users interacting with the advertisements.
- The present invention has been described in terms of preferred and exemplary embodiments thereof. Numerous other embodiments, modifications and variations within the scope and spirit of the appended claims will occur to persons of ordinary skill in the art from a review of this disclosure.
Claims (25)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/232,491 US20160350816A1 (en) | 2006-06-30 | 2016-08-09 | Advertising middleware |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/428,001 US9135626B2 (en) | 2006-06-30 | 2006-06-30 | Advertising middleware |
US14/852,160 US20160316027A1 (en) | 2006-06-30 | 2015-09-11 | Advertising middleware |
US15/232,491 US20160350816A1 (en) | 2006-06-30 | 2016-08-09 | Advertising middleware |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/852,160 Continuation US20160316027A1 (en) | 2006-06-30 | 2015-09-11 | Advertising middleware |
Publications (1)
Publication Number | Publication Date |
---|---|
US20160350816A1 true US20160350816A1 (en) | 2016-12-01 |
Family
ID=38877842
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/428,001 Active 2033-06-17 US9135626B2 (en) | 2006-06-30 | 2006-06-30 | Advertising middleware |
US14/852,160 Abandoned US20160316027A1 (en) | 2006-06-30 | 2015-09-11 | Advertising middleware |
US15/232,491 Abandoned US20160350816A1 (en) | 2006-06-30 | 2016-08-09 | Advertising middleware |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/428,001 Active 2033-06-17 US9135626B2 (en) | 2006-06-30 | 2006-06-30 | Advertising middleware |
US14/852,160 Abandoned US20160316027A1 (en) | 2006-06-30 | 2015-09-11 | Advertising middleware |
Country Status (8)
Country | Link |
---|---|
US (3) | US9135626B2 (en) |
EP (1) | EP2036018A4 (en) |
CN (1) | CN101496054A (en) |
BR (1) | BRPI0715603A2 (en) |
CA (1) | CA2656195A1 (en) |
MX (1) | MX2009000005A (en) |
RU (1) | RU2445704C2 (en) |
WO (1) | WO2008004090A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9959554B2 (en) * | 2011-03-01 | 2018-05-01 | Kip Raymond Meeboer | Provision of content through publicly accessible computer devices |
Families Citing this family (98)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6415264B1 (en) | 1997-07-08 | 2002-07-02 | Walker Digital, Llc | System and method for determining a posting payment amount |
US8352323B2 (en) * | 2007-11-30 | 2013-01-08 | Blaze Mobile, Inc. | Conducting an online payment transaction using an NFC enabled mobile communication device |
US20080059559A1 (en) * | 2006-08-31 | 2008-03-06 | Sbc Knowledge Ventures, L.P. | System and method for consolidating middleware management |
US9100702B2 (en) * | 2006-09-11 | 2015-08-04 | Tivo Inc. | Personal content distribution network |
US20080108337A1 (en) * | 2006-11-06 | 2008-05-08 | Sandisk Il Ltd. | Method for advertising on mobile devices |
US20080108342A1 (en) * | 2006-11-06 | 2008-05-08 | Sandisk Il Ltd. | System for advertising on mobile devices |
US7958012B2 (en) * | 2007-03-05 | 2011-06-07 | Thintail, Inc. | System and method for enabling online research, publication, promotion and management of user goods |
FR2918529A1 (en) * | 2007-07-02 | 2009-01-09 | France Telecom | METHOD FOR COMMUNICATING A TERMINAL WITH A SERVER |
US9497286B2 (en) * | 2007-07-07 | 2016-11-15 | Qualcomm Incorporated | Method and system for providing targeted information based on a user profile in a mobile environment |
US20090048977A1 (en) * | 2007-07-07 | 2009-02-19 | Qualcomm Incorporated | User profile generation architecture for targeted content distribution using external processes |
US9392074B2 (en) * | 2007-07-07 | 2016-07-12 | Qualcomm Incorporated | User profile generation architecture for mobile content-message targeting |
US20090037270A1 (en) * | 2007-08-03 | 2009-02-05 | Debabrata Patro | System, method, and computer program product for compensating a user for viewing an advertisement and purchasing a good or service |
CN102017550A (en) * | 2007-11-14 | 2011-04-13 | 高通股份有限公司 | Methods and systems for determining a geographic user profile to determine suitability of targeted content messages based on the profile |
US9203911B2 (en) * | 2007-11-14 | 2015-12-01 | Qualcomm Incorporated | Method and system for using a cache miss state match indicator to determine user suitability of targeted content messages in a mobile environment |
US20090177530A1 (en) * | 2007-12-14 | 2009-07-09 | Qualcomm Incorporated | Near field communication transactions in a mobile environment |
WO2010019143A1 (en) * | 2008-08-13 | 2010-02-18 | Tivo Inc. | Advertisment content management and distribution system |
US8359612B2 (en) | 2008-08-13 | 2013-01-22 | Tivo Inc. | Content distribution system using transportable memory devices |
US8447669B2 (en) | 2008-08-26 | 2013-05-21 | Visa U.S.A. Inc. | System and method for implementing financial assistance programs |
WO2010055197A1 (en) * | 2008-11-11 | 2010-05-20 | Nokia Corporation | Method and apparatus for managing advertising-enabled applications |
KR101652994B1 (en) * | 2008-11-13 | 2016-08-31 | 삼성전자주식회사 | System and method for providing of personalized mobile advertising |
US20100235443A1 (en) * | 2009-03-10 | 2010-09-16 | Tero Antero Laiho | Method and apparatus of providing a locket service for content sharing |
US8433296B2 (en) | 2009-05-01 | 2013-04-30 | Ryan Hardin | Exclusive delivery of content within geographic areas |
US20100299206A1 (en) * | 2009-05-22 | 2010-11-25 | Microsoft Corporation | Software with integrated advertising content |
US8489112B2 (en) | 2009-07-29 | 2013-07-16 | Shopkick, Inc. | Method and system for location-triggered rewards |
KR101169840B1 (en) * | 2009-08-05 | 2012-07-30 | 삼성전자주식회사 | System and method for providing of personalized mobile advertising |
US20110093375A1 (en) * | 2009-10-15 | 2011-04-21 | Sony Corporation | System and method for supporting a bidding procedure in an electronic network |
US9229227B2 (en) | 2010-02-28 | 2016-01-05 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses with a light transmissive wedge shaped illumination system |
US20150309316A1 (en) | 2011-04-06 | 2015-10-29 | Microsoft Technology Licensing, Llc | Ar glasses with predictive control of external device based on event input |
US20110213664A1 (en) * | 2010-02-28 | 2011-09-01 | Osterhout Group, Inc. | Local advertising content on an interactive head-mounted eyepiece |
US9097890B2 (en) | 2010-02-28 | 2015-08-04 | Microsoft Technology Licensing, Llc | Grating in a light transmissive illumination system for see-through near-eye display glasses |
US9285589B2 (en) | 2010-02-28 | 2016-03-15 | Microsoft Technology Licensing, Llc | AR glasses with event and sensor triggered control of AR eyepiece applications |
US9097891B2 (en) | 2010-02-28 | 2015-08-04 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses including an auto-brightness control for the display brightness based on the brightness in the environment |
EP2539759A1 (en) | 2010-02-28 | 2013-01-02 | Osterhout Group, Inc. | Local advertising content on an interactive head-mounted eyepiece |
US9223134B2 (en) | 2010-02-28 | 2015-12-29 | Microsoft Technology Licensing, Llc | Optical imperfections in a light transmissive illumination system for see-through near-eye display glasses |
US9366862B2 (en) | 2010-02-28 | 2016-06-14 | Microsoft Technology Licensing, Llc | System and method for delivering content to a group of see-through near eye display eyepieces |
US9759917B2 (en) | 2010-02-28 | 2017-09-12 | Microsoft Technology Licensing, Llc | AR glasses with event and sensor triggered AR eyepiece interface to external devices |
US9341843B2 (en) | 2010-02-28 | 2016-05-17 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses with a small scale image source |
US9129295B2 (en) | 2010-02-28 | 2015-09-08 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses with a fast response photochromic film system for quick transition from dark to clear |
US9091851B2 (en) | 2010-02-28 | 2015-07-28 | Microsoft Technology Licensing, Llc | Light control in head mounted displays |
US20120249797A1 (en) | 2010-02-28 | 2012-10-04 | Osterhout Group, Inc. | Head-worn adaptive display |
US10180572B2 (en) | 2010-02-28 | 2019-01-15 | Microsoft Technology Licensing, Llc | AR glasses with event and user action control of external applications |
US9128281B2 (en) | 2010-09-14 | 2015-09-08 | Microsoft Technology Licensing, Llc | Eyepiece with uniformly illuminated reflective display |
US9182596B2 (en) | 2010-02-28 | 2015-11-10 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses with the optical assembly including absorptive polarizers or anti-reflective coatings to reduce stray light |
US9134534B2 (en) | 2010-02-28 | 2015-09-15 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses including a modular image source |
WO2011130251A1 (en) * | 2010-04-12 | 2011-10-20 | Visa International Service Association | Apparatuses, methods and systems for using a personalized data repository |
CN102447688A (en) * | 2010-10-15 | 2012-05-09 | 盛绩信息技术(上海)有限公司 | Webpage game resource accelerator and acceleration method |
US20120209677A1 (en) | 2010-10-20 | 2012-08-16 | Mehta Kaushal N | Person-2-person social network marketing apparatuses, methods and systems |
WO2012106655A2 (en) | 2011-02-05 | 2012-08-09 | Visa International Service Association | Merchant-consumer bridging platform apparatuses, methods and systems |
WO2012109628A2 (en) | 2011-02-10 | 2012-08-16 | Visa International Service Assocation | Electronic coupon issuance and redemption apparatuses, methods and systems |
SG193481A1 (en) | 2011-02-16 | 2013-10-30 | Visa Int Service Ass | Snap mobile payment apparatuses, methods and systems |
US10586227B2 (en) | 2011-02-16 | 2020-03-10 | Visa International Service Association | Snap mobile payment apparatuses, methods and systems |
WO2012116125A1 (en) | 2011-02-22 | 2012-08-30 | Visa International Service Association | Universal electronic payment apparatuses, methods and systems |
AU2012223415B2 (en) | 2011-02-28 | 2017-05-18 | Visa International Service Association | Secure anonymous transaction apparatuses, methods and systems |
WO2012122060A1 (en) | 2011-03-04 | 2012-09-13 | Visa International Service Association | Cloud service facilitator apparatuses, methods and systems |
US9646291B2 (en) | 2011-05-11 | 2017-05-09 | Visa International Service Association | Electronic receipt manager apparatuses, methods and systems |
CN103797500A (en) | 2011-06-03 | 2014-05-14 | 维萨国际服务协会 | Virtual wallet card selection apparatuses, methods and systems |
US9355393B2 (en) | 2011-08-18 | 2016-05-31 | Visa International Service Association | Multi-directional wallet connector apparatuses, methods and systems |
US10121129B2 (en) | 2011-07-05 | 2018-11-06 | Visa International Service Association | Electronic wallet checkout platform apparatuses, methods and systems |
US9582598B2 (en) | 2011-07-05 | 2017-02-28 | Visa International Service Association | Hybrid applications utilizing distributed models and views apparatuses, methods and systems |
US10438176B2 (en) | 2011-07-17 | 2019-10-08 | Visa International Service Association | Multiple merchant payment processor platform apparatuses, methods and systems |
US10242358B2 (en) | 2011-08-18 | 2019-03-26 | Visa International Service Association | Remote decoupled application persistent state apparatuses, methods and systems |
US10825001B2 (en) | 2011-08-18 | 2020-11-03 | Visa International Service Association | Multi-directional wallet connector apparatuses, methods and systems |
US9710807B2 (en) | 2011-08-18 | 2017-07-18 | Visa International Service Association | Third-party value added wallet features and interfaces apparatuses, methods and systems |
US10318941B2 (en) | 2011-12-13 | 2019-06-11 | Visa International Service Association | Payment platform interface widget generation apparatuses, methods and systems |
US9117225B2 (en) | 2011-09-16 | 2015-08-25 | Visa International Service Association | Apparatuses, methods and systems for transforming user infrastructure requests inputs to infrastructure design product and infrastructure allocation outputs |
US10223730B2 (en) | 2011-09-23 | 2019-03-05 | Visa International Service Association | E-wallet store injection search apparatuses, methods and systems |
US9953378B2 (en) | 2012-04-27 | 2018-04-24 | Visa International Service Association | Social checkout widget generation and integration apparatuses, methods and systems |
WO2013090611A2 (en) | 2011-12-13 | 2013-06-20 | Visa International Service Association | Dynamic widget generator apparatuses, methods and systems |
US10223710B2 (en) | 2013-01-04 | 2019-03-05 | Visa International Service Association | Wearable intelligent vision device apparatuses, methods and systems |
US10262148B2 (en) | 2012-01-09 | 2019-04-16 | Visa International Service Association | Secure dynamic page content and layouts apparatuses, methods and systems |
US11308227B2 (en) | 2012-01-09 | 2022-04-19 | Visa International Service Association | Secure dynamic page content and layouts apparatuses, methods and systems |
AU2013214801B2 (en) | 2012-02-02 | 2018-06-21 | Visa International Service Association | Multi-source, multi-dimensional, cross-entity, multimedia database platform apparatuses, methods and systems |
US20130339112A1 (en) * | 2012-06-18 | 2013-12-19 | Panayis Nicola Palexas | Method and Apparatus for Network Code Assignment Responsive to Transaction with Option for Game Play Award |
US9607313B2 (en) * | 2012-08-13 | 2017-03-28 | Blackberry Limited | Targeted content streaming banners |
RU2617548C2 (en) * | 2012-08-24 | 2017-04-25 | Самсунг Электроникс Ко., Лтд. | Method for providing information, mobile terminal and display device for it |
CN102880973A (en) * | 2012-09-05 | 2013-01-16 | 常州嘴馋了信息科技有限公司 | Webpage advertisement playing management system |
RU2630382C2 (en) * | 2013-02-06 | 2017-09-07 | Общество с ограниченной ответственностью "СликДжамп" | Using the content of page to solve the problem of accurate advertising selection |
CN103246990A (en) * | 2013-05-28 | 2013-08-14 | 华扬联众数字技术股份有限公司 | Collaborative scheduling method and system for cross-platform advertisement putting |
US9923953B2 (en) | 2013-07-31 | 2018-03-20 | Adenda Media Inc. | Extending mobile applications to the lock screen of a mobile device |
US9619824B2 (en) * | 2013-07-31 | 2017-04-11 | Adenda Media Inc. | Displaying ads on a mobile device outside of a mobile app |
WO2015034386A1 (en) * | 2013-09-06 | 2015-03-12 | Sherbakov Andrei Yuryevich | Method for forming and distributing target information |
US20150073892A1 (en) * | 2013-09-06 | 2015-03-12 | Tune, Inc. | Systems and methods for opening an application associated with an advertisement |
TWI528309B (en) * | 2013-11-20 | 2016-04-01 | 財團法人資訊工業策進會 | Method and mobile device for displaying adapatable advertisement object and system for generating the adapatable advertisement |
CN104219306B (en) * | 2014-09-02 | 2018-08-24 | 上海华力微电子有限公司 | The monitoring system of message-oriented middleware |
US20220044263A1 (en) * | 2014-09-25 | 2022-02-10 | Groupon, Inc. | Dynamically Providing Altered Menu Content Data for Display In Response To Real-Time Constraint Data |
US20160092917A1 (en) * | 2014-09-26 | 2016-03-31 | At&T Mobility Ii Llc | Data Sharing Between Service Providers and Applications |
US11216468B2 (en) | 2015-02-08 | 2022-01-04 | Visa International Service Association | Converged merchant processing apparatuses, methods and systems |
US10089681B2 (en) * | 2015-12-04 | 2018-10-02 | Nimbus Visulization, Inc. | Augmented reality commercial platform and method |
JP6337401B2 (en) * | 2015-12-24 | 2018-06-06 | カイト株式会社 | Management server for advertisement distribution system, advertisement distribution method, and computer program |
US11373207B1 (en) | 2016-10-27 | 2022-06-28 | Intuit, Inc. | Adjusting content presentation based on paralinguistic information |
RU2667374C1 (en) * | 2017-04-20 | 2018-09-19 | Станислав Владимирович Архангельский | Advertising materials displaying system and method |
CN107273222A (en) * | 2017-05-19 | 2017-10-20 | 黎敏 | A kind of different company's ERP system exchange method and middleware |
CN109064209A (en) * | 2018-06-28 | 2018-12-21 | 四川斐讯信息技术有限公司 | A kind of advertisement placement method and server based on portfolio |
CN113692585A (en) * | 2020-03-13 | 2021-11-23 | 谷歌有限责任公司 | System and method for generating and selecting local content to improve security and utilization of network resources |
US20220198510A1 (en) * | 2020-12-18 | 2022-06-23 | Maarten Bos | Timing advertising to user receptivity |
US20220198511A1 (en) * | 2020-12-18 | 2022-06-23 | Maarten Bos | Timing advertising to user receptivity |
US11769178B2 (en) * | 2020-12-28 | 2023-09-26 | Zeta Global Corp. | Multi-platform integration for classification of web content |
WO2023187459A1 (en) * | 2022-03-31 | 2023-10-05 | Pranav J Panchal | System and method for managing a consumer relationship with advertisements |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020120684A1 (en) * | 2000-09-06 | 2002-08-29 | Jacob Christfort | Customizing content provided by a service |
US20050114900A1 (en) * | 2003-11-24 | 2005-05-26 | Patrick Ladd | Methods and apparatus for hardware registration in a network device |
US20060036750A1 (en) * | 2004-02-18 | 2006-02-16 | Patrick Ladd | Media extension apparatus and methods for use in an information network |
US20060253328A1 (en) * | 2005-05-06 | 2006-11-09 | Ujjal Kohli | Targeted advertising using verifiable information |
US20080090513A1 (en) * | 2006-01-06 | 2008-04-17 | Qualcomm Incorporated | Apparatus and methods of selective collection and selective presentation of content |
US9251520B2 (en) * | 2006-02-22 | 2016-02-02 | Google Inc. | Distributing mobile advertisements |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6487538B1 (en) * | 1998-11-16 | 2002-11-26 | Sun Microsystems, Inc. | Method and apparatus for local advertising |
JP4299911B2 (en) * | 1999-03-24 | 2009-07-22 | 株式会社東芝 | Information transfer system |
US20020128903A1 (en) * | 1999-08-23 | 2002-09-12 | Kent Kernahan | Encrypted coupons |
US7103563B1 (en) * | 2000-03-21 | 2006-09-05 | America Online, Inc. | System and method for advertising with an internet voice portal |
JP5525673B2 (en) * | 2000-09-28 | 2014-06-18 | オラクル・インターナショナル・コーポレイション | Enterprise web mining system and method |
US7343317B2 (en) * | 2001-01-18 | 2008-03-11 | Nokia Corporation | Real-time wireless e-coupon (promotion) definition based on available segment |
US20040103027A1 (en) * | 2001-01-29 | 2004-05-27 | Katsuyuki Yamamoto | Advertisement distributing server system, and advertise distributing method |
AU2002355530A1 (en) * | 2001-08-03 | 2003-02-24 | John Allen Ananian | Personalized interactive digital catalog profiling |
US7151764B1 (en) * | 2001-11-01 | 2006-12-19 | Nokia Corporation | Service notification on a low bluetooth layer |
US7155210B2 (en) * | 2001-12-13 | 2006-12-26 | Ncr Corporation | System and method for short-range wireless retail advertising aimed at short-range wireless protocol-enabled personal devices |
RU2192049C1 (en) * | 2001-12-26 | 2002-10-27 | Гаврилов Сергей Анатольевич | Method for distributing publicity information messages |
US6947772B2 (en) | 2002-01-31 | 2005-09-20 | Qualcomm Incorporated | System and method for providing messages on a wireless device connecting to an application server |
US20030149975A1 (en) * | 2002-02-05 | 2003-08-07 | Charles Eldering | Targeted advertising in on demand programming |
US20040103028A1 (en) * | 2002-11-26 | 2004-05-27 | The Advertizing Firm, Inc. | Method and system of advertising |
US7729946B2 (en) * | 2003-01-24 | 2010-06-01 | Massive Incorporated | Online game advertising system |
WO2004104735A2 (en) * | 2003-05-12 | 2004-12-02 | Tekelec | Methods ans systems for generating, distributing, and screening commercial content |
FI116808B (en) | 2003-10-06 | 2006-02-28 | Leiki Oy | An arrangement and method for providing information to a user |
US20050131761A1 (en) * | 2003-12-16 | 2005-06-16 | Trika Sanjeev N. | Mobile digital coupons |
US7162226B2 (en) | 2004-04-13 | 2007-01-09 | Global Direct Management Corp. | Method and system of advertising in a mobile communication system |
US20060116926A1 (en) * | 2004-11-27 | 2006-06-01 | Chen Michael W | Method and system for internet publishing and advertising forums |
US20070116227A1 (en) * | 2005-10-11 | 2007-05-24 | Mikhael Vitenson | System and method for advertising to telephony end-users |
US20070100690A1 (en) * | 2005-11-02 | 2007-05-03 | Daniel Hopkins | System and method for providing targeted advertisements in user requested multimedia content |
US20070255620A1 (en) * | 2006-03-30 | 2007-11-01 | Obopay Inc. | Transacting Mobile Person-to-Person Payments |
-
2006
- 2006-06-30 US US11/428,001 patent/US9135626B2/en active Active
-
2007
- 2007-06-21 WO PCT/IB2007/001848 patent/WO2008004090A2/en active Application Filing
- 2007-06-21 BR BRPI0715603-0A patent/BRPI0715603A2/en not_active Application Discontinuation
- 2007-06-21 EP EP07734933A patent/EP2036018A4/en not_active Ceased
- 2007-06-21 RU RU2009101464/08A patent/RU2445704C2/en not_active IP Right Cessation
- 2007-06-21 MX MX2009000005A patent/MX2009000005A/en not_active Application Discontinuation
- 2007-06-21 CN CNA2007800284637A patent/CN101496054A/en active Pending
- 2007-06-21 CA CA002656195A patent/CA2656195A1/en not_active Abandoned
-
2015
- 2015-09-11 US US14/852,160 patent/US20160316027A1/en not_active Abandoned
-
2016
- 2016-08-09 US US15/232,491 patent/US20160350816A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020120684A1 (en) * | 2000-09-06 | 2002-08-29 | Jacob Christfort | Customizing content provided by a service |
US20050114900A1 (en) * | 2003-11-24 | 2005-05-26 | Patrick Ladd | Methods and apparatus for hardware registration in a network device |
US20060036750A1 (en) * | 2004-02-18 | 2006-02-16 | Patrick Ladd | Media extension apparatus and methods for use in an information network |
US20060253328A1 (en) * | 2005-05-06 | 2006-11-09 | Ujjal Kohli | Targeted advertising using verifiable information |
US20080090513A1 (en) * | 2006-01-06 | 2008-04-17 | Qualcomm Incorporated | Apparatus and methods of selective collection and selective presentation of content |
US9251520B2 (en) * | 2006-02-22 | 2016-02-02 | Google Inc. | Distributing mobile advertisements |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9959554B2 (en) * | 2011-03-01 | 2018-05-01 | Kip Raymond Meeboer | Provision of content through publicly accessible computer devices |
Also Published As
Publication number | Publication date |
---|---|
CA2656195A1 (en) | 2008-01-10 |
US9135626B2 (en) | 2015-09-15 |
US20080004952A1 (en) | 2008-01-03 |
BRPI0715603A2 (en) | 2013-01-22 |
RU2445704C2 (en) | 2012-03-20 |
EP2036018A2 (en) | 2009-03-18 |
EP2036018A4 (en) | 2011-04-06 |
WO2008004090A2 (en) | 2008-01-10 |
WO2008004090A8 (en) | 2008-05-15 |
CN101496054A (en) | 2009-07-29 |
US20160316027A1 (en) | 2016-10-27 |
MX2009000005A (en) | 2009-01-23 |
RU2009101464A (en) | 2010-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9135626B2 (en) | Advertising middleware | |
EP2119202B1 (en) | Method of enabling a user to interact with content received from a remote server | |
JP5307159B2 (en) | Critical Mass Billboard | |
US7792756B2 (en) | Subscription management in a media sharing service | |
US20060242267A1 (en) | System and method for consumer engagement and revenue optimization | |
US20100114714A1 (en) | Method and system for sharing revenue of an application platform | |
US20100049608A1 (en) | Third party content management system and method | |
US20090197582A1 (en) | Platform for mobile advertising and microtargeting of promotions | |
US20080275764A1 (en) | Content management system and method | |
US20080249833A1 (en) | Method and system for targeted advertising via mobile terminals | |
US7870020B2 (en) | System and method for interactive marketing using networked devices | |
KR20100009517A (en) | Apparatus and method for service of platform based mobile advertisement | |
US20120096431A1 (en) | Method and apparatus for providing advertising during application loading processes | |
US20100146079A1 (en) | Apparatus for transferring advertising content to a mobile telephone | |
US20080305781A1 (en) | Cognitive scheduler | |
EP2135207A1 (en) | Animated connection page | |
US9940644B1 (en) | Multimedia product placement marketplace | |
US20190244255A1 (en) | Methods for delivering content using an on-demand access platform | |
CN112686709A (en) | Advertisement playing method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NOKIA TECHNOLOGIES OY, FINLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NOKIA CORPORATION;REEL/FRAME:039396/0726 Effective date: 20150116 Owner name: NOKIA CORPORATION, FINLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KOLI, ARI;REEL/FRAME:039644/0797 Effective date: 20060818 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |