US20160269567A1 - Portal for toll free media subscription campaigns - Google Patents
Portal for toll free media subscription campaigns Download PDFInfo
- Publication number
- US20160269567A1 US20160269567A1 US14/644,267 US201514644267A US2016269567A1 US 20160269567 A1 US20160269567 A1 US 20160269567A1 US 201514644267 A US201514644267 A US 201514644267A US 2016269567 A1 US2016269567 A1 US 2016269567A1
- Authority
- US
- United States
- Prior art keywords
- user
- data
- network
- campaigns
- subscription data
- 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.)
- Granted
Links
- 238000013475 authorization Methods 0.000 claims abstract description 66
- 238000000034 method Methods 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 7
- 230000001413 cellular effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 6
- 238000012797 qualification Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M15/00—Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
- H04M15/70—Administration or customization aspects; Counter-checking correct charges
- H04M15/72—Administration or customization aspects; Counter-checking correct charges by the user
-
- 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/0207—Discounts or incentives, e.g. coupons or rebates
-
- 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/04—Billing or invoicing
-
- 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/06—Buying, selling or leasing transactions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M15/00—Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
- H04M15/83—Notification aspects
- H04M15/85—Notification aspects characterised by the type of condition triggering a notification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M15/00—Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
- H04M15/08—Metering calls to called party, i.e. B-party charged for the communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M15/00—Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
- H04M15/80—Rating or billing plans; Tariff determination aspects
- H04M15/8083—Rating or billing plans; Tariff determination aspects involving reduced rates or discounts, e.g. time-of-day reductions or volume discounts
Definitions
- Wireless data plans allow mobile subscribers to access content and/or applications (“apps”) through mobile devices.
- Data usage for end users is typically charged to an account associated with an end user.
- the end user's account may have a periodic limit on total data usage, for example on wireless networks (e.g., a 2 Gigabytes per month data plan).
- End users on networks that have periodic limits for data usage often arrange their data usage behavior to avoid overages associated with periodic limits on data usage. For example, an end user may curtail online shopping, or other activity when they are approaching or have exceeded the periodic limit.
- FIG. 1 illustrates an exemplary network environment in which subscriptions to certain data campaigns, that include the delivery of media content at free or reduced cost network service provider access charges, and which are published at a campaign portal for possible access by end users of the network service provider;
- FIG. 2 is a diagram that depicts exemplary components of a device that may correspond to the user device, campaign portal server, content providers, campaign portal database, user profile database, billing system and/or billing database of FIG. 1 ;
- FIG. 3 is a diagram that depicts an exemplary data structure associated with the user profile database of FIG. 1 ;
- FIG. 4 is a diagram that depicts an exemplary data structure associated with the campaign portal database of FIG. 1 ;
- FIG. 5 is a diagram illustrating functional components of a content provider of FIG. 1 ;
- FIG. 6 is a flow diagram of an exemplary process for creating a toll free subscription campaign and publishing the campaign via the campaign portal server of FIG. 1 ;
- FIG. 7 is a messaging diagram associated with the exemplary process of FIG. 6 ;
- FIGS. 8A-8C are flow diagrams of an exemplary process for an end user to register with the campaign portal server of FIG. 1 and for attempting to subscribe to subscription data campaigns published by the campaign portal server;
- FIGS. 9A and 9B are messaging diagrams associated with the exemplary process of FIGS. 8A-8C ;
- FIGS. 10A and 10B are flow diagrams of an exemplary process for an end user to select and receive media content associated with a subscription data campaign to which the end user has previously successfully subscribed;
- FIG. 11 is a messaging diagram associated with the exemplary process of FIGS. 10A and 10B .
- TFD service allows mobile subscribers to access content without impacting their monthly wireless data plan for at least an allocated quota of free network usage (e.g., a limited quota of data usage that is not charged to the mobile subscriber's personal account, but is charged to the network service provider and/or the content provider that delivers the content).
- TFD service enables mobile subscribers to reduce the data consumption billed to their mobile accounts when receiving media content from content providers, and the content providers can increase their digital presence and potentially increase their product sales by offering their media content via TFD service.
- TFD service therefore, offers a data consumption model that can benefit consumers, sponsoring companies, and network service providers.
- Exemplary embodiments described herein use a TFD service, as applied to media content publishing and delivery, in which multiple different content providers create subscription data campaigns and submit them for publication via a campaign portal.
- the campaign portal serves as a centralized access point for device end users, who receive network connectivity via a network service provider, to access and subscribe to the media content that is part of the subscription data campaigns.
- Each of the subscription data campaigns includes media content being offered by a content provider, a price associated with delivery of the media content from the content provider via the network service provider's network, and a toll free data usage quota associated with network usage of the network service provider's network.
- the user may receive delivery of the media content from the content provider to the user's device over the network, with the network usage associated with the delivery of the media content over the network being free, or with reduced usage charges being applied, due to the toll free data usage quota allocated to the user upon subscription.
- FIG. 1 illustrates an exemplary network environment 100 in which subscriptions to certain data campaigns, that include the delivery of media content (e.g., video content) at free or reduced cost network service provider access charges, are published at a campaign portal for access by end users of the network service provider.
- media content e.g., video content
- network environment 100 may include a user device 105 , a campaign portal server 110 , a campaign portal database (DB) 115 , one or more content providers 120 - 1 through 120 - n (generically and individually referred to herein as “content provider 120 ” and collectively referred to herein as “content providers 120 ”), one or more user profile DBs 125 - 1 through 125 - n (generically and individually referred to herein as “user profile DB 125 ” and collectively referred to herein as “user profile DBs 125 ”), a network service provider billing system 130 , a billing DB 135 and a network 140 .
- DB campaign portal database
- User device 105 may include any type of electronic device that may connect with network 140 via a wired or wireless connection, and which may receive media (e.g., audio and/or video media) via, for example, network 140 , and play the media for listening and/or viewing by end user 145 .
- User device 105 may include, for example, a cellular telephone (e.g., a smart phone), a personal digital assistant (PDA), a vehicular communication system, or a computer (e.g., tablet, desktop, palmtop, laptop, or wearable computer).
- PDA personal digital assistant
- a vehicular communication system e.g., tablet, desktop, palmtop, laptop, or wearable computer.
- an end user 145 may be associated with user device 105 .
- End user 145 may be a subscriber to a network service provider, such as a cellular network service provider, that may own and/or use user device 105 .
- a campaign portal client app 150 may be installed at user device 105 and executed to permit end user 145 to access subscription data campaigns published by campaign portal server 110 and to request a subscription to one or more particular subscription data campaigns, as described in further detail below.
- Campaign portal client app 150 may additionally permit end user 145 to select subscription data campaigns successfully subscribed to, and to receive and playback delivered media corresponding to the selected subscription data campaigns.
- Campaign portal server 110 may include one or more network devices that receive and store information related to toll free subscription data campaigns from content providers 120 - 1 through 120 - n in campaign portal DB 115 .
- Campaign portal server 110 also receives campaign subscription requests from end user 145 (and other end users not shown in FIG. 1 ), passes the subscription request to a respective content provider 120 associated with the campaign, receives a return campaign qualification message from content provider 120 , and generates an authorization token for sending to user device 105 associated with the requesting end user 145 .
- the authorization token may include, for example, data identifying end user 145 , data identifying the requested campaign, and a quota of data allocated to end user 145 for receiving media associated with the requested campaign.
- Campaign portal server 110 may encrypt the authorization token and send it to user device 105 of end user 145 , and to the content provider 120 that qualified end user 145 's subscription.
- Campaign portal DB 115 may include a network device that stores a data structure having data fields that further store campaign information, provided by content providers 120 - 1 through 120 - n , and also stores end user campaign subscription information.
- An exemplary implementation of the data stored in campaign portal DB 115 is described in further detail with respect to FIG. 4 .
- Each of content providers 120 - 1 through 120 - n may include one or more network devices that stores media content, generates subscription data campaigns, publishes those subscription data campaigns to network service provider end users via campaign portal server 110 , and provides media content related to subscription campaigns to user device 105 of end user 145 .
- content provider 120 - 1 may send media content associated with a subscription campaign to user device 105 after end user 145 has successfully subscribed to the subscription data campaign via campaign portal server 110 .
- the media content may include audio and/or video media content, such as, for example, movies or television programming.
- the media content may include streaming media.
- User profile DB 125 may include a network device that stores a data structure having data fields that further store end user information, including end user identifiers, end user profiles, and authorization tokens generated by campaign portal server 110 for successfully subscribed subscription data campaigns.
- An exemplary implementation of the data stored in user profile DB 125 is described in further detail with respect to FIG. 3 .
- Network 140 may include one or more networks including, for example, a wireless public land mobile network (PLMN) (e.g., a Code Division Multiple Access (CDMA) 2000 PLMN, a Global System for Mobile Communications (GSM) PLMN, a Long Term Evolution (LTE) PLMN and/or other types of PLMNs), a telecommunications network (e.g., Public Switched Telephone Networks (PSTNs)), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), an intranet, the Internet, or a cable network (e.g., an optical cable network).
- PLMN wireless public land mobile network
- CDMA Code Division Multiple Access
- GSM Global System for Mobile Communications
- LTE Long Term Evolution
- PSTNs Public Switched Telephone Networks
- LAN local area network
- WAN wide area network
- MAN metropolitan area network
- intranet the Internet
- Internet or a cable network (e.g., an optical cable network).
- Each PLMN may be operated by an entity referred to herein as a “network service provider” that owns, maintains, and/or operates the infrastructure associated with that PLMN.
- Network 140 may also include a content delivery network (CDN) used to deliver media content from content providers 120 - 1 through 120 - n to user device 105 via the PLMNs.
- CDN content delivery network
- CDNs Content delivery networks
- CDNs include interconnected systems of servers that can rapidly and cost effectively deliver a variety of digital content to numerous end points, such as web browsers, mobile devices, set-top boxes and gaming consoles, via, for example, the Internet.
- CDNs include large distributed systems of servers located in multiple data centers in the Internet.
- CDN nodes are typically deployed in multiple different locations, often across multiple different backbones. The number of nodes and servers of a CDN varies, depending on the CDN's architecture.
- CDNs serve various forms of content, including text, graphics, Uniform Resource Locators (URLs), scripts, media files, software, documents, applications, social networks, and streaming media.
- URLs Uniform Resource Locators
- CDNs may, for example, use Hypertext Transfer Protocol (HTTP) Live Streaming (HLS).
- HLS is a HTTP-based media streaming communications protocol that involves breaking the media stream into a sequence of file downloads. Each file may be downloaded as one portion of a transport stream. Each downloaded file may be played in sequence to present a continuous media stream.
- Other media formats, and media delivery protocols, may also be used when delivering media from content providers 120 - 1 through 120 - n to user device 105 .
- Network service provider billing system 130 includes a network device that maintains billing information associated with end user 145 's use of the network operated by the network service provider (e.g., the PLMN).
- Billing system 130 may keep track of end user 145 's usage allocation (e.g., megabytes (MB) or gigabytes (GB) of data, number of minutes, etc.) based on end user 145 's paid network service usage plan.
- Billing system 130 may store end user 145 's network service usage information in billing DB 135 .
- Billing DB 135 may store data similar to that described below with respect to campaign portal DB 115 of FIG. 4 .
- billing DB 135 and campaign portal DB 115 may include a same database connected so as to be accessible to both campaign portal server 110 and billing system 130 .
- network environment 100 may include additional, fewer and/or different components that may be configured in a different arrangement than those depicted in FIG. 1 .
- network environment 100 may include multiple different user devices 105 , and multiple different respective end users 145 .
- FIG. 2 is a diagram that depicts exemplary components of a device 200 .
- User device 105 , campaign portal server 110 , campaign portal DB 115 , content providers 120 - 1 through 120 - n , user profile DB 125 - 1 through 125 - n , network service provider billing system 130 and billing DB 135 may each be configured identical to, or similar to, device 200 .
- Device 200 may include a bus 210 , a processing unit 220 , a main memory 230 , a read only memory (ROM) 240 , a storage device 250 , an input device 260 , an output device 270 , and a communication interface 280 .
- Bus 210 may include a path that permits communication among the components of device 200 .
- Processing unit 220 may include one or more processors or microprocessors, or processing logic, which may interpret and execute instructions.
- Main memory 230 may include a random access memory (RAM) or another type of dynamic storage device that may store information and instructions for execution by processing unit 220 .
- ROM 240 may include a ROM device or another type of static storage device that may store static information and instructions for use by processing unit 220 .
- Storage device 250 may include a magnetic and/or optical recording medium.
- Main memory 230 , ROM 240 and storage device 250 may each be referred to herein as a “tangible, non-transitory computer-readable medium.”
- the processes/methods described herein can be implemented as instructions that are stored in main memory 230 , ROM 240 and/or storage device 250 for execution by processing unit 220 .
- Input device 260 may include one or more mechanisms that permit a user to input information to device 200 , such as, for example, a keypad or a keyboard, a display with a touch sensitive panel, voice recognition and/or biometric mechanisms, etc.
- Output device 270 may include one or more mechanisms that output information to the operator, including a display, a speaker, etc.
- Input device 260 and output device 270 may, in some implementations, be implemented as a graphical user interface (GUI) that displays GUI information and which receives user input via the GUI.
- Communication interface(s) 280 may include a transceiver that enables device 200 to communicate with other devices and/or systems.
- communication interface(s) 280 may include wired or wireless transceivers for communicating via network 140 .
- device 200 may include additional, fewer and/or different components, or differently arranged components, than those depicted in FIG. 2 .
- FIG. 3 is a diagram that depicts an exemplary data structure associated with user profile DB 125 .
- User profile DB 125 may include multiple entries 300 , each of which may include an end user identifier (ID) field 310 , a user profile field 320 , and one or more authorization token fields 330 - 1 through 330 - m.
- ID end user identifier
- End user ID field 310 may store a unique identifier of end user 145 associated with user device 105 .
- User profile field 320 may store data associated with a user profile of the end user 145 identified in end user ID field 310 .
- the user profile may include end user 145 's log-in name and user password, past usage history of media content hosted by content provider 120 , and known interests of end user 145 .
- the past usage history may include a history of all activity end user 145 has engaged in with respect to being provided media content from content provider 120 .
- the known interests of end user 145 may have been previously explicitly obtained from end user 145 (e.g., via an on-line survey), or may be information inferred from end user 145 's past usage history.
- Authorization token fields 330 - 1 through 330 - m may each store an authorization token, generated by campaign portal server 110 , that is used to verify end user 145 's subscription to a specific subscription data campaign that is published via campaign portal server 110 .
- each entry 300 of user profile DB 125 may include additional, fewer and/or different fields than those depicted in FIG. 3 .
- a given end user 145 may be associated (e.g., own, rent or use) with multiple different user devices 105 (e.g., a smart phone, a desktop computer, and a tablet computer), and each user device 105 may have an entry 300 in DB 125 .
- User profile DB 125 is depicted in FIG. 3 as a tabulated data structure for purposes of illustration. Other types of data structures (e.g., linked lists, etc.), not shown, may also be used for associating data fields 310 , 320 , and 330 - 1 through 330 - m within DB 125 .
- FIG. 4 is a diagram that depicts an exemplary data structure associated with campaign portal DB 115 .
- Campaign portal DB 115 may include multiple entries 400 and/or 405 .
- Each of entries 400 may include an end user ID field 410 , a user account information field 415 , a selected campaign(s) field 420 and an authorization token(s) field 425 .
- Each of entries 405 may include one or more campaign ID fields 430 - 1 through 430 - x , and corresponding campaign information fields 435 - 1 through 435 - x.
- End user ID field 410 stores data that uniquely identifies an end user 145 .
- User account info field 415 stores account data associated with the end user 145 identified in end user ID field 410 .
- the account information may include, for example, log-in information associated with end user 145 's registered account with campaign portal server 110 .
- Selected campaign(s) field 420 stores data that identifies one or more subscription data campaigns to which the end user 145 , identified by the identifier stored in end user ID field 410 , has successfully subscribed.
- Authorization token(s) field 425 may store an authorization token, received from campaign portal server 110 for each subscription campaign to which the end user 145 has successfully subscribed.
- Each of campaign ID fields 430 - 1 through 430 - x stores a unique identifier associated with a subscription campaign of a respective content provider 120 .
- Each of campaign info fields 435 - 1 through 435 - x stores information for a respective subscription campaign.
- the information may include information to be published by campaign portal server 110 and presented for viewing by end user 145 , such as, for example, advertising information (e.g., image, audio, video) about the media content associated with the particular subscription campaign, or details of the subscription campaign (e.g., price of the media content, and a quota of allocated toll free data).
- each entry 400 or 405 of campaign portal DB 115 is for illustrative purposes. Each entry 400 or 405 of campaign portal DB 115 may include additional, fewer and/or different fields than those depicted in FIG. 4 .
- Campaign portal DB 115 is depicted in FIG. 4 as a tabulated data structure for purposes of illustration. Other types of data structures (e.g., linked lists, etc.), not shown, may also be used for associating data fields 410 , 415 , 420 and 425 ; and data fields 430 and 435 ; within DB 115 .
- FIG. 5 is a diagram illustrating functional components of a content provider 120 .
- content provider 120 may include a toll free subscription campaign generator 500 , a user profile unit 510 , a campaign subscription rule engine 520 , an authorization token decryption unit 530 , and a messaging unit 540 .
- FIG. 5 further depicts the functional components of content provider 120 connected to user profile DB 125 . Since, as described above, content provider 120 may include one or more network devices, the functional components depicted in FIG. 5 may be implemented in a single network device, or implemented in multiple different, distributed network devices.
- Toll free subscription campaign generator 500 may generate a media content subscription data campaign and may enter into an agreement, with a network service provider (e.g., a PLMN network service provider), regarding a campaign subscription model for offering the subscription data campaign to interested end users of a network service provider.
- a network service provider e.g., a PLMN network service provider
- the campaign subscription model may involve campaign portal server 110 publishing a given subscription data campaign for possible subscription by end user 145 , where end user 145 is charged a fee for accessing specific media data at content provider 120 for delivery from content provider 120 via a network service provider's network to user device 105 and where all, or at least a portion of, network usage allocated to the end user 145 (e.g., bytes or megabytes of data usage) is free to end user 145 (e.g., during delivery of the specific media data from content provider 120 to user device 105 , or for other end user network usage activities).
- the campaign subscription model may permit only a limited number of end user subscriptions to the specific media content (e.g., the first qualifying 500 end users).
- the campaign subscription model may further require each end user attempting to subscribe to the campaign to meet certain qualifying criteria, with the qualifying criteria being implemented via campaign subscription rule engine 530 below. Therefore, content provider 120 may enter in an agreement with the network service provider to publish one or more subscription data campaigns via campaign portal server 110 at a certain per subscription (per end user 145 ) price, where content provider may receive a certain first percentage of the subscription price (e.g., 80%) and the network service provider may receive a second percentage of the subscription price (e.g., 20%), and the network service provider agrees to allocate a certain quota of toll free network usage to the subscribing end user.
- a certain per subscription e.g., 80%
- the network service provider may receive a second percentage of the subscription price (e.g. 20%)
- the network service provider agrees to allocate a certain quota of toll free network usage to the subscribing end user.
- the end user may choose to use the allocated quota of toll free network usage for receiving media content delivered from content provider 120 to user device 105 via the network service provider's network (e.g., PLMN network).
- the network service provider's network e.g., PLMN network
- end user 145 who subscribes to a certain subscription campaign, may be allocated a free quota of 200 megabytes of network usage.
- User profile unit 510 may maintain user profile data in user profile DB 125 , and may retrieve user profile data for end users attempting to subscribe to a subscription data campaign. User profile unit 510 may provide selected items of data from the retrieved user profile data to campaign subscription rule engine 520 .
- Campaign subscription rule engine 520 may implement a set of subscription rules that determine which end users may, or may not, qualify to subscribe to a given subscription data campaign being offered by a content provider 120 via campaign portal server 110 .
- the set of subscription rules may randomly choose which end users qualify to subscribe to the subscription data campaign when those end users have little or no data in their user profiles.
- the set of subscription rules implemented by rule engine 520 may qualify end users who previously utilized toll free data more effectively than other end users.
- an end user who previously utilized 2 Gigabytes (GB) of free data usage allocated to him/her by watching two paid high definition (HD) movies may be qualified for the subscription data campaign, whereas another end user that only used ten percent of 2 GB of the free data usage allocated to him/her and spent nothing on paid content may be disqualified for the subscription data campaign.
- GB Gigabytes
- HD high definition
- Authorization token decryption unit 530 upon notification of campaign portal server 110 of the qualification of the subscription request from end user 145 , may receive an encrypted authorization token generated by campaign portal server 110 for end user 145 's subscription request.
- the authorization token may include a set of data that further includes an identifier of end user 145 , an identifier of the subscription data campaign, and a data quota allocated to end user 145 .
- the data quota may include an amount of network service usage (e.g., in MB or GB) that end user 145 may utilize for free while communicating via the network service provider's network (e.g., the PLMN).
- decryption unit 530 may decrypt the token to extract the set of data.
- Campaign portal server 110 and content provider 120 may use any type of mutually agreed upon encryption/decryption algorithm for encrypting and decrypting the authorization token.
- Decryption unit 530 may store the decrypted authorization token in an authorization token field 330 in an entry 300 in which end user 145 's identifier matches a value stored in end user ID field 310 .
- Messaging unit 540 may receive information associated with a generated toll free subscription campaign from generator 500 and may send the information to campaign portal server 110 .
- Messaging unit 540 may also receive a subscription qualification notification from rule engine 520 , indicating that a particular end user 145 has qualified to subscribe to a subscription data campaign, and may send a message to campaign portal server 110 to notify it of the qualification.
- Messaging unit 510 may further receive encrypted authorization tokens from campaign portal server 110 , and may pass the received tokens to decryption unit 540 .
- content provider 120 illustrated in FIG. 5 is for illustrative purposes. Other configurations may be implemented. Therefore, content provider 120 may include additional, fewer and/or different functional components than those depicted in FIG. 5 .
- FIG. 6 is a flow diagram of an exemplary process for creating a toll free subscription campaign and for publishing the campaign via campaign portal server 110 .
- the exemplary process of FIG. 6 may be implemented by content provider 120 , in conjunction with campaign portal server 110 .
- the exemplary process of FIG. 6 is described below with reference to the messaging diagram of FIG. 7 .
- the exemplary process may include content provider 120 creating a toll free subscription campaign (block 600 ).
- Creation of the toll free subscription campaign may include identifying media content (e.g., one or more items of streaming video such as, for example, a movie(s)) that is to be offered and published as a subscription data campaign via campaign portal server 110 , assigning a unique campaign identifier to the media content, and generating descriptive data regarding the media content (e.g., name of media content, length in MB or GB, description of media content, graphics associated with the media content, etc.).
- the messaging diagram of FIG. 7 depicts content provider 120 creating 700 a toll free subscription campaign.
- Content provider 120 agrees to a campaign subscription model for the toll free subscription data campaign with the network service provider (block 610 ).
- Content provider 120 may, via network 140 , come to an agreement with the network service provider to offer the media content for viewing by end user 145 for a certain price, where a first percentage of the price is allocated to the network service provider and a second percentage of the price is allocated to the content provider 120 , and with the network service provider agreeing to grant a quota of free network usage to end user 145 that may be used by end user 145 when receiving delivery of the media content associated with the data subscription campaign from content provider 120 .
- FIG. 7 depicts content provider 120 and the network service provider (via campaign portal server 110 ) coming to an agreement 710 regarding a subscription model for a particular subscription data campaign.
- Content provider 120 publishes, via campaign portal server 110 , the created toll free subscription campaign to end users of the network service provider (block 620 ).
- Content provider 120 sends the created subscription data campaign (e.g., name of media content, length in MB, description of media content, graphics associated with the media content, price, quota of free network usage to be allocated to subscriber) to campaign portal server 110 , and campaign portal server 110 “publishes” the subscription data campaign in conjunction with other subscription data campaigns provided by other content providers 120 .
- FIG. 7 depicts content provider 120 sending a message 720 to campaign portal server 110 for publishing the toll free subscription data campaign.
- End user 145 may access, via user device 105 and campaign portal client app 150 , the published subscription data campaigns stored at campaign portal server 110 and request a subscription to one or more particular subscription data campaigns, as described in further detail below with respect to the exemplary process of FIGS. 8A-8C .
- the exemplary process of FIG. 6 may be repeated by each of content providers 120 - 1 through 120 - n for each created toll free subscription campaign.
- FIGS. 8A-8C are flow diagrams of an exemplary process for an end user to register with campaign portal server 110 and for attempting to subscribe to subscription data campaigns published by campaign portal server 110 .
- the exemplary process of FIGS. 8A-8C may be implemented by user device 105 , campaign portal server 110 and content provider 120 .
- the exemplary process of FIGS. 8A-8C is described below with reference to the diagrams of FIGS. 9A and 9B .
- the exemplary process includes user device 105 , of the end user 145 of the network service provider, downloading and installing a campaign portal client application (app) 150 (block 805 ).
- User device 105 based on an instruction from end user 145 , requests the downloading of campaign portal client app 150 from, for example, campaign portal server 110 .
- campaign portal server 110 uploads app 150 to user device 105 via network 140 .
- end user 145 instructs user device 105 to install app 150 .
- FIG. 9A depicts user device 105 downloading 900 campaign portal client app 150 that was uploaded by campaign portal server 110 , and installing 905 app 150 at user device 105 .
- User device 105 of end user 145 , registers, via campaign portal client app 150 , with campaign portal server 110 to create a toll free registered account (block 805 ).
- the registration may include, for example, a log-in name, a password, user identification information (e.g., name, address), and/or an email address.
- Campaign portal server 110 may assign a unique user identifier to end user 145 and may store the assigned unique user identifier in an end user ID field 410 of an entry 400 of campaign portal DB 115 , and may store the registration information in user account information field 415 of the entry 400 .
- 9A depicts end user 145 registering 910 , via campaign portal client app 150 executing at user device 105 , with campaign portal server 110 to create a toll free registered account.
- the registered toll free account permits end user 145 to request subscriptions to one or more subscription data campaigns published by campaign portal server 110 .
- User device 105 uses the campaign portal client app 150 to send user sign-in information, for signing into the registered toll free account, to campaign portal server 110 (block 810 ).
- End user 145 initiates execution of campaign portal client app 150 at user device 150 and, via a user interface of app 150 , enters user sign-in information (e.g., login name and password of end user 145 ).
- campaign portal client app 150 sends a message 915 that includes the sign-in information to campaign portal server 110 via network 140 (not shown in FIG. 9A ).
- Campaign portal server 110 presents the current toll free subscription data campaigns to end user 145 via campaign portal client app 150 (block 815 ).
- campaign portal server 110 may retrieve campaign information from fields 435 - 1 through 430 - x of entries 405 of campaign portal DB 115 and may publish the current toll free subscription data campaigns to end user 145 via network 140 and campaign portal client app 150 .
- the campaign information associated with each current toll free subscription data campaign may be presented via a user interface of campaign portal client app 150 .
- FIG. 9A depicts campaign portal server 110 sending information 920 regarding current toll free subscription data campaigns to campaign portal client app 150 at user device 105 .
- Campaign portal server 110 determines if there has been a user selection of a data campaign for subscription (block 820 ) from the presented current toll free subscription data campaigns.
- End user 145 may, via a user interface of campaign portal client app 150 , select a current toll free subscription data campaign presented to end user 145 by campaign portal server 110 .
- the user interface of campaign portal client app 150 comprises a touch screen and a graphical user interface
- end user 145 may “touch” an icon associated with the selected toll free subscription data campaign displayed on the touch screen of user device 105 .
- FIG. 9B depicts a message 925 , that includes an indication of the subscription data campaign selected by end user 145 , being sent from user device 105 to campaign portal server 110 via network 140 (not shown in FIG. 9B ).
- campaign portal server 110 If campaign portal server 110 has received a user selection of a data campaign for subscription (YES—block 820 ), then campaign portal server 110 sends data identifying end user 145 to the content provider 120 associated with the selected campaign (block 825 ).
- Campaign portal server 110 obtains end user 145 's end user ID, and, as shown in FIG. 9B , sends a message 930 that includes end user ID data, to the content provider 120 that hosts the selected subscription data campaign.
- Content provider 120 uses the received data identifying end user 145 , retrieves end user 145 's user profile from user profile DB 125 and qualifies, using campaign subscription rule engine 520 , end user 145 to subscribe to the campaign based on the user's user profile (block 830 ).
- FIG. 9B depicts content provider 120 retrieving 935 end user 145 's user profile from user profile DB 125 , and qualifying 940 , using subscription rule engine 520 , end user 145 to subscribe to the user-selected subscription data campaign based on end user 145 's user profile.
- Campaign subscription rule engine 520 implements a set of subscription rules that determine which end users may, or may not, qualify to subscribe to a given subscription data campaign being offered by a content provider 120 via campaign portal server 110 .
- the set of subscription rules may randomly choose which end users qualify to subscribe to the subscription data campaign when those end users have little or no data in their user profiles.
- the set of subscription rules implemented by rule engine 520 may qualify end users who previously utilized toll free data more effectively than other end users.
- an end user who previously utilized 2 Gigabytes (GB) of free data usage allocated to him/her by watching two paid high definition (HD) movies may be qualified for the subscription data campaign, whereas another end user that only used ten percent of 2 GB of the free data usage allocated to him/her and spent nothing on paid content may be disqualified for the subscription data campaign.
- GB Gigabytes
- HD high definition
- content provider 120 uses campaign subscription rule engine 530 to determine that end user 145 is not qualified for a subscription to the user-selected subscription data campaign (NO—block 835 ). If content provider 120 , using campaign subscription rule engine 530 , determines that end user 145 is qualified for a subscription to the user-selected subscription data campaign (YES—block 835 ), then content provider 120 sends a campaign qualification message to campaign portal server 110 (block 845 ), and continues at block 850 .
- FIG. 9B shows content provider 120 returning a campaign qualification message 945 to campaign portal server 110 .
- campaign portal server 110 generates an authorization token that includes an ID of end user 145 , an ID of the subscribed campaign, and a data quota allocated to the user for the subscribed campaign.
- Campaign portal server 110 stores the generated authorization token, in association with end user 145 's registered account, in campaign portal DB 115 (block 855 ), and encrypts the authorization token and sends the encrypted authorization token to end user 145 's campaign portal client app 150 , and to content provider 120 that is hosting the selected campaign (block 860 ).
- FIG. 9B shows campaign portal server 110 generating 950 the authorization token, storing the token in campaign portal DB 115 , and encrypting the token.
- FIG. 9B further depicts campaign portal server 110 sending a message 955 that includes the encrypted authorization token to user device 105 , and a message 960 that also includes the encrypted authorization token to content provider 120 .
- Campaign portal client app 150 stores the received encrypted authorization token and a Uniform Resource Locator (URL) associated with the subscribed data campaign (block 865 ).
- FIG. 9B depicts user device 105 , after receiving message 955 , storing 965 the authorization token and campaign subscription information locally at user device 105 .
- Content provider 120 decrypts received authorization token and stores in end user 145 's user profile (block 870 ).
- FIG. 9B shows content provider, after receiving message 960 , decrypting 970 the authorization token and storing in end user 145 's user profile in user profile DB 125 .
- Blocks 810 through 870 of FIGS. 8A-8C may be selectively repeated by end user 145 for signing into end user's registered toll free account and for selecting a different current toll free subscription data campaign for requesting a subscription.
- FIGS. 10A and 10B are flow diagrams of an exemplary process for end user 145 to select and receive media content associated with a subscription data campaign to which end user 145 has previously successfully subscribed.
- the exemplary process of FIGS. 10A and 10B may be implemented by user device 105 , campaign portal server 110 and content provider 120 .
- the exemplary process of FIGS. 10A and 10B is described below with reference to the diagram of FIG. 11 .
- the exemplary process may include user device 105 , based on end user input, executing campaign portal client app 150 and receiving end user 145 's sign-in to the registered toll free account (block 1000 ). Further, campaign portal client app 150 determines if end user 145 has selected a subscribed campaign (block 1005 ). FIG. 11 depicts campaign portal client app 150 receiving 1100 end user 145 's sign-in, and receiving 1105 end user 145 's selection of a previously subscribed campaign.
- campaign portal client app 150 sends the campaign's encrypted authorization token to content provider 120 (block 1010 ).
- Campaign portal client app 150 retrieves the encrypted authorization token for the selected campaign (previously received in blocks 860 and 865 of FIG. 8C ) and, as shown in FIG. 11 , sends a message 1110 that includes the encrypted authorization token to content provider 120 .
- Content provider 120 decrypts the received authorization token and authenticates the token (block 1015 ).
- Content provider 120 uses a decryption algorithm that corresponds to the encryption algorithm used by campaign portal server 110 to decrypt the authorization token.
- Authentication of the token may include using various different known authentication techniques for authenticating the token.
- Content provider 120 determines if the selected campaign is currently live (block 1020 ). Each subscription data campaign may be offered for subscription for a only certain period of time, and may then only be available for delivery at a certain time. The certain time may be a pre-specified day and time, or it may be upon the occurrence of a certain event (e.g., when a threshold number of subscriptions have been received).
- FIG. 11 depicts content provider 120 determining 1115 if the selected subscription data campaign is live. If the selected campaign is not live (NO—block 1020 ), then content provider 120 sends a message to user device 105 identifying when the selected campaign begins (block 1025 ).
- content provider 120 determines that the selected campaign is currently live (YES—block 1020 ), then content provider 120 matches the authorization token to a user profile and provides media for the selected campaign to end user 145 's campaign portal client app 150 (block 1030 ).
- Content provider 120 after decryption of the authorization token, extracts the end user ID from the authorization token and performs a lookup into user profile DB 125 to identify an entry 300 having an identifier in field 310 that matches the end user ID extracted from the authorization token.
- Content provider 120 compares the decrypted authorization token with the authorization tokens stored in fields 330 - 1 through 330 - m of the identified entry 300 to find a matching authorization token.
- content provider 120 may extract the campaign identifier from the decrypted authorization token, retrieve the media content from storage that corresponds to the campaign identifier, and begin delivery of the media content to user device 105 .
- FIG. 11 depicts content provider 120 matching 1125 the decrypted authorization token to a user profile, and sending the media 1130 for the selected campaign to user device 105 .
- Content provider 120 meters end user 145 's available quota in real time (block 1035 ). As content provider 120 delivers the media content associated with the selected subscription data campaign to end user 145 at user device 105 , content provider 120 meters the network usage (e.g., measures the used quantity of data) and subtracts the metered data from the quota of free data allocated to end user 145 upon subscribing to the subscription data campaign. For example, if 2 MB of the media content has just been delivered to user device 105 , and a 2 GB quota of free data was originally allocated to end user 145 , then content provider may subtract the 2 MB from the 2 GB to obtain the resulting remaining amount of the toll free quota that is available.
- FIG. 11 depicts content provider 120 metering 1135 end user 145 's available quota of free data.
- Content provider 120 determines if end user 145 's available quota is exhausted (block 1040 ). Content provider 120 checks the remaining amount of the free quota that is available, from block 1035 , and determines if the amount is zero. If the available quota is exhausted (YES—block 1040 ), then content provider 120 sends a quota exhaustion warning message to end user 145 (block 1045 ).
- Content provider 120 sends the quota exhaustion warning message to user device 105 via network 140 to warn end user 145 that if there is any further media content associated with the subscription data campaign to be delivered (i.e., when the amount of data of the media content exceeds the quota of free data allocated to the subscriber), then end user 145 will be charged for regular data usage according to his data usage plan with the network service provider.
- campaign portal client app 150 continues to measure end user 145 's data usage locally (block 1050 ).
- Campaign portal client app 150 measures the incoming quantity of media data to determine the current local usage.
- FIG. 11 depicts campaign portal client app 150 of user device 105 measuring 1140 end user 145 's local data usage, associated with the delivered media content.
- Campaign portal client app 150 sends an indication of measured data usage, and the encrypted authorization token for end user 145 and the subscription data campaign, to update billing system 130 (block 1055 ).
- Message 11 shows user device 105 sending a message 1145 to billing system 130 that includes an update of end user 145 's data usage associated with the delivered media content for the subscription data campaign.
- Message 1145 may include the current measured data usage, and the encrypted authorization token associated with the subscription data campaign.
- Billing system 130 matches the received encrypted authorization token to a user profile, and subtracts the measured data usage from the allocated data quota (block 1060 ).
- billing system 130 retrieves a user profile from billing DB 135 that corresponds to the authorization token and subtracts the measured data usage, received from user device 105 , from the remaining amount of the previously allocated data quota for the subscription data campaign.
- FIG. 11 depicts billing system 130 matching 1150 the encrypted authorization token to a particular user profile, and subtracting the measured data usage.
- This logic or unit may include hardware, such as one or more processors, microprocessors, application specific integrated circuits, or field programmable gate arrays, software, or a combination of hardware and software.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- Wireless data plans allow mobile subscribers to access content and/or applications (“apps”) through mobile devices. Data usage for end users is typically charged to an account associated with an end user. The end user's account may have a periodic limit on total data usage, for example on wireless networks (e.g., a 2 Gigabytes per month data plan). End users on networks that have periodic limits for data usage often arrange their data usage behavior to avoid overages associated with periodic limits on data usage. For example, an end user may curtail online shopping, or other activity when they are approaching or have exceeded the periodic limit.
-
FIG. 1 illustrates an exemplary network environment in which subscriptions to certain data campaigns, that include the delivery of media content at free or reduced cost network service provider access charges, and which are published at a campaign portal for possible access by end users of the network service provider; -
FIG. 2 is a diagram that depicts exemplary components of a device that may correspond to the user device, campaign portal server, content providers, campaign portal database, user profile database, billing system and/or billing database ofFIG. 1 ; -
FIG. 3 is a diagram that depicts an exemplary data structure associated with the user profile database ofFIG. 1 ; -
FIG. 4 is a diagram that depicts an exemplary data structure associated with the campaign portal database ofFIG. 1 ; -
FIG. 5 is a diagram illustrating functional components of a content provider ofFIG. 1 ; -
FIG. 6 is a flow diagram of an exemplary process for creating a toll free subscription campaign and publishing the campaign via the campaign portal server ofFIG. 1 ; -
FIG. 7 is a messaging diagram associated with the exemplary process ofFIG. 6 ; -
FIGS. 8A-8C are flow diagrams of an exemplary process for an end user to register with the campaign portal server ofFIG. 1 and for attempting to subscribe to subscription data campaigns published by the campaign portal server; -
FIGS. 9A and 9B are messaging diagrams associated with the exemplary process ofFIGS. 8A-8C ; -
FIGS. 10A and 10B are flow diagrams of an exemplary process for an end user to select and receive media content associated with a subscription data campaign to which the end user has previously successfully subscribed; and -
FIG. 11 is a messaging diagram associated with the exemplary process ofFIGS. 10A and 10B . - The following detailed description refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements. The following detailed description does not limit the invention.
- Toll-Free Data (TFD) service allows mobile subscribers to access content without impacting their monthly wireless data plan for at least an allocated quota of free network usage (e.g., a limited quota of data usage that is not charged to the mobile subscriber's personal account, but is charged to the network service provider and/or the content provider that delivers the content). TFD service enables mobile subscribers to reduce the data consumption billed to their mobile accounts when receiving media content from content providers, and the content providers can increase their digital presence and potentially increase their product sales by offering their media content via TFD service. TFD service, therefore, offers a data consumption model that can benefit consumers, sponsoring companies, and network service providers.
- Exemplary embodiments described herein use a TFD service, as applied to media content publishing and delivery, in which multiple different content providers create subscription data campaigns and submit them for publication via a campaign portal. The campaign portal serves as a centralized access point for device end users, who receive network connectivity via a network service provider, to access and subscribe to the media content that is part of the subscription data campaigns. Each of the subscription data campaigns includes media content being offered by a content provider, a price associated with delivery of the media content from the content provider via the network service provider's network, and a toll free data usage quota associated with network usage of the network service provider's network. Therefore, when a user is granted a subscription to media content associated with a given subscription data campaign, the user may receive delivery of the media content from the content provider to the user's device over the network, with the network usage associated with the delivery of the media content over the network being free, or with reduced usage charges being applied, due to the toll free data usage quota allocated to the user upon subscription.
-
FIG. 1 illustrates anexemplary network environment 100 in which subscriptions to certain data campaigns, that include the delivery of media content (e.g., video content) at free or reduced cost network service provider access charges, are published at a campaign portal for access by end users of the network service provider. As depicted inFIG. 1 ,network environment 100 may include auser device 105, acampaign portal server 110, a campaign portal database (DB) 115, one or more content providers 120-1 through 120-n (generically and individually referred to herein as “content provider 120” and collectively referred to herein as “content providers 120”), one or more user profile DBs 125-1 through 125-n (generically and individually referred to herein as “user profile DB 125” and collectively referred to herein as “user profile DBs 125”), a network serviceprovider billing system 130, abilling DB 135 and anetwork 140. -
User device 105 may include any type of electronic device that may connect withnetwork 140 via a wired or wireless connection, and which may receive media (e.g., audio and/or video media) via, for example,network 140, and play the media for listening and/or viewing byend user 145.User device 105 may include, for example, a cellular telephone (e.g., a smart phone), a personal digital assistant (PDA), a vehicular communication system, or a computer (e.g., tablet, desktop, palmtop, laptop, or wearable computer). As shown, anend user 145 may be associated withuser device 105.End user 145 may be a subscriber to a network service provider, such as a cellular network service provider, that may own and/or useuser device 105. A campaignportal client app 150 may be installed atuser device 105 and executed to permitend user 145 to access subscription data campaigns published bycampaign portal server 110 and to request a subscription to one or more particular subscription data campaigns, as described in further detail below. Campaignportal client app 150 may additionally permitend user 145 to select subscription data campaigns successfully subscribed to, and to receive and playback delivered media corresponding to the selected subscription data campaigns. -
Campaign portal server 110 may include one or more network devices that receive and store information related to toll free subscription data campaigns from content providers 120-1 through 120-n in campaign portal DB 115.Campaign portal server 110 also receives campaign subscription requests from end user 145 (and other end users not shown inFIG. 1 ), passes the subscription request to arespective content provider 120 associated with the campaign, receives a return campaign qualification message fromcontent provider 120, and generates an authorization token for sending touser device 105 associated with the requestingend user 145. As described in further detail below, the authorization token may include, for example, data identifyingend user 145, data identifying the requested campaign, and a quota of data allocated toend user 145 for receiving media associated with the requested campaign.Campaign portal server 110 may encrypt the authorization token and send it touser device 105 ofend user 145, and to thecontent provider 120 thatqualified end user 145's subscription. - Campaign portal DB 115 may include a network device that stores a data structure having data fields that further store campaign information, provided by content providers 120-1 through 120-n, and also stores end user campaign subscription information. An exemplary implementation of the data stored in campaign portal DB 115 is described in further detail with respect to
FIG. 4 . - Each of content providers 120-1 through 120-n may include one or more network devices that stores media content, generates subscription data campaigns, publishes those subscription data campaigns to network service provider end users via
campaign portal server 110, and provides media content related to subscription campaigns touser device 105 ofend user 145. For example, content provider 120-1 may send media content associated with a subscription campaign touser device 105 afterend user 145 has successfully subscribed to the subscription data campaign viacampaign portal server 110. The media content may include audio and/or video media content, such as, for example, movies or television programming. In some implementations, the media content may include streaming media. - User profile DB 125 may include a network device that stores a data structure having data fields that further store end user information, including end user identifiers, end user profiles, and authorization tokens generated by
campaign portal server 110 for successfully subscribed subscription data campaigns. An exemplary implementation of the data stored inuser profile DB 125 is described in further detail with respect toFIG. 3 . -
Network 140 may include one or more networks including, for example, a wireless public land mobile network (PLMN) (e.g., a Code Division Multiple Access (CDMA) 2000 PLMN, a Global System for Mobile Communications (GSM) PLMN, a Long Term Evolution (LTE) PLMN and/or other types of PLMNs), a telecommunications network (e.g., Public Switched Telephone Networks (PSTNs)), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), an intranet, the Internet, or a cable network (e.g., an optical cable network). In one embodiment,network 140 may include one or more PLMNs connected to one or more other networks, such as, for example, the Internet. Each PLMN may be operated by an entity referred to herein as a “network service provider” that owns, maintains, and/or operates the infrastructure associated with that PLMN. Network 140 may also include a content delivery network (CDN) used to deliver media content from content providers 120-1 through 120-n touser device 105 via the PLMNs. - Content delivery networks (CDNs) include interconnected systems of servers that can rapidly and cost effectively deliver a variety of digital content to numerous end points, such as web browsers, mobile devices, set-top boxes and gaming consoles, via, for example, the Internet. CDNs include large distributed systems of servers located in multiple data centers in the Internet. CDN nodes are typically deployed in multiple different locations, often across multiple different backbones. The number of nodes and servers of a CDN varies, depending on the CDN's architecture. CDNs serve various forms of content, including text, graphics, Uniform Resource Locators (URLs), scripts, media files, software, documents, applications, social networks, and streaming media. For serving content via streaming media, CDNs may, for example, use Hypertext Transfer Protocol (HTTP) Live Streaming (HLS). HLS is a HTTP-based media streaming communications protocol that involves breaking the media stream into a sequence of file downloads. Each file may be downloaded as one portion of a transport stream. Each downloaded file may be played in sequence to present a continuous media stream. Other media formats, and media delivery protocols, may also be used when delivering media from content providers 120-1 through 120-n to
user device 105. - Network service provider billing system 130 (hereinafter “
billing system 130”) includes a network device that maintains billing information associated withend user 145's use of the network operated by the network service provider (e.g., the PLMN).Billing system 130 may keep track ofend user 145's usage allocation (e.g., megabytes (MB) or gigabytes (GB) of data, number of minutes, etc.) based onend user 145's paid network service usage plan.Billing system 130 may storeend user 145's network service usage information inbilling DB 135.Billing DB 135 may store data similar to that described below with respect to campaignportal DB 115 ofFIG. 4 . In some implementations,billing DB 135 andcampaign portal DB 115 may include a same database connected so as to be accessible to bothcampaign portal server 110 andbilling system 130. - The configuration of network components of
network environment 100 illustrated inFIG. 1 is for illustrative purposes. Other configurations may be implemented. Therefore,network environment 100 may include additional, fewer and/or different components that may be configured in a different arrangement than those depicted inFIG. 1 . For example, though only asingle user device 105, andend user 145 are shown inFIG. 1 ,network environment 100 may include multipledifferent user devices 105, and multiple differentrespective end users 145. -
FIG. 2 is a diagram that depicts exemplary components of adevice 200.User device 105,campaign portal server 110,campaign portal DB 115, content providers 120-1 through 120-n, user profile DB 125-1 through 125-n, network serviceprovider billing system 130 andbilling DB 135 may each be configured identical to, or similar to,device 200. -
Device 200 may include abus 210, aprocessing unit 220, amain memory 230, a read only memory (ROM) 240, astorage device 250, aninput device 260, anoutput device 270, and acommunication interface 280.Bus 210 may include a path that permits communication among the components ofdevice 200. -
Processing unit 220 may include one or more processors or microprocessors, or processing logic, which may interpret and execute instructions.Main memory 230 may include a random access memory (RAM) or another type of dynamic storage device that may store information and instructions for execution by processingunit 220.ROM 240 may include a ROM device or another type of static storage device that may store static information and instructions for use by processingunit 220.Storage device 250 may include a magnetic and/or optical recording medium.Main memory 230,ROM 240 andstorage device 250 may each be referred to herein as a “tangible, non-transitory computer-readable medium.” The processes/methods described herein can be implemented as instructions that are stored inmain memory 230,ROM 240 and/orstorage device 250 for execution by processingunit 220. -
Input device 260 may include one or more mechanisms that permit a user to input information todevice 200, such as, for example, a keypad or a keyboard, a display with a touch sensitive panel, voice recognition and/or biometric mechanisms, etc.Output device 270 may include one or more mechanisms that output information to the operator, including a display, a speaker, etc.Input device 260 andoutput device 270 may, in some implementations, be implemented as a graphical user interface (GUI) that displays GUI information and which receives user input via the GUI. Communication interface(s) 280 may include a transceiver that enablesdevice 200 to communicate with other devices and/or systems. For example, communication interface(s) 280 may include wired or wireless transceivers for communicating vianetwork 140. - The configuration of components of
device 200 illustrated inFIG. 2 is for illustrative purposes. Other configurations may be implemented. Therefore,device 200 may include additional, fewer and/or different components, or differently arranged components, than those depicted inFIG. 2 . -
FIG. 3 is a diagram that depicts an exemplary data structure associated withuser profile DB 125.User profile DB 125 may includemultiple entries 300, each of which may include an end user identifier (ID)field 310, auser profile field 320, and one or more authorization token fields 330-1 through 330-m. - End
user ID field 310 may store a unique identifier ofend user 145 associated withuser device 105.User profile field 320 may store data associated with a user profile of theend user 145 identified in enduser ID field 310. The user profile may includeend user 145's log-in name and user password, past usage history of media content hosted bycontent provider 120, and known interests ofend user 145. The past usage history may include a history of allactivity end user 145 has engaged in with respect to being provided media content fromcontent provider 120. The known interests ofend user 145 may have been previously explicitly obtained from end user 145 (e.g., via an on-line survey), or may be information inferred fromend user 145's past usage history. - Authorization token fields 330-1 through 330-m may each store an authorization token, generated by
campaign portal server 110, that is used to verifyend user 145's subscription to a specific subscription data campaign that is published viacampaign portal server 110. - The number and content of the fields of each
entry 300 ofuser profile DB 125 is for illustrative purposes. Eachentry 300 ofuser profile DB 125 may include additional, fewer and/or different fields than those depicted inFIG. 3 . For example, a givenend user 145 may be associated (e.g., own, rent or use) with multiple different user devices 105 (e.g., a smart phone, a desktop computer, and a tablet computer), and eachuser device 105 may have anentry 300 inDB 125.User profile DB 125 is depicted inFIG. 3 as a tabulated data structure for purposes of illustration. Other types of data structures (e.g., linked lists, etc.), not shown, may also be used for associatingdata fields DB 125. -
FIG. 4 is a diagram that depicts an exemplary data structure associated withcampaign portal DB 115.Campaign portal DB 115 may includemultiple entries 400 and/or 405. Each ofentries 400 may include an end user ID field 410, a useraccount information field 415, a selected campaign(s)field 420 and an authorization token(s)field 425. Each ofentries 405 may include one or more campaign ID fields 430-1 through 430-x, and corresponding campaign information fields 435-1 through 435-x. - End user ID field 410 stores data that uniquely identifies an
end user 145. Useraccount info field 415 stores account data associated with theend user 145 identified in end user ID field 410. The account information may include, for example, log-in information associated withend user 145's registered account withcampaign portal server 110. - Selected campaign(s)
field 420 stores data that identifies one or more subscription data campaigns to which theend user 145, identified by the identifier stored in end user ID field 410, has successfully subscribed. Authorization token(s)field 425 may store an authorization token, received fromcampaign portal server 110 for each subscription campaign to which theend user 145 has successfully subscribed. - Each of campaign ID fields 430-1 through 430-x stores a unique identifier associated with a subscription campaign of a
respective content provider 120. Each of campaign info fields 435-1 through 435-x stores information for a respective subscription campaign. The information may include information to be published bycampaign portal server 110 and presented for viewing byend user 145, such as, for example, advertising information (e.g., image, audio, video) about the media content associated with the particular subscription campaign, or details of the subscription campaign (e.g., price of the media content, and a quota of allocated toll free data). - The number and content of the fields of each
entry campaign portal DB 115 is for illustrative purposes. Eachentry campaign portal DB 115 may include additional, fewer and/or different fields than those depicted inFIG. 4 .Campaign portal DB 115 is depicted inFIG. 4 as a tabulated data structure for purposes of illustration. Other types of data structures (e.g., linked lists, etc.), not shown, may also be used for associatingdata fields data fields 430 and 435; withinDB 115. -
FIG. 5 is a diagram illustrating functional components of acontent provider 120. As shown inFIG. 5 ,content provider 120 may include a toll freesubscription campaign generator 500, auser profile unit 510, a campaignsubscription rule engine 520, an authorizationtoken decryption unit 530, and amessaging unit 540.FIG. 5 further depicts the functional components ofcontent provider 120 connected touser profile DB 125. Since, as described above,content provider 120 may include one or more network devices, the functional components depicted inFIG. 5 may be implemented in a single network device, or implemented in multiple different, distributed network devices. - Toll free
subscription campaign generator 500 may generate a media content subscription data campaign and may enter into an agreement, with a network service provider (e.g., a PLMN network service provider), regarding a campaign subscription model for offering the subscription data campaign to interested end users of a network service provider. The campaign subscription model may involvecampaign portal server 110 publishing a given subscription data campaign for possible subscription byend user 145, whereend user 145 is charged a fee for accessing specific media data atcontent provider 120 for delivery fromcontent provider 120 via a network service provider's network touser device 105 and where all, or at least a portion of, network usage allocated to the end user 145 (e.g., bytes or megabytes of data usage) is free to end user 145 (e.g., during delivery of the specific media data fromcontent provider 120 touser device 105, or for other end user network usage activities). The campaign subscription model may permit only a limited number of end user subscriptions to the specific media content (e.g., thefirst qualifying 500 end users). The campaign subscription model may further require each end user attempting to subscribe to the campaign to meet certain qualifying criteria, with the qualifying criteria being implemented via campaignsubscription rule engine 530 below. Therefore,content provider 120 may enter in an agreement with the network service provider to publish one or more subscription data campaigns viacampaign portal server 110 at a certain per subscription (per end user 145) price, where content provider may receive a certain first percentage of the subscription price (e.g., 80%) and the network service provider may receive a second percentage of the subscription price (e.g., 20%), and the network service provider agrees to allocate a certain quota of toll free network usage to the subscribing end user. The end user may choose to use the allocated quota of toll free network usage for receiving media content delivered fromcontent provider 120 touser device 105 via the network service provider's network (e.g., PLMN network). For example,end user 145, who subscribes to a certain subscription campaign, may be allocated a free quota of 200 megabytes of network usage. -
User profile unit 510 may maintain user profile data inuser profile DB 125, and may retrieve user profile data for end users attempting to subscribe to a subscription data campaign.User profile unit 510 may provide selected items of data from the retrieved user profile data to campaignsubscription rule engine 520. - Campaign
subscription rule engine 520 may implement a set of subscription rules that determine which end users may, or may not, qualify to subscribe to a given subscription data campaign being offered by acontent provider 120 viacampaign portal server 110. The set of subscription rules, for example, may randomly choose which end users qualify to subscribe to the subscription data campaign when those end users have little or no data in their user profiles. For established end users, having extensive user profiles maintained byuser profile unit 510, the set of subscription rules implemented byrule engine 520 may qualify end users who previously utilized toll free data more effectively than other end users. For example, an end user who previously utilized 2 Gigabytes (GB) of free data usage allocated to him/her by watching two paid high definition (HD) movies may be qualified for the subscription data campaign, whereas another end user that only used ten percent of 2 GB of the free data usage allocated to him/her and spent nothing on paid content may be disqualified for the subscription data campaign. - Authorization
token decryption unit 530, upon notification ofcampaign portal server 110 of the qualification of the subscription request fromend user 145, may receive an encrypted authorization token generated bycampaign portal server 110 forend user 145's subscription request. The authorization token may include a set of data that further includes an identifier ofend user 145, an identifier of the subscription data campaign, and a data quota allocated toend user 145. The data quota may include an amount of network service usage (e.g., in MB or GB) thatend user 145 may utilize for free while communicating via the network service provider's network (e.g., the PLMN). Upon receipt of the encrypted token,decryption unit 530 may decrypt the token to extract the set of data.Campaign portal server 110 andcontent provider 120 may use any type of mutually agreed upon encryption/decryption algorithm for encrypting and decrypting the authorization token.Decryption unit 530 may store the decrypted authorization token in an authorizationtoken field 330 in anentry 300 in whichend user 145's identifier matches a value stored in enduser ID field 310. -
Messaging unit 540 may receive information associated with a generated toll free subscription campaign fromgenerator 500 and may send the information to campaignportal server 110.Messaging unit 540 may also receive a subscription qualification notification fromrule engine 520, indicating that aparticular end user 145 has qualified to subscribe to a subscription data campaign, and may send a message to campaignportal server 110 to notify it of the qualification.Messaging unit 510 may further receive encrypted authorization tokens fromcampaign portal server 110, and may pass the received tokens todecryption unit 540. - The configuration of functional components of
content provider 120 illustrated inFIG. 5 is for illustrative purposes. Other configurations may be implemented. Therefore,content provider 120 may include additional, fewer and/or different functional components than those depicted inFIG. 5 . -
FIG. 6 is a flow diagram of an exemplary process for creating a toll free subscription campaign and for publishing the campaign viacampaign portal server 110. The exemplary process ofFIG. 6 may be implemented bycontent provider 120, in conjunction withcampaign portal server 110. The exemplary process ofFIG. 6 is described below with reference to the messaging diagram ofFIG. 7 . - The exemplary process may include
content provider 120 creating a toll free subscription campaign (block 600). Creation of the toll free subscription campaign may include identifying media content (e.g., one or more items of streaming video such as, for example, a movie(s)) that is to be offered and published as a subscription data campaign viacampaign portal server 110, assigning a unique campaign identifier to the media content, and generating descriptive data regarding the media content (e.g., name of media content, length in MB or GB, description of media content, graphics associated with the media content, etc.). The messaging diagram ofFIG. 7 depictscontent provider 120 creating 700 a toll free subscription campaign. -
Content provider 120 agrees to a campaign subscription model for the toll free subscription data campaign with the network service provider (block 610).Content provider 120 may, vianetwork 140, come to an agreement with the network service provider to offer the media content for viewing byend user 145 for a certain price, where a first percentage of the price is allocated to the network service provider and a second percentage of the price is allocated to thecontent provider 120, and with the network service provider agreeing to grant a quota of free network usage toend user 145 that may be used byend user 145 when receiving delivery of the media content associated with the data subscription campaign fromcontent provider 120.FIG. 7 depictscontent provider 120 and the network service provider (via campaign portal server 110) coming to anagreement 710 regarding a subscription model for a particular subscription data campaign. -
Content provider 120 publishes, viacampaign portal server 110, the created toll free subscription campaign to end users of the network service provider (block 620).Content provider 120 sends the created subscription data campaign (e.g., name of media content, length in MB, description of media content, graphics associated with the media content, price, quota of free network usage to be allocated to subscriber) to campaignportal server 110, andcampaign portal server 110 “publishes” the subscription data campaign in conjunction with other subscription data campaigns provided byother content providers 120.FIG. 7 depictscontent provider 120 sending amessage 720 to campaignportal server 110 for publishing the toll free subscription data campaign. End user 145 (and other end users) may access, viauser device 105 and campaignportal client app 150, the published subscription data campaigns stored atcampaign portal server 110 and request a subscription to one or more particular subscription data campaigns, as described in further detail below with respect to the exemplary process ofFIGS. 8A-8C . The exemplary process ofFIG. 6 may be repeated by each of content providers 120-1 through 120-n for each created toll free subscription campaign. -
FIGS. 8A-8C are flow diagrams of an exemplary process for an end user to register withcampaign portal server 110 and for attempting to subscribe to subscription data campaigns published bycampaign portal server 110. The exemplary process ofFIGS. 8A-8C may be implemented byuser device 105,campaign portal server 110 andcontent provider 120. The exemplary process ofFIGS. 8A-8C is described below with reference to the diagrams ofFIGS. 9A and 9B . - The exemplary process includes
user device 105, of theend user 145 of the network service provider, downloading and installing a campaign portal client application (app) 150 (block 805).User device 105, based on an instruction fromend user 145, requests the downloading of campaignportal client app 150 from, for example,campaign portal server 110. In response,campaign portal server 110uploads app 150 touser device 105 vianetwork 140. Upon receipt ofapp 150,end user 145 instructsuser device 105 to installapp 150.FIG. 9A depictsuser device 105 downloading 900 campaignportal client app 150 that was uploaded bycampaign portal server 110, and installing 905app 150 atuser device 105. -
User device 105, ofend user 145, registers, via campaignportal client app 150, withcampaign portal server 110 to create a toll free registered account (block 805). The registration may include, for example, a log-in name, a password, user identification information (e.g., name, address), and/or an email address.Campaign portal server 110 may assign a unique user identifier toend user 145 and may store the assigned unique user identifier in an end user ID field 410 of anentry 400 ofcampaign portal DB 115, and may store the registration information in user accountinformation field 415 of theentry 400.FIG. 9A depictsend user 145 registering 910, via campaignportal client app 150 executing atuser device 105, withcampaign portal server 110 to create a toll free registered account. The registered toll free account permitsend user 145 to request subscriptions to one or more subscription data campaigns published bycampaign portal server 110. -
User device 105, based on end user input, uses the campaignportal client app 150 to send user sign-in information, for signing into the registered toll free account, to campaign portal server 110 (block 810).End user 145 initiates execution of campaignportal client app 150 atuser device 150 and, via a user interface ofapp 150, enters user sign-in information (e.g., login name and password of end user 145). As shown inFIG. 9A , campaignportal client app 150 sends amessage 915 that includes the sign-in information to campaignportal server 110 via network 140 (not shown inFIG. 9A ). -
Campaign portal server 110 presents the current toll free subscription data campaigns toend user 145 via campaign portal client app 150 (block 815). Upon receipt of the user sign-in information,campaign portal server 110 may retrieve campaign information from fields 435-1 through 430-x ofentries 405 ofcampaign portal DB 115 and may publish the current toll free subscription data campaigns toend user 145 vianetwork 140 and campaignportal client app 150. The campaign information associated with each current toll free subscription data campaign may be presented via a user interface of campaignportal client app 150.FIG. 9A depictscampaign portal server 110 sending information 920 regarding current toll free subscription data campaigns to campaignportal client app 150 atuser device 105. -
Campaign portal server 110 determines if there has been a user selection of a data campaign for subscription (block 820) from the presented current toll free subscription data campaigns.End user 145 may, via a user interface of campaignportal client app 150, select a current toll free subscription data campaign presented toend user 145 bycampaign portal server 110. In an implementation in which the user interface of campaignportal client app 150 comprises a touch screen and a graphical user interface,end user 145 may “touch” an icon associated with the selected toll free subscription data campaign displayed on the touch screen ofuser device 105.FIG. 9B depicts amessage 925, that includes an indication of the subscription data campaign selected byend user 145, being sent fromuser device 105 to campaignportal server 110 via network 140 (not shown inFIG. 9B ). - If
campaign portal server 110 has received a user selection of a data campaign for subscription (YES—block 820), then campaignportal server 110 sends data identifyingend user 145 to thecontent provider 120 associated with the selected campaign (block 825).Campaign portal server 110 obtainsend user 145's end user ID, and, as shown inFIG. 9B , sends amessage 930 that includes end user ID data, to thecontent provider 120 that hosts the selected subscription data campaign. -
Content provider 120, using the received data identifyingend user 145, retrievesend user 145's user profile fromuser profile DB 125 and qualifies, using campaignsubscription rule engine 520,end user 145 to subscribe to the campaign based on the user's user profile (block 830).FIG. 9B depictscontent provider 120 retrieving 935end user 145's user profile fromuser profile DB 125, and qualifying 940, usingsubscription rule engine 520,end user 145 to subscribe to the user-selected subscription data campaign based onend user 145's user profile. Campaignsubscription rule engine 520 implements a set of subscription rules that determine which end users may, or may not, qualify to subscribe to a given subscription data campaign being offered by acontent provider 120 viacampaign portal server 110. The set of subscription rules, for example, may randomly choose which end users qualify to subscribe to the subscription data campaign when those end users have little or no data in their user profiles. For established end users, having extensive user profiles maintained byuser profile unit 510, the set of subscription rules implemented byrule engine 520 may qualify end users who previously utilized toll free data more effectively than other end users. For example, an end user who previously utilized 2 Gigabytes (GB) of free data usage allocated to him/her by watching two paid high definition (HD) movies may be qualified for the subscription data campaign, whereas another end user that only used ten percent of 2 GB of the free data usage allocated to him/her and spent nothing on paid content may be disqualified for the subscription data campaign. - If
content provider 120, using campaignsubscription rule engine 530, determines thatend user 145 is not qualified for a subscription to the user-selected subscription data campaign (NO—block 835), thencontent provider 120 sends a campaign disqualification message to campaign portal server 110 (block 840). Ifcontent provider 120, using campaignsubscription rule engine 530, determines thatend user 145 is qualified for a subscription to the user-selected subscription data campaign (YES—block 835), thencontent provider 120 sends a campaign qualification message to campaign portal server 110 (block 845), and continues atblock 850.FIG. 9B showscontent provider 120 returning a campaign qualification message 945 to campaignportal server 110. - At
block 850,campaign portal server 110 generates an authorization token that includes an ID ofend user 145, an ID of the subscribed campaign, and a data quota allocated to the user for the subscribed campaign.Campaign portal server 110 stores the generated authorization token, in association withend user 145's registered account, in campaign portal DB 115 (block 855), and encrypts the authorization token and sends the encrypted authorization token toend user 145's campaignportal client app 150, and tocontent provider 120 that is hosting the selected campaign (block 860).FIG. 9B showscampaign portal server 110 generating 950 the authorization token, storing the token incampaign portal DB 115, and encrypting the token.FIG. 9B further depictscampaign portal server 110 sending amessage 955 that includes the encrypted authorization token touser device 105, and amessage 960 that also includes the encrypted authorization token tocontent provider 120. - Campaign
portal client app 150 stores the received encrypted authorization token and a Uniform Resource Locator (URL) associated with the subscribed data campaign (block 865).FIG. 9B depictsuser device 105, after receivingmessage 955, storing 965 the authorization token and campaign subscription information locally atuser device 105.Content provider 120 decrypts received authorization token and stores inend user 145's user profile (block 870).FIG. 9B shows content provider, after receivingmessage 960, decrypting 970 the authorization token and storing inend user 145's user profile inuser profile DB 125. -
Blocks 810 through 870 ofFIGS. 8A-8C may be selectively repeated byend user 145 for signing into end user's registered toll free account and for selecting a different current toll free subscription data campaign for requesting a subscription. -
FIGS. 10A and 10B are flow diagrams of an exemplary process forend user 145 to select and receive media content associated with a subscription data campaign to whichend user 145 has previously successfully subscribed. The exemplary process ofFIGS. 10A and 10B may be implemented byuser device 105,campaign portal server 110 andcontent provider 120. The exemplary process ofFIGS. 10A and 10B is described below with reference to the diagram ofFIG. 11 . - The exemplary process may include
user device 105, based on end user input, executing campaignportal client app 150 and receivingend user 145's sign-in to the registered toll free account (block 1000). Further, campaignportal client app 150 determines ifend user 145 has selected a subscribed campaign (block 1005).FIG. 11 depicts campaignportal client app 150 receiving 1100end user 145's sign-in, and receiving 1105end user 145's selection of a previously subscribed campaign. - If
end user 145 has selected a specific subscribed campaign (YES—block 1010), then campaignportal client app 150 sends the campaign's encrypted authorization token to content provider 120 (block 1010). Campaignportal client app 150 retrieves the encrypted authorization token for the selected campaign (previously received inblocks FIG. 8C ) and, as shown inFIG. 11 , sends amessage 1110 that includes the encrypted authorization token tocontent provider 120. -
Content provider 120 decrypts the received authorization token and authenticates the token (block 1015).Content provider 120 uses a decryption algorithm that corresponds to the encryption algorithm used bycampaign portal server 110 to decrypt the authorization token. Authentication of the token may include using various different known authentication techniques for authenticating the token. -
Content provider 120 determines if the selected campaign is currently live (block 1020). Each subscription data campaign may be offered for subscription for a only certain period of time, and may then only be available for delivery at a certain time. The certain time may be a pre-specified day and time, or it may be upon the occurrence of a certain event (e.g., when a threshold number of subscriptions have been received).FIG. 11 depictscontent provider 120 determining 1115 if the selected subscription data campaign is live. If the selected campaign is not live (NO—block 1020), thencontent provider 120 sends a message touser device 105 identifying when the selected campaign begins (block 1025). Ifcontent provider 120 determines that the selected campaign is currently live (YES—block 1020), thencontent provider 120 matches the authorization token to a user profile and provides media for the selected campaign toend user 145's campaign portal client app 150 (block 1030).Content provider 120, after decryption of the authorization token, extracts the end user ID from the authorization token and performs a lookup intouser profile DB 125 to identify anentry 300 having an identifier infield 310 that matches the end user ID extracted from the authorization token.Content provider 120 compares the decrypted authorization token with the authorization tokens stored in fields 330-1 through 330-m of the identifiedentry 300 to find a matching authorization token. Once the matching authorization token is found in fields 330-1 through 330-m of the identifiedentry 300,content provider 120 may extract the campaign identifier from the decrypted authorization token, retrieve the media content from storage that corresponds to the campaign identifier, and begin delivery of the media content touser device 105.FIG. 11 depictscontent provider 120 matching 1125 the decrypted authorization token to a user profile, and sending the media 1130 for the selected campaign touser device 105. -
Content provider 120meters end user 145's available quota in real time (block 1035). Ascontent provider 120 delivers the media content associated with the selected subscription data campaign toend user 145 atuser device 105,content provider 120 meters the network usage (e.g., measures the used quantity of data) and subtracts the metered data from the quota of free data allocated toend user 145 upon subscribing to the subscription data campaign. For example, if 2 MB of the media content has just been delivered touser device 105, and a 2 GB quota of free data was originally allocated toend user 145, then content provider may subtract the 2 MB from the 2 GB to obtain the resulting remaining amount of the toll free quota that is available.FIG. 11 depictscontent provider 120metering 1135end user 145's available quota of free data. -
Content provider 120 determines ifend user 145's available quota is exhausted (block 1040).Content provider 120 checks the remaining amount of the free quota that is available, fromblock 1035, and determines if the amount is zero. If the available quota is exhausted (YES—block 1040), thencontent provider 120 sends a quota exhaustion warning message to end user 145 (block 1045).Content provider 120 sends the quota exhaustion warning message touser device 105 vianetwork 140 to warnend user 145 that if there is any further media content associated with the subscription data campaign to be delivered (i.e., when the amount of data of the media content exceeds the quota of free data allocated to the subscriber), thenend user 145 will be charged for regular data usage according to his data usage plan with the network service provider. - If
end user 145's available quota is not exhausted (NO—block 1040), then campaignportal client app 150 continues to measureend user 145's data usage locally (block 1050). Campaignportal client app 150, as media content for the subscription data campaign is delivered touser device 105 vianetwork 140, measures the incoming quantity of media data to determine the current local usage.FIG. 11 depicts campaignportal client app 150 ofuser device 105 measuring 1140end user 145's local data usage, associated with the delivered media content. Campaignportal client app 150 sends an indication of measured data usage, and the encrypted authorization token forend user 145 and the subscription data campaign, to update billing system 130 (block 1055).FIG. 11 showsuser device 105 sending a message 1145 tobilling system 130 that includes an update ofend user 145's data usage associated with the delivered media content for the subscription data campaign. Message 1145 may include the current measured data usage, and the encrypted authorization token associated with the subscription data campaign. -
Billing system 130 matches the received encrypted authorization token to a user profile, and subtracts the measured data usage from the allocated data quota (block 1060). Upon receipt of the message fromuser device 105,billing system 130 retrieves a user profile frombilling DB 135 that corresponds to the authorization token and subtracts the measured data usage, received fromuser device 105, from the remaining amount of the previously allocated data quota for the subscription data campaign.FIG. 11 depictsbilling system 130 matching 1150 the encrypted authorization token to a particular user profile, and subtracting the measured data usage. - The foregoing description of implementations provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. For example, while series of blocks have been described with respect to
FIGS. 6, 8A-8C, 10A and 10B , the order of the blocks may be varied in other implementations. Moreover, non-dependent blocks may be performed in parallel. - Certain features described above may be implemented as “logic” or a “unit” that performs one or more functions. This logic or unit may include hardware, such as one or more processors, microprocessors, application specific integrated circuits, or field programmable gate arrays, software, or a combination of hardware and software.
- No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise.
- To the extent the aforementioned embodiments collect, store or employ personal information provided by individuals, it should be understood that such information shall be used in accordance with all applicable laws concerning protection of personal information. Additionally, the collection, storage and use of such information may be subject to consent of the individual to such activity, for example, through well known “opt-in” or “opt-out” processes as may be appropriate for the situation and type of information. Storage and use of personal information may be in an appropriately secure manner reflective of the type of information, for example, through various encryption and anonymization techniques for particularly sensitive information.
- In the preceding specification, various preferred embodiments have been described with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the invention as set forth in the claims that follow. The specification and drawings are accordingly to be regarded in an illustrative rather than restrictive sense.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/644,267 US9444948B1 (en) | 2015-03-11 | 2015-03-11 | Portal for toll free media subscription campaigns |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/644,267 US9444948B1 (en) | 2015-03-11 | 2015-03-11 | Portal for toll free media subscription campaigns |
Publications (2)
Publication Number | Publication Date |
---|---|
US9444948B1 US9444948B1 (en) | 2016-09-13 |
US20160269567A1 true US20160269567A1 (en) | 2016-09-15 |
Family
ID=56881424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/644,267 Expired - Fee Related US9444948B1 (en) | 2015-03-11 | 2015-03-11 | Portal for toll free media subscription campaigns |
Country Status (1)
Country | Link |
---|---|
US (1) | US9444948B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021107990A1 (en) * | 2019-11-27 | 2021-06-03 | Campaign Registry, Inc. | Methods and systems for distributing messaging content using telecommunication networks |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10320882B2 (en) | 2017-08-29 | 2019-06-11 | At&T Intellectual Property I, L.P. | Uniform resource locator discovery and tracking for managing sponsored data |
CN112005237B (en) | 2018-04-30 | 2024-04-30 | 谷歌有限责任公司 | Secure collaboration between processors and processing accelerators in a secure zone |
US11494485B2 (en) | 2018-04-30 | 2022-11-08 | Google Llc | Uniform enclave interface |
EP3788528B1 (en) * | 2018-04-30 | 2022-12-14 | Google LLC | Enclave interactions |
US10505737B1 (en) * | 2018-06-04 | 2019-12-10 | Syniverse Technologies, Llc | System and method for blockchain-based consent and campaign management |
JP7079813B2 (en) * | 2020-06-10 | 2022-06-02 | ソフトバンク株式会社 | Communication equipment, programs, systems, and methods |
CN114710557A (en) * | 2022-04-12 | 2022-07-05 | 树根互联股份有限公司 | Data transmission method and device and data release equipment |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9014663B2 (en) * | 2012-09-28 | 2015-04-21 | Alcatel Lucent | Sponsored data plan management |
US20140130182A1 (en) * | 2012-11-02 | 2014-05-08 | Genesismedia Llc | Controlled Grant Of Access To Media Content |
US8826347B1 (en) * | 2013-08-22 | 2014-09-02 | aioTV, Inc. | Method and system for creating video channels for delivery of content from multiple platforms |
US9210154B2 (en) * | 2014-02-28 | 2015-12-08 | Edgecast Networks, Inc. | Providing localized content delivery with remote token authentication |
US10931543B2 (en) * | 2014-04-28 | 2021-02-23 | Tangoe Us, Inc. | Data usage analysis and reporting |
US9716623B2 (en) * | 2014-05-22 | 2017-07-25 | Verizon Patent And Licensing Inc. | Automatic and secure activation of a universal plug and play device management device |
-
2015
- 2015-03-11 US US14/644,267 patent/US9444948B1/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021107990A1 (en) * | 2019-11-27 | 2021-06-03 | Campaign Registry, Inc. | Methods and systems for distributing messaging content using telecommunication networks |
Also Published As
Publication number | Publication date |
---|---|
US9444948B1 (en) | 2016-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9444948B1 (en) | Portal for toll free media subscription campaigns | |
JP6694018B2 (en) | Method and apparatus for collecting distributed user information for media impressions and search terms | |
US20240114210A1 (en) | System to establish a network of nodes and participants for dynamic management of media content rights | |
US9003189B2 (en) | Trusted third party client authentication | |
US11966951B2 (en) | Systems, methods, and devices for digital advertising ecosystems implementing content delivery networks utilizing edge computing | |
US9055314B2 (en) | Secure transfer of credit card information | |
US9202230B2 (en) | Techniques for monetizing anonymized context | |
US9396482B2 (en) | Data usage plan associated with user device | |
US20140331252A1 (en) | Entitlement management for video customers | |
US9083726B2 (en) | Automatic content publication and distribution | |
AU2019204235A1 (en) | Content easement and management system for internet access providers and premise operators | |
US20150150038A1 (en) | Video content protection | |
US20170054726A1 (en) | Method and system for providing access to an online resource | |
US20140208399A1 (en) | Method and system for accessing a computing resource | |
CA2942681A1 (en) | System and methods for enabling sponsored data access across multiple carriers | |
KR20150070387A (en) | Publication and removal of attributes in a multi-user computing system | |
US20150046939A1 (en) | Seamless multi-channel tv everywhere sign-n | |
US20150039505A1 (en) | Dynamic trial subscription management | |
US20140165209A1 (en) | Digital content delivery platform for multiple retailers | |
US20130145383A1 (en) | Multi-screen video | |
US20150356589A1 (en) | Coupon management for digital content subscribers | |
US9122844B2 (en) | Proxy device for managing digital rights | |
US10832258B2 (en) | Bounty tracking for referral | |
US10237080B2 (en) | Tracking data usage in a secure session | |
EP4191945A1 (en) | Methods of linking data with a token associated with a user account, methods of supplying relevant content, and servers and computer software configured to perform the methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: VERIZON PATENT AND LICENSING INC., NEW JERSEY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:REN, DAHAI;KELLY, SUSAN;PALMER, OKENO;AND OTHERS;SIGNING DATES FROM 20150302 TO 20150310;REEL/FRAME:035135/0327 |
|
ZAAA | Notice of allowance and fees due |
Free format text: ORIGINAL CODE: NOA |
|
ZAAB | Notice of allowance mailed |
Free format text: ORIGINAL CODE: MN/=. |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |