Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
COMMUNICATIONS MARKETING AND ADVERTISING SYSTEM
Document Type and Number:
WIPO Patent Application WO/2011/060303
Kind Code:
A2
Abstract:
A communications marketing and advertising system is described for delivering advertising content to subscribers of a telecommunications network. The system includes a marketplace component accessible by advertisers and ad space owners, which is used to create ad space for delivering content to subscribers of a telecommunications network. The marketplace allows advertisers to submit bids on the ad space and the ad space owners to approve or reject the bids. The system also includes a campaign manager that creates a campaign upon determining that the bid has been approved by the ad space owner. The campaign includes a set of messages containing ad content to be sent out to the subscribers. The subscriber profile module of the system obtains profile data associated with the subscribers of the telecommunications network and customizes the content of the messages according to the profile data. The ad engine delivers the messages to the recipients.

Inventors:
RAJASEKAR SHARATH (US)
O'DOHERTY PHELIM (US)
PULIJALA AMITHA (US)
STRAND TERJE (US)
JANSSON DANIEL (US)
Application Number:
PCT/US2010/056593
Publication Date:
May 19, 2011
Filing Date:
November 12, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ORACLE INT CORP (US)
RAJASEKAR SHARATH (US)
O'DOHERTY PHELIM (US)
PULIJALA AMITHA (US)
STRAND TERJE (US)
JANSSON DANIEL (US)
International Classes:
H04W4/14; H04L12/26; H04W28/02
Foreign References:
US20070191040A12007-08-16
US20040205135A12004-10-14
US20080255944A12008-10-16
US20080275753A12008-11-06
US20060206355A12006-09-14
Other References:
See references of EP 2499609A4
Attorney, Agent or Firm:
MEYER, Sheldon, R. et al. (650 California Street Fourteenth Floo, San Francisco California, US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A method for traffic handling of mobile communications advertisements, said method comprising:

measuring a quantity of message traffic being processed by a network node over a period of time;

detecting that the quantity of said message traffic being processed by the network node has decreased below a first predefined limit;

initiating the processing of a set of reserved bulk messages by said network node and continuing to process said reserved bulk messages while measuring the quantity of message traffic being processed by the network node;

detecting that the quantity of said message traffic being processed by said network node has exceeded a second predefined limit; and

halting the processing of the reserved bulk messages by said network node.

2. The method of claim 1, further comprising:

detecting that the quantity of said message traffic being processed by the node has again decreased below the first predefined limit; and

resuming the processing of the reserved bulk messages by said node.

3. The method of claim 1 , wherein the message traffic being processed by the node includes short messaging service (SMS), multimedia messaging service (MMS) traffic and WAP Push traffic wherein the reserved bulk messages include mobile advertisements.

4. The method of claim 3, wherein processing capacity of the node between the first predefined limit and the second predefined limit is a buffer for the reserved bulk messaging traffic containing mobile advertisements.

5. The method of claim 1, further comprising:

detecting that the quantity of traffic being processed by the node has exceeded a maximum budget for processing message traffic by said node; and

generating an error message by said node.

6. A system for integrating mobile communications advertising with business processes, said system comprising:

a mobile advertising content delivery platform including a marketplace component used to create at least one campaign by using an approval process, said campaign including a set of messages containing advertising content to be transmitted to mobile devices, said content mobile delivery platform further including an ad engine that transmits the messages of the campaign to the mobile devices; and

a workflow process system that accesses the mobile advertising content delivery platform over a set of web services exposed by the mobile advertising content delivery platform, wherein the workflow process system is used to create a process instance that automates at least a portion of the approval process.

7. The system of claim 6, further comprising:

a business activity monitor used to generate at least one real time graph, wherein the mobile advertising content delivery application generates an event upon delivering each of the messages in the campaign, wherein upon generating the event, the mobile advertising content delivery platform transmits a Java Messaging Service (JMS) message to the business activity monitor, wherein the data in the JMS message is used to generate the real time graph by the business activity monitor. 8. The system of claim 6, further comprising:

a business intelligence application used to analyze data generated by the mobile advertising content delivery platform, wherein the business intelligence application retrieves said data from the mobile advertising content delivery platform over Java Database Connectivity (JDBC) and stores said data in a data warehouse, and wherein the business intelligence application performs a set of queries and data analytics functions on said data stored in the warehouse.

9. The system of claim 6, further comprising:

a billing and revenue management (BRM) system that provides online and/or offline charging for mobile communications, wherein the mobile advertising content delivery platform generates a charging data record (CDR) upon sending at least one of said messages of the campaign, and wherein the mobile advertising content delivery platform further includes a CDR listener that detects the generated CDR and invokes a Diameter protocol function to access the BRM system.

10. The system of claim 6, wherein the marketplace component is accessible by a plurality of users, wherein the marketplace component is used to create an ad space for delivering content to subscribers of a telecommunications network, wherein the marketplace allows the users to submit a bid on the ad space and to approve said bid.

11. A system for providing marketing and advertising over communications, said system comprising:

a marketplace component accessible by a plurality of users, wherein the marketplace component is used to create an ad space for delivering content to subscribers of a telecommunications network, wherein the marketplace allows the users to submit a bid on the ad space and to approve said bid;

a campaign manager that creates a campaign upon determining that the bid has been approved by at least one user, wherein the campaign includes a set of messages to be sent out to the subscribers, the messages including said content;

a subscriber profile module that obtains profile data associated with at least one of said subscribers of the telecommunications network and customizes the content of said messages according to the profile data, said customized content being used in the campaign; and

an ad engine that delivers the messages in the campaign containing the customized content.

12. The system of claim 11, wherein the ad engine further receives an intercepted message transmitted through the telecommunications network and injects the customized set of electronic content into the intercepted SMS message before the SMS message is delivered to a recipient mobile device.

13. The system of claim 11, further comprising:

a statistics engine that monitors the progress information of the campaign, including a number of ads served by said messages, and ongoing cost or revenue, both during runtime and collectively over time.

14. The system of claim 11, further comprising:

a registration component that enables each of said plurality of users to register with the system, wherein each of the plurality of users is assigned to a role selected from a group comprising: a system owner, a network provider, a service provider, an ad space owner and an advertiser.

15. The system of claim 11, wherein said campaign includes one or more ads for inserting into the messages, wherein the ad campaign further includes a start time, an end time and a number of said messages.

Description:
COMMUNICATIONS MARKETING AND ADVERTISING SYSTEM

COPYRIGHT NOTICE

[0001] A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.

CLAIM OF PRIORITY

[0002] The present application claims the benefit of U.S. Provisional Patent Application No. 61/260,798, entitled "COMMUNICATIONS MARKETING AND ADVERTISING SYSTEM AND METHOD", by Sharath Rajasekar et al, filed on November 12, 2009, which is incorporated herein by reference in its entirety.

FIELD OF THE INVENTION

[0003] The current invention relates generally to systems for delivering marketing and advertisements over various forms of mobile or land-based communications, such as the short messaging service (SMS), the multimedia messaging service (MMS) and others.

BACKGROUND

[0004] Online integration with various communication devices is creating new realms for advertisers and other content providers. Marketing campaigns in the past have been mostly focused on television, radio, paper media and internet. Today's advertisers are seeking a more tailored and personalized approach. Rather than bombarding the masses with general interest ads, the advertisers are slowly becoming more focused on selected groups of people that have a common interest in a particular subject, product or service. This is proving to enable both higher returns on investment (ROI) on the part of the advertiser, as well as less annoyance and frustration on the part of the consumer.

[0005] One area potentially important for mining advertising revenues is in the industry rivalries between network operators (e.g. T-Mobile, Verizon Wireless, AT&T, etc.) on the one hand and internet service providers (ISPs), online ad vendors and various other content providers on the other. While ad server vendors, such as Google, have shown a very successful business model in online advertising, network operators have played a much less significant part in targeting ads. Yet network operators are uniquely and favorably positioned in the marketplace for obtaining various information and managing diverse relationships between a multitude of players. In addition to having access to the user's preferences and data, the operator also controls many aspects of the communication transmission in the network. For example, the network operator owns the mobile cellular network and its hardware elements (SMS-C, MMS-C, etc) as well as the information regarding its subscribers. As new services and products emerge, it is desirable for network operators to manage and monetize their positions in order to continue to be able to compete in the future.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006] FIGURE 1 is a high level illustration of the integration architecture for mobile advertisement campaign management, in accordance with various embodiments of the invention.

[0007] FIGURE 2A is an illustration of the organization role hierarchy used by the communications marketing system, in accordance with various embodiments of the invention. [0008] FIGURE 2B is an illustration of the relationships between the various organizational roles of the communications marketing system, in accordance with various embodiments of the invention.

[0009] FIGURE 3 is an illustration of a possible use of the communications marketing and advertising system, in accordance with various embodiments of the invention.

[0010] FIGURE 4 A is a flow chart diagram of creating a possible marketing campaign, in accordance with various embodiments of the invention.

[0011] FIGURE 4B is a flow chart diagram of creating a possible advertising campaign, in accordance with various embodiments of the invention.

[0012] FIGURE 5 is a flow chart diagram of a campaign lifecycle, in accordance with various embodiments of the invention.

[0013] FIGURE 6 is an illustration of the service provider interface, in accordance with various embodiments of the invention.

[0014] FIGURE 7 is an illustration of a graph for performing the traffic handling in accordance with various embodiments of the invention.

[0015] FIGURE 8 is an illustration of a network node, in accordance with various embodiments of the invention.

[0016] FIGURE 9 is a flow chart diagram of the process for handling traffic, in accordance with various embodiments of the invention.

[0017] FIGURE 10 is a logical flow chart diagram of the process for handling traffic, in accordance with various embodiments of the invention.

[0018] FIGURE 11 is an illustration of the mobile marketing platform being integrated with a set of business tools, in accordance with various embodiments of the invention.

[0019] FIGURE 12A is an illustration of the mobile marketing platform being integrated with a workflow based system, in accordance with various embodiments of the invention. [0020] FIGURE 12B is an illustration of the mobile marketing platform being integrated with business activity monitoring system, in accordance with various embodiments of the invention.

[0021] FIGURE 12C is an illustration of the mobile marketing platform being integrated with a billing and revenue management (BRM) system, in accordance with various embodiments of the invention.

DETAILED DESCRIPTION

[0022] In the following description, the invention will be illustrated by way of example and not by way of limitation in the figures of the accompanying drawings. References to various embodiments in this disclosure are not necessarily to the same embodiment, and such references mean at least one. While specific implementations are discussed, it is understood that this is done for illustrative purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without departing from the scope and spirit of the invention.

[0023] Furthermore, in certain instances, numerous specific details will be set forth to provide a thorough description of the invention. However, it will be apparent to those skilled in the art that the invention may be practiced without these specific details. In other instances, well-known features have not been described in as much detail so as not to obscure the invention.

[0024] In this disclosure, an integration architecture is described for providing mobile advertisement (ad) campaign management using a marketplace and service provider interface (SPI). The architecture can be viewed as a communications marketing and advertisement system for delivering ad content to subscribers of a mobile telecommunications network over telecom-based channels, such as Short Messaging Service (SMS), Multimedia Messaging Service (MMS) and Wireless Application Protocol (WAP) Push. In one embodiment, the system is deployed by a network operator (e.g. AT&T, Verizon Wireless, T-Mobile, etc.) at the gateway to its telecom network. The system provides a way for the operator to manage and monetize the relationships between advertisers, various web application owners, subscribers and other entities.

[0025] In various embodiments, the system provides a marketplace component that allows ad space owners (e.g. owners of applications that send/receive SMS messages) to login and create ad spaces and put them up on auction. Various advertisers can then use the marketplace to bid on these ad spaces. Once the bids are submitted by the advertisers, they can remain pending until approved by the ad space owner. In this manner, the marketplace simplifies the pairing of advertisers with appropriate contexts for the promotional messages they wish to send. By using the marketplace, applications can offer ad spaces and advertisers can search for openings and bid on them. Based on network availability, operators can also offer customizable bulk messaging slots, purchased by advertisers on a fixed-price basis.

[0026] In one embodiment, once a bid has been approved by the ad space owner, it becomes a campaign that is scheduled and managed by a campaign manager of the system. A campaign is a set of ads that will be sent to subscribers of the telecom network. In one embodiment, the campaign specifies a start time, an end time and a number of messages that will be sent. There can be two types of campaigns - marketing campaigns and advertising campaigns.

[0027] In an advertising campaign, applications offer space in the messages they send out to subscribers. Advertising campaigns utilize these ad spaces to deliver an advertiser's content to subscribers. The event that triggers the sending of the ad comes from outside of the system. The cost associated with the advertising campaigns is arrived at through the auction process in the marketplace. One type of advertising campaigns is an application-to-person (A2P) campaign. In this campaign, messages originate with an application. The marketing system intercepts the messages as they travel to the subscriber and injects an ad into the message. Another type of advertising campaign is person-to-application (P2A). In this type of campaign, a subscriber may send a message to an application, such as a reality television voting application. The subscriber's message is intercepted on the way to the application and a response message for the subscriber is sent, for example thanking them for voting. This response message contains the ad.

[0028] In a marketing type of campaign, the system can actually act as a source of the messages sent to subscribers based on the configuration set by the advertisers. In one embodiment, a basic pattern is created, called a marketing space, which predefines basic characteristics of the possible ads (e.g. the available start and end times, the channel and the connection configuration to be used. The per unit cost can be fixed by the pattern. Advertisers select the space they wish to use and add their content. The system then creates the ads in bulks and sends them to subscribers either based on subscriber lists uploaded by the advertisers themselves, or according to various criteria. For example, some advertisers may already have their own lists of subscribers who wish to receive information from them. In this type of marketing campaign, the advertiser can simply upload its list to the system along with the ad content. The marketing system then creates the messages and sends them to the addresses on the list. In criteria-based marketing campaigns, the system owner and the network provider make certain demographic categories available from the subscriber database by using the subscriber profile module of the system. The advertiser then chooses the demographic group(s) that it wishes to target. The list of addresses is generated by the system and the messages with the ad content are sent to those addresses. In one embodiment, the actual list of addresses is hidden from the advertiser and not released to them. [0029] Once the campaign has been scheduled and activated, an ad delivery component of the marketing system can carry out the transmission of all messages containing ad content to the subscribers. For example, an ad engine is responsible for the mechanics of matching ad content with the appropriate messaging context, whether it be ad spaces in intercepted messages from an application or bulk messages generated with the system itself. In criteria based campaigns, the engine is also responsible for ensuring that the subscribers who are targeted fit the correct demographic profile.

[0030] In various embodiments, the subscriber module allows the operator to collect aggregated statistical information about individual addresses used in a campaign for display in a graphical user interface (GUI) and to personalize ads by inserting information from a particular subscriber record. It also allows the operator to create address lists from the operator's own subscriber database based on selectable demographic information. Based on operator's desire, the system can also create groupings of subscribers to be offered to advertisers based on configurable demographic categories. The system can also generate lists of addresses based on these categories for bulk messaging.

[0031] In additional embodiments, traffic throttling can be provided for the bulk campaigns. As these bulk marketing campaigns are created, it can be advantageous for the network operator to schedule the bulk messaging traffic to be transmitted gradually and in an optimized manner, so as not to overload the network nodes which are also processing regular SMS/MMS/WAP Push traffic. For example, a network operator typically sets limits on the amount of message traffic that can be processed by its nodes in order to guarantee service. If these limits are exceeded, a node may throw an exception or generate some other error indicating that the node is overloaded and that the message could not be sent and may need to be re-tried again later. Because of these limits and the processing load on the operator's network, it is important to ensure that a bulk messaging campaign does not overwhelm the network nodes and interfere with the processing of regular SMS, MMS and WAP Push traffic being transmitted by the subscribers. This can be achieved by implementing a traffic handling and scheduling policy described herein.

[0032] In one embodiment, the method for traffic handling uses at least two limits for regulating the transmission of bulk messaging traffic. During processing, a network node can periodically or continuously measure the quantity of regular message traffic being processed by the network node. If the node detects that the quantity of regular message traffic being processed has decreased below the first predefined limit, it can initiate the processing of the reserved bulk messages. The node then continues to process and transmit the reserved bulk messages while still measuring the quantity of message traffic being processed by the network node. If, thereafter, the node detects that the quantity of overall message traffic being processed has exceeded a second predefined limit, the processing of bulk messages is halted. This halting can be implemented by either abruptly dropping any bulk messages from the node or by precluding the node from retrieving anymore bulk messages from the queue, until the quantity of regular traffic decreases below the first limit once again, at which point the node can resume processing the bulk message traffic.

[0033] In effect, a buffer is created for using excess network capacity to process and transmit the bulk messages within a system where priority is given to the regular network traffic between subscribers. In various embodiments, this form of traffic handling can enable the network operator (or its customers) to create a bulk advertising campaign and to schedule the campaign to be carried out over a period of time so as not to overwhelm the network.

[0034] In additional embodiments, the marketing and advertising system can be integrated with a set of business tools used by organizations in order to better manage the data generated as a result of providing the mobile content. In one embodiment, the platform is integrated with a workflow system, such as a BPEL-based system, business process management (BPM) system or some other workflow based system for managing the business processes of an organization. The workflow process system is used to access the mobile advertising content delivery platform over a set of web services that are exposed by the platform. In one embodiment, the workflow system can then be used to create process instances that automate campaign approval process or perform some other automation of the graphical user interface (GUI) based functions.

[0035] In various embodiments, the mobile marketing and advertising platform can also be integrated with business intelligence (BI) based systems. BI systems are typically used to analyze a set of business data by storing the data into a warehouse and running various queries on the data. In the context of the present disclosure, the data generated by the mobile advertising content delivery platform can be retrieved by the business intelligence application from the mobile advertising content delivery platform over Java Database Connectivity (JDBC) and stored a data warehouse. The business intelligence application then performs a set of queries and data analytics functions on the data stored in the warehouse.

[0036] In various embodiments, the mobile marketing and advertising platform can also be integrated with business activity monitoring (BAM) type systems. BAM systems typically enable building interactive, real-time dashboards and proactive alerts for monitoring business processes and services. BAM can give users the information they need to make decisions that involve real time changing data and take corrective action if the business environment changes. In one embodiment, the mobile marketing platform generates event data records (EDRs) upon sending each message containing the advertising content to the recipient devices of the telecom network. An EDR listener can be registered in the platform to listen for the EDR and transmit a Java Messaging Service (JMS) message to the business activity monitor, wherein the data in the JMS message is then used to generate the real time graphs by the business activity monitor. In various embodiments, the JMS message payload can include information about the campaign, the message that was sent and delivered, revenue information and the like.

[0037] In various embodiments, the mobile marketing and advertising platform can also be integrated with billing and revenue management (BRM) systems. BRM systems typically provide online and/or offline charging for various mobile communications. In one embodiment, the mobile advertising content delivery platform generates a charging data record (CDR) upon sending messages of the campaign. In addition, the platform can use a CDR listener that detects the generated CDR and invokes a Diameter protocol function to access the BRM system. In this manner, the platform can be set up to deliver charging data to any billing system that can support Diameter protocol.

[0038] FIGURE 1 is a high level illustration of the integration architecture for mobile advertisement campaign management, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0039] As illustrated, the communications marketing and advertising system 100 can be deployed by a network operator and can be exposed to external applications and portals 134 over Web Services 102. It can also be made accessible by way of browser 136 enabled devices over ADF interfaces, UIs and the like 104. Access to the system can be controlled based on assigned user roles and other security measures 106. In one embodiment, the marketing and advertising system resides at the gateway to the operator's network. [0040] The marketing and advertising system 100 includes a set of traffic interceptors 108 that can intercept message traffic between subscribers of the operator's network 130 and inject various advertisements therein, as well as perform a variety of other functions. For example, an SMS interceptor 110 may intercept an SMS message and transmit a response SMS with an advertisement embedded in the response. Similarly, an MMS interceptor 112 may intercept an MMS message and embed some content customized for the receiving subscriber according to their profile. The traffic interceptors can be applied as a chain in a particular sequence to the messages flowing through the network. Each interceptor may contain a set of filters to discern which messages it should be applied to, such that the interceptor is only executed for the messages containing a certain criteria.

[0041] The core of the marketing and advertising system can comprise a campaign manager or scheduler 114, a marketplace component 116, an on-boarding component 118, an ad engine 120, analytics and reporting 122 and a billing component 124. All of these components can enable the operator to allow advertisers to create marketing campaigns which will be carried out using the marketing system. These campaigns can be marketing campaigns based on bulk messages to lists of subscribers, or can be advertisement campaigns that embed ad content into messages or generate reply messages as responses to selected message traffic. In one embodiment, the advertiser creates a campaign based on available campaign spaces. It provides the ad content and, if desired, provides the subscriber lists for the marketing campaigns. The campaign is then carried out by transmitting the appropriate ads in accordance with various traffic handling techniques. In addition, the advertiser can monitor its campaigns and obtain access to the statistics for them.

[0042] The campaign scheduler 114 is responsible for scheduling the campaigns and managing their lifecycles, as will be described in further detail below with reference to FIGURE 5. For example, when a bid is approved by an ad space owner, the ad space becomes an active campaign that is scheduled to run by the campaign scheduler 114.

[0043] The marketplace component 116 allows the operator to pair advertisers with various applications that may be sending or receiving SMS/MMS messages. Using the marketplace of the marketing and advertising system, applications can offer ad spaces and advertisers can search for openings and bid on them. As an illustration, if a text-to-vote television show were aired that was expected to receive a particular number of SMS votes, a corresponding ad campaign could be created. The various advertisers can then submit bids for an advertising spot in the exchange of SMS messages that would be transmitted over the network. For example, an organization can submit an electronic bid offering a particular amount for each SMS message. The network operator can then award the campaign to the winning bid. In this manner, the electronic marketplace provides the network operator with means for creating and monetizing relationships between advertisers, service providers (e.g. text-to-vote application) and mobile subscribers. Based on network availability, operators can also offer customizable bulk messaging slots, purchased by advertisers on a fixed-price basis, with the entire transaction enabled through the browser-based interface 136.

[0044] The ad engine 120 can be responsible for the mechanics of matching ad content with the appropriate messaging context, whether it be ad spaces in intercepted messages from an application or bulk messages generated by the system itself. The ad engine performs its functions once the campaign has been initiated through the graphical user interface (GUI). In criteria-based campaigns, the ad engine is also responsible for ensuring that the subscribers who are targeted fit the correct demographic profile as derived from the information obtained in the subscriber profile data store 142.

[0045] The analytics, reporting and statistics engine 122 can enable monitoring the progress of a campaign, such as the number of ads served, the ongoing cost/revenue and the like both as it happens in real time and collectively over longer periods of time. This monitoring can be used by the advertisers, applications and operators in various ways. The system can display data pertinent to each user type in both detailed tables and dashboard-like charts and graphs. Reports can also be exported.

[0046] The on-boarding component 118 can allow the operator to integrate various external partners, customers, advertisers and other entities with the communications marketing system 100. The on-boarding module can take care of registering the new entity so that appropriate access can be provided to the system from its perspective. In one embodiment, the registration on-boarding component 118 can assign users into various roles, such as system owner, network provider, ad space owner, advertiser and others.

[0047] The billing integration module 124 can produce detailed charging data records (CDRs) for each ad served through the system. The CDRs can be converted into Diameter Rf offline charging within the system and then passed onto billing systems such as billing and revenue management (BRM) systems for rating and billing.

[0048] Ad delivery 126 can be performed by employing the short messaging service center (SMS-C), multimedia messaging service centers (MMS-C), Push Proxy Gateway (PPG), and other internal network components of the operator. In addition, the subscriber profile module 128 can be used to retrieve subscriber information and obtain a list of people to be targeted with ads based on demographic information or specific attributes about a specific person being looked up based on their phone number. All of this targeting of advertisements can be based on the data that the network operator has in the subscriber store 142 about each of its subscribers.

[0049] FIGURE 2A is an illustration of the organization role hierarchy used by the communications marketing system, in accordance with various embodiments of the invention. As illustrated, each organization or user of the system can be assigned a role. The roles are shown in a particular hierarchy, however, it is not necessary for all embodiments of the invention that this particular hierarchy or these particular roles be used. Other variations are possible and within the scope of the present disclosure.

[0050] The system owner 200 represents the communications marketing and advertising system itself. In one embodiment, the system owner is responsible for creating the network provider organization and users and is also responsible for the ad service provider organization and users. The system owner can act as a user in any organization in the system and perform those tasks.

[0051] The network provider 204 represents the network over which the message traffic flows. In one embodiment, the network provider makes decisions on baseline usage patterns, including capacity and messaging type. These decisions are arranged into sets known as connection configurations which are assigned to ad space owners.

[0052] The ad service provider 202, represents the point of contact between the marketing system and its external users, i.e. the ad space owners and the advertisers. In one embodiment, the ad service provider creates advertisers and ad space owner organizations and users and manages the relationship. The ad service provider can own the marketplace and can act as a user in any of its advertiser or ad space owner organizations and perform those tasks. It can also create special advertising and marketing campaigns acting as a proxy for an advertiser. The ad service provider creates marketing spaces as a special ad space owner and can also monitor advertising and marketing campaigns.

[0053] The ad space owner 206 represent the applications that are offering space in their messages (e.g. SMS or MMS messages). In one embodiment, the ad space owner creates ad spaces in which advertisers can place their ads. The ad space owner can then approve or reject potential advertisers for campaigns using its ad spaces. It can also be provided with the ability to monitor the usage of its spaces. [0054] The advertiser 208 represents the company or agency that wishes to promote its product or services. In one embodiment, the advertiser creates campaigns based on available campaign spaces. It provides ad content and if desired, provides subscriber lists for marketing campaigns. The advertiser can also monitor its campaigns.

[0055] FIGURE 2B is an illustration of the relationships between the various organizational roles of the communications marketing system, in accordance with various embodiments of the invention.

[0056] As illustrated, the network provider 204 can create and provide the connection configuration 218 used by the communications marketing system. The ad space owner 206 can create the campaign space 212 and can also approve the campaigns 210 that use that space. The ad service provider 202 can also approve the campaign space 212 and can also act as a proxy for the advertiser 208. The advertiser 208 can create the campaign 210 and ad content 214 to be inserted into the messages of that campaign 210. The advertiser can also create or upload its own subscriber lists 216 that will receive the ad content of the campaign.

[0057] FIGURE 3 is an illustration of a possible use of the communications marketing and advertising system, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0058] As illustrated, the ad space owner 304 can create an ad space 316 using the marketplace component 320 of the system 300. For example, a weather channel online application may have a number of subscribers to which it regularly sends MMS messages regarding weather information. This application may wish to provide a space for ads in their MMS messages. This ad space can be placed on auction using the marketplace 320. An advertiser 302 (e.g. any company wishing to place advertising materials into the weather MMS message) can then bid on that ad space 316. In one embodiment, the bid may specify the ad content, the number of messages, and the amount that the advertiser is willing to pay for the ad space. The bid then remains pending until the ad space owner 304 approves or rejects the bid.

[0059] Once the bid has been approved by the ad space owner, it becomes a campaign 318 that is scheduled and managed by the campaign manager 308 of the system. In one embodiment, the campaign manager activates the campaign at which point the ad engine 310 can process the content, intercept and/or generate the appropriate messages and deliver the content to the subscribers via the telecom network 312.

[0060] The campaign can also personalize the messages based on the profile data that the subscriber profile module 306 obtains from the data sources 314. For example, the ad content can be personalized according the subscriber's name, location, known preferences or other profile information. In addition, the subscriber profile module can allow the advertiser to specify various demographic criteria about the recipients of the ad content, such as their age range, known interests, location and the like. In one embodiment, the actual subscriber information and lists of subscribers is not provided to the advertisers, enabling the operator to retain control of the information while still providing the ability to deliver the content to the desired recipients.

[0061] FIGURE 4 A is a flow chart diagram of creating a possible marketing campaign, in accordance with various embodiments of the invention. Although this figure depicts functional steps in a particular sequence for purposes of illustration, the process is not necessarily limited to this particular order or steps. One skilled in the art will appreciate that the various steps portrayed in this figure can be changed, rearranged, performed in parallel or adapted in various ways. Furthermore, it is to be understood that certain steps or sequences of steps can be added to or omitted from this process, without departing from the spirit and scope of the invention.

[0062] As illustrated, an advertiser PepsiCo may create a marketing campaign by using the communications marketing system. It should be noted that PepsiCo is used only as an arbitrary example and that any company may fill the role of advertiser in the system. In step 1 , the advertiser logs into the user interface (UI) of the system and, in step 2, chooses an option to create a new marketing campaign. The advertiser can then choose a marketing space for the channel of interest (step 3) and enters the campaign details, including the description, start date and number of messages that will be sent (step 4). In step 5, the advertiser can also choose the demographic categories of the target subscribers that will receive the ad content. For example, the advertiser may select that all subscribers be between the ages of 20 and 45 and be residents of San Francisco, California. The subscriber profile module of the system can obtain this information from the subscriber data sources that are accessible to the network operator. The system can allow the advertiser to specify this criteria while still precluding the advertiser from viewing the actual subscriber data.

[0063] In step 6, the advertiser can choose the ad content to be delivered, such as textual, multimedia image or video and/or sound to be displayed to the subscriber upon receiving the message. In step 7, the advertiser creates the campaign at which point it waits for approval from the ad service provider. Once the campaign has been approved, the campaign manager can schedule the campaign to be carried out, as shown in step 8.

[0064] FIGURE 4B is a flow chart diagram of creating a possible advertising campaign, in accordance with various embodiments of the invention. Although this figure depicts functional steps in a particular sequence for purposes of illustration, the process is not necessarily limited to this particular order or steps. One skilled in the art will appreciate that the various steps portrayed in this figure can be changed, rearranged, performed in parallel or adapted in various ways. Furthermore, it is to be understood that certain steps or sequences of steps can be added to or omitted from this process, without departing from the spirit and scope of the invention.

[0065] As illustrated, an advertiser Coca Cola company can create an advertising campaign using the ad space provided by the weather channel application. In step 1, the advertiser logs into the UI and in step 2, they choose the option to create a new advertising campaign. In step 3, the advertiser enters the marketplace, where they can choose the ad space (step 4). In addition, the advertiser can choose the ad content (step 5) and create a bid for the ad space (step 5). In step 6, the advertiser can submit the bid, at which point it remains pending until approved or rejected by the ad space owner. Once the bid has been approved, the campaign can be scheduled by the campaign manager, as shown in step 7.

[0066] FIGURE 5 is a flow chart diagram of a campaign lifecycle, in accordance with various embodiments of the invention. Although this figure depicts functional steps in a particular sequence for purposes of illustration, the process is not necessarily limited to this particular order or steps. One skilled in the art will appreciate that the various steps portrayed in this figure can be changed, rearranged, performed in parallel or adapted in various ways. Furthermore, it is to be understood that certain steps or sequences of steps can be added to or omitted from this process, without departing from the spirit and scope of the invention.

[0067] As shown in step 500, a campaign can be created by specifying the ad content, number of messages, start time and other information. Once created, the campaign waits until it is approved (step 502) either by the ad space owner or by the ad service provider, depending on the type of campaign. If the campaign is rejected 512, the lifecycle ends and the campaign never enters an active state 516. If the campaign is approved, it is scheduled (step 504) by the campaign scheduler and is running 506. Any time after scheduling the campaign, the campaign can be stopped (508) and deleted (514) if desired. Once the campaign is finished (510) it is complete and the data can be deleted.

[0068] FIGURE 6 is an illustration of the service provider interface, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0069] As illustrated, the system can be accessed by way of an application programming interface (API) 600 to obtain the statistics 610, personalization 612 and list generation 614 information. For example, the statistics information can be used to measure the relative success of an advertising campaign. Similarly, the personalization aspect of the system can use profile information to tailor the message for each recipient with personal information. The API can also provide controlled access to create subscriber lists based on demographic information obtained using the profile data. In various embodiments, the API can also include a configuration manager 616 that can use XML mapping 626 and categories 628 to set various configuration information.

[0070] As further illustrated, the system can provide a service provider interface (SPI) 602 and its implementation 604 that plugs into the various subscriber data sources 606 over LDAP 622, as well as a local database 608. In on embodiment, the SPI 604 can include a query manager 618 that can provide useful queries for the statistics and personalization features of the API. In addition, the SPI can include a subscriber list manager 620 that can provide functions to retrieve information, generate lists, obtain size of the lists and the like. In one embodiment, the subscriber list manager can utilize a cache 624 in the SPI implementation for performance reasons.

[0071] Traffic Throttling

[0072] FIGURE 7 is an illustration of a graph for performing the traffic handling in accordance with various embodiments of the invention. It is noted that this graph is provided purely for purposes of illustration and that the particular traffic patterns shown herein are in no way intended to be limiting the disclosure.

[0073] As previously described, a bulk advertisement campaign can be created and scheduled using the marketing system. Once the bulk campaign is set to active, the network nodes of the operator can begin transmitting the bulk messages to the designated recipients. The traffic handling feature enables the network nodes to gracefully intersperse the bulk messages among the regular message traffic that they are already processing, without interfering with the regular traffic and without overwhelming the network.

[0074] As illustrated in the graph, the network nodes can continuously monitor the quantity of regular traffic 706 that they are processing at any given time. This monitoring can be performed in time intervals (e.g. message per second, etc). Each node has a maximum limit for processing messages that it is able to perform. If at any time, the maximum budget is exceeded, a policy exception 700 can be thrown, or some other error message generated by the node. Thus at any given point in time, the difference between the amount of traffic actually being processed by the node and its maximum limit is referred to as the current budget 710 or total budget. [0075] In one embodiment, a budget or buffer for processing the bulk messages 708 can be created at the node level by setting two limits. The first limit can be used by the node to initiate the transmission of bulk traffic. This first limit is illustrated as the middle solid line in the figure. When the amount of overall traffic being processed by the node falls below this first limit, the node begins to transmit bulk messages from a queue. At the same time, the node also continues to monitor the amount of traffic being processed. This processing of bulk traffic continues until a second limit is reached, which is illustrated by the broken line above the solid middle line.

[0076] When the quantity of traffic being processed exceeds the second limit, the node begins to immediately cease the processing of bulk traffic 702 so as not to interfere with the node's ability to process its regular traffic. This can be implemented by first finishing processing the current message and not retrieving any more bulk messages from the queue or by immediately halting the processing of the current message. Effectively, the node capacity between the second limit and the absolute maximum limit is the budget reserved for its regular (non-bulk) traffic 704.

[0077] As further illustrated in the figure, the node can continue monitoring the amount of traffic being processed, so that when traffic once again falls below the first limit, the node can once again begin processing the bulk traffic. In this manner, a more dynamic distribution of bulk processing is achieved, where the nodes make certain to gradually distribute the bulk traffic in an optimal fashion, without overwhelming network traffic.

[0078] FIGURE 8 is an illustration of a network node, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0079] As illustrated herein, the traffic node 800 can include a bulk client 802 that is initiated by a timer to obtain the order from a campaign database 810. The bulk service 804 can carry out the delivery of the bulk messages. In addition, the personalization engine 806 can use subscriber profile data to customize the bulk messages for each subscriber. In one embodiment, the bulk messages can be delivered to the network resources, such as an SMS-C, MMS-C, or PAP Gateway 812 using a messaging plug-in 808 that can communicate in the appropriate protocol with the network resource.

[0080] FIGURE 9 is a flow chart diagram of the process for handling traffic, in accordance with various embodiments of the invention. Although this figure depicts functional steps in a particular sequence for purposes of illustration, the process is not necessarily limited to this particular order or steps. One skilled in the art will appreciate that the various steps portrayed in this figure can be changed, rearranged, performed in parallel or adapted in various ways. Furthermore, it is to be understood that certain steps or sequences of steps can be added to or omitted from this process, without departing from the spirit and scope of the invention.

[0081] As shown in step 900, the node can continue to measure a quantity of message traffic being processed by a network node. The measurements can be taken periodically over a particular defined period of time, such as messages per second or the like. In step 902, the node detects that the quantity of message traffic being processed by the network node has decreased below a first predefined limit. In one embodiment, the first limit can be made configurable. In step 904, when the node determines that the message traffic has decreased to a low enough level, it can initiate the processing of a set of reserved bulk messages. The node can then continue to process the bulk traffic while measuring the overall quantity of messages being processed by the network node. In step 906, the node detects that the quantity of message traffic being processed by said network node has exceeded a second predefined limit. In one embodiment, the second limit is also configurable by a user. When the overall traffic exceeds the second limit, the node can halt the processing of the reserved bulk messages (step 908). In various embodiments, the first limit can be set lower than the second limit. In alternative embodiments, the limits can be set to be the same.

[0082] FIGURE 10 is a logical flow chart diagram of the process for handling traffic, in accordance with various embodiments of the invention. Although this figure depicts functional steps in a particular sequence for purposes of illustration, the process is not necessarily limited to this particular order or steps. One skilled in the art will appreciate that the various steps portrayed in this figure can be changed, rearranged, performed in parallel or adapted in various ways. Furthermore, it is to be understood that certain steps or sequences of steps can be added to or omitted from this process, without departing from the spirit and scope of the invention.

[0083] As shown in step 1000, the process can begin by scheduling an ad campaign using a campaign scheduler of the marketing communications system, as previously described. In step 1002, once the campaign has been scheduled, each network node can continue monitoring the amount of messages that it is processing. In step 1004, the node detects that the number of messages has fallen below a first threshold limit. In step 1006 then, the node begins (or resumes) processing the bulk messages from a queue. If some time later, the node detects that the number of messages exceeds a second threshold limit (step 1008), it can stop the processing of bulk messages from the queue, as shown in step 1010. This process can continue until the end of the ad campaign has been reached (e.g. until all bulk messages have been delivered or the campaign has been canceled). [0084] Integration with Business Process and Workflow Systems

[0085] FIGURE 11 is an illustration of the mobile marketing platform being integrated with a set of business tools, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0086] As previously described, the mobile marketing and advertising platform 1134 can be comprised of a marketplace component 1122, an ad engine 1124, a campaign manager 1126, internal analytics and reporting modules 1128, ad delivery components 1130 and a subscriber profile module 1132. In addition, however, the mobile marketing platform 1134 can be deployed in an enterprise environment, where users 1100 have access a wide variety of business tools, such as customer relations management (CRM) applications 1102, service oriented architecture (SOA) and BPEL based systems 1106, billing 1110 and BRM based systems 1112, real-time reporting tools 1114 such as business activity monitors (BAM) 1116, business intelligence (BI) tools 1118, such as a BI server 1120 and warehouse having access to the billing data 1146 and CRM data 1148. Each of these business tools can be integrated with the mobile marketing and advertising platform, as will be described in the following figures and their associated text.

[0087] In addition, the mobile marketing and advertising platform can integrate with a service access gateway 1138 deployed as a gatekeeper to the telecom network 1142. Service access gateway can provide the policy enforcement 1136, as well as service exposure functions 1140 in order to allow various online and browser based applications 1108 to provide services to the subscriber devices of the mobile network 1142.

[0088] FIGURE 12A is an illustration of the mobile marketing platform being integrated with a workfiow based system, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0089] As illustrated, the mobile advertising content delivery platform 1200 can expose a set of web services 1212 that can be accessed by the BPEL based system 1216 or another workflow system. The BPEL system and its various processes 1218 can then use these web services to construct campaigns 1202 that will deliver the SMS/MMS messages 1214 containing the ad content. The platform can also provide a web services description language (WSDL) document for describing how to access the web services.

[0090] In one embodiment, the mobile advertising platform exposes four basic web services. The connection configuration manager 1204 web service can support operations to create bulk messaging connection configurations for marketing campaigns, as well as create the connection configuration for advertising campaigns. It can also include functions to delete the connection configuration, or list information regarding the configuration.

[0091] In one embodiment, the campaign space manager web service 306 includes a set of functions for managing campaign spaces, such as createBulkMsgMarketingSpace,

createMsgServiceAdSpace, deleteCampaignSpace, listBulkMsgMarketingSpace- BySpaceOwner, listMsgServiceAdSpaceByAdSpaceOwner. Additionally, this web service can include a set of functions for searching for connection configurations, such as

listBulkMsgCcByAdSpaceOwner, listMsgServiceCcByAdSpaceOwner. For campaign evaluation, the campaign space manager 306 can also include functions such as

approveCampaign, rejectCampaign, listBulkMsgMarketingCampaigns,

listMsgServiceAdCampaigns, and the like.

[0092] In one embodiment, the campaign space approval manager web service 308 can include operations such as approveCampaignSpace or rejectCampaign.

[0093] In one embodiment, the campaign manager web service 310 can include functions for managing ad content, including create SmsAdContent, createMmsAdContent,

createWapPushAdContent, deleteAdContent, listSmsAdContents, listMmsAdContents, listWapPushAdContents. In addition, the campaign manager can provide functions for managing subscriber lists and categories, such as createSubscriberAddressList,

listSubscriberAddressList, deleteSubscriberAddressList, and listCategories. Additionally, this web service 310 can include functions for campaign management, such as

createMsgServiceAdCampaign, createBulkMsgMarketingCampaignWithAddressList, createBulkMsgMarketingCampaignWith-SelectionCriteria, stopCampaign, deleteCampaign, listBulkMsgMarketingCampaignsByAdv, listMsgServiceAdCampaignsByAdv,

getBulkMsgMarketingCampaign, and the like. The term "Adv" in these functions represents the advertiser role assigned to a particular user. Finally, for searching for campaign spaces, the web service 1210 can include functions such as listBulkMsgMarketmgSpacesByAdv and listMsgServiceAdSpaceByAdv.

[0094] By employing all of these web services exposed by the platform, the BPEL system can use various workflow processes to automate any portion or all of the campaign management, approval or other functions that can otherwise be performed by a user using a GUI. For example, an organization may already have its own internal business processes defined for approving a campaign and the integration with BPEL systems allows these organizations to easily use those business processes with the mobile advertising platform 1200.

[0095] FIGURE 12B is an illustration of the mobile marketing platform being integrated with business activity monitoring system, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[0096] As illustrated, the mobile marketing and advertising platform 1200 servers continuously record basic information about their status through an internal event mechanism. An event is fired at designated times as the server functions, for example, whenever a request crosses module boundaries, specific methods are called, or exceptions are thrown. This event information is sent to the EDR service, where an extensible markup language (XML) based filter processes the events and separates them into types. The filters can also be used to transform the data in the original event, including adding other useful information.

[0097] In one embodiment, there are three filters that produce three distinct types of data: event data records, charging data records, and alarms. When the information has been processed by the filters, it is delivered to type-specific listeners. To communicate with the business activity monitor (BAM) 1242 the mobile marketing platform 1200 uses this mechanism to publish event data records (EDRs) to an EDR topic 1252 every time an event occurs within the system. For example, each time that a message containing ad content is delivered to a mobile device, the system 1200 can publish an EDR to the topic 1252.

[0098] The business activity monitor (BAM) adapter can be provided on the platform to enable it to integrate with BAM 1242. This adapter can include an EDR listener 1248 that listens for the various EDRs on the EDR topic 1252. The BAM adapter can also include an EDR processor 1246 to process the EDRs, as well as a JMS Publisher 1244 that will send a JMS message to the registered BAM enterprise messaging source (EMS) 1256 of the business activity monitor 1242. In one embodiment, the JMS message contents include any or all of the following information:

1. Timestamp - time of the event, as recorded in the mobile advertising platform;

2. Campaign ID - the internal identifier for the campaign within the system;

3. Campaign Name - name given to the campaign when it was initiated; 4. Advertiser ID - the internal identifier for the advertiser organization that initiated the campaign;

5. Service Provider ID - the internal ID for the Ad Service Provider organization that initiated the campaign;

6. Network Provider ID - the internal ID for the Network Provider organization that is responsible for the connection configuration used by the campaign;

7. Price - the price paid for the message in appropriate currency;

8. Event type - an enumeration, such as "Ad Served" or "Ad Impression". An "ad served" indicates that the message has been successfully delivered to the underlying network. An "Ad Impression" indicates that a delivery notification concerning the message has been received from the underlying network;

9. Category List - the types used to define demographic categories used to send bulk messages. The types depend on configuration, but can include such things as age, gender and the like;

10. Subscriber List the address of the subscriber who received the message;

11. Delivery Notification Enabled - a Boolean value that indicates if delivery notification is enabled for the campaign.

[0099] The business activity monitor 1242 can then use the information in the JMS message to create the appropriate data objects 1260 and provide the data to the report server 1262 in order to generate the real time graphs 1264 and charts for the user. In various embodiments, BAM 1242 can have access to the database of the mobile marketing and advertising platform, as well as be connected to other external data sources 1258.

[00100] FIGURE 12C is an illustration of the mobile marketing platform being integrated with a billing and revenue management (BRM) system, in accordance with various embodiments of the invention. Although this diagram depicts components as logically separate, such depiction is merely for illustrative purposes. It will be apparent to those skilled in the art that the components portrayed in this figure can be combined or divided into separate software, firmware and/or hardware. Furthermore, it will also be apparent to those skilled in the art that such components, regardless of how they are combined or divided, can execute on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication means.

[00101] As illustrated, mobile marketing platform 1200 can be positioned between the telecom network 1276 and the various applications 1270 that wish to access the network or provide some service thereon. The platform can utilize network plugins 1272 to allow the application to access the resources of the network, such as the SMS-C and MMS-C. [00102] In one embodiment, the mobile marketing platform can be set up to deliver charging data to a billing and revenue management (BRM) system 1278 over the Diameter (Rf) protocol. A charging data record (CDR) listener 1274 can be deployed to listen to CDRs generated by the network plugin and to generate appropriate Diameter (Rf) messages to the BRM system. In one embodiment, the CDR listener is a cluster singleton service, so it executes only on one server at any given time and is transferred to another server in case of server failure. The management part can be distributed to all servers in the cluster and thus can be managed from any server in the cluster. In alternative embodiments, the CDR listener need not be a singleton service and other implementations are possible.

[00103] Each Diameter (Rf) message generated by the platform can contain a set of attribute value pairs (AVPs) to specify charging information to the BRM system. The table below specifies one possible set of AVPs that can be utilized by the CDR listener. AVP

A VP Code T e S ecification Descri tion

Application and is defined with the value 3.

User-Name 1 UTF8String RFC 3588 The Advertiser External ID, assigned when the organization was created

Event- 55 Time RFC 3588 Time the event happened, in Timestamp seconds since January 1, 1900

00:00 UTC

Service- 704 OctetString 3 GPP A value to indicate the service, Indication 29.329 such as "ADVERT SERVICE"

Event-Type 823 Grouped 3 GPP Contains information about the

29.299 type of event for which the accounting request is generated

Event-Type- 825 UTF8String 3 GPP Specifies the Ad-event type. Event 29.299 For example, AD SERVED

Participants- 887 UTF8Strng 3 GPP Lists the external ID of the Involved 29.299 related Ad Space Owner, Ad

Service Provider and Network Provider.

CC-Money 413 Grouped RFC 4006 Specifies the monetary amount in the given currency, used for storing the price of the ad message.

CC-Money-Unit- 445 Grouped RFC 4006 Specifies the units as decimal Value value

Unit- 447 Integer64 RFC 4006 Contains the significant digits

Value.Value- of the number

Digits

Unit- 429 Integer32 RFC 4006 Contains the exponent value to Value. Exponent be applied for the Value-Digit

AVP within the Unit- Value AVP

CC- 425 Unsigned32 RFC 4006 Specifies the currency, given as Money . Currency- the numeric values defined in Cod the ISO 4217 standard

[00104] Throughout the various contexts described in this disclosure, the embodiments of the invention further encompass computer apparatus, computing systems and machine- readable media configured to carry out the foregoing systems and methods. In addition to an embodiment consisting of specifically designed integrated circuits or other electronics, the present invention may be conveniently implemented using a conventional general purpose or a specialized digital computer or microprocessor programmed according to the teachings of the present disclosure, as will be apparent to those skilled in the computer art. [00105] Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art. The invention may also be implemented by the preparation of application specific integrated circuits or by interconnecting an appropriate network of conventional component circuits, as will be readily apparent to those skilled in the art.

[00106] The various embodiments include a computer program product which is a storage medium (media) having instructions stored thereon/in which can be used to program a general purpose or specialized computing processor(s)/device(s) to perform any of the features presented herein. The storage medium can include, but is not limited to, one or more of the following: any type of physical media including floppy disks, optical discs, DVDs, CD- ROMs, microdrives, magneto-optical disks, holographic storage, ROMs, RAMs, PRAMS, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic or optical cards, nanosystems (including molecular memory ICs); paper or paper-based media; and any type of media or device suitable for storing instructions and/or information. The computer program product can be transmitted in whole or in parts and over one or more public and/or private networks wherein the transmission includes instructions which can be used by one or more processors to perform any of the features presented herein. In various embodiments, the transmission may include a plurality of separate transmissions.

[00107] The foregoing description of the preferred embodiments of the present invention has been provided for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations can be apparent to the practitioner skilled in the art. Embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the relevant art to understand the invention. It is intended that the scope of the invention be defined by the following claims and their equivalents.