Personal communication devices such as smartphones and tablet computers, for example, are now widely utilized as portable entertainment systems. One of the benefits enjoyed by users of such devices is that access to media content, such as movie or television (TV) content, is more available than ever before. Further to increasing the availability of such content are content subscription services that may entitle a subscriber to access a large library of movies or TV episodes.
There are provided systems and methods for mediating entitlement transfers among affiliated domains, substantially as shown in and/or described in connection with at least one of the figures, and as set forth more completely in the claims.
The following description contains specific information pertaining to implementations in the present disclosure. One skilled in the art will recognize that the present disclosure may be implemented in a manner different from that specifically discussed herein. The drawings in the present application and their accompanying detailed description are directed to merely exemplary implementations. Unless noted otherwise, like or corresponding elements among the figures may be indicated by like or corresponding reference numerals. Moreover, the drawings and illustrations in the present application are generally not to scale, and are not intended to correspond to actual relative dimensions.
Relocation, whether undertaken enthusiastically in the pursuit of opportunity, or dutifully in response to employment imposed necessity or a military service obligation, can be an initially jarring and disorienting experience. Consumption and enjoyment of media content that is familiar during such times can be one significant source of reassurance and comfort in an otherwise strange environment. However, due to the obstacles typically encountered by users seeking to access content to which they have acquired an entitlement in their original home country, when residing abroad, international relocation can be particularly disconcerting. For example, a provider of media content will typically distribute media content using different and independent content delivery networks (CDNs) in different international markets. As a result, an entitlement to media content acquired by a user in the United States, for example, may not enable the user to access that media content when residing in another country, and vice versa.
The present application provides a solution for mediating entitlement transfers between affiliated domains that overcomes the drawbacks and deficiencies in the conventional art. It is noted that, as used in the present application, the term “domain” refers to an independently administered network having its own protocols. Moreover, the term “affiliated domains” refers to two or more independently administered networks having common ownership, or common membership in an organization. It is further noted that, as used in the present application, the term “entitlement” refers to any acquired right by a user to access, possess, or utilize an asset. Thus, an entitlement may include one or more of the following: ownership of an asset, a license to utilize an asset, a membership or subscription conferring a right of access to one or more assets, or a rental or lease agreement conferring such a right, for example. Moreover, in some implementations, an entitlement may include a right to utilize a content delivery network (CDN) or other media content distribution infrastructure of a domain.
It is also noted that, as used in the present application, the terms “automation,” “automated,” and “automating” refer to systems and processes that do not require the participation of a human user, such as a human administrator. Although, in some implementations, a human administrator may intervene in the transfer of an entitlement by the systems and according to the methods described herein, that human involvement is optional. Thus, the methods described in the present application may be performed under the control of hardware processing components of the disclosed systems.
As further shown in
In addition,
It is noted that although the implementation shown in
The expression “computer-readable non-transitory storage medium,” as used in the present application, refers to any medium, excluding a carrier wave or other transitory signal that provides instructions to hardware processor 104 of computing platform 102. Thus, a computer-readable non-transitory medium may correspond to various types of media, such as volatile media and non-volatile media, for example. Volatile media may include dynamic memory, such as dynamic random access memory (dynamic RAM), while non-volatile memory may include optical, magnetic, or electrostatic storage devices. Common forms of computer-readable non-transitory media include, for example, optical discs, RAM, programmable read-only memory (PROM), erasable PROM (EPROM), and FLASH memory.
It is also noted that although
According to the implementation shown by
System 100 is configured to mediate transfer of entitlement 154 to second affiliated domain 140 to enable user 150 to access asset 152 in second affiliated domain 140. In one such implementation, system 100 may correspond to one or more web servers, accessible over a packet-switched network such as the Internet, for example. Alternatively, system 100 may correspond to one or more computer servers supporting a private wide-area network (WAN), or included in another type of limited distribution network.
In various implementations, transfer of entitlement 154 to second affiliated domain 140 may be recorded in entitlement ledger 116 as ledger entry 118. Ledger entry 118 may provide a persistent record of the transfer of entitlement 154. Moreover entitlement ledger 116 may serve as a reference for the present status of entitlement 154, i.e., indicating whether entitlement 154 is active or has lapsed, for example, as well as identifying user 150 and/or other users having entitlement 154 and the domain or domains in which entitlement 154 may be asserted. In one implementation, entitlement ledger 116 may include a blockchain, for example, as known in the art.
In addition,
First affiliated domain 230, second affiliated domain 240, and entitlement 254 correspond respectively in general to first affiliated domain 130, second affiliated domain 140, and entitlement 154, in
Moreover, user device 251, request 256, access request 257, and asset 252, in
System 300 including first affiliated domain 330, second affiliated domain 340, and communication network 370 corresponds to system 200 including first affiliated domain 230, second affiliated domain 240, and communication network 270, in
Communication network 370 and network communication link 372 correspond respectively to communication network 270 and network communication link 272, in
In addition, entitlement ledger 316 and ledger entry 318, in
According to the implementation shown by
In various implementations, transfer of entitlement 254 to second affiliated domain 240/340 may be recorded in entitlement ledger 316 as ledger entry 318. Ledger entry 318 may provide a persistent record of the transfer of entitlement 254. Moreover entitlement ledger 316 may serve as a reference for the present status of entitlement 254, i.e., indicating whether entitlement 254 is active or has lapsed, for example, identifying user 250 and/or other users having entitlement 254, and identifying the domain or domains in which entitlement 254 may be asserted. In one implementation, entitlement ledger 316 may include a blockchain, for example, as known in the art.
Furthermore, in some implementations, the act of recording ledger entry 318 in entitlement ledger 316 may by substantially concurrently accompanied with broadcasting of ledger entry 318 to some or all other affiliated domains of system 200/300 as ledger entry broadcast 258. For example, in implementations in which ledger entry 318 is first recorded in entitlement ledger 316 of first affiliated domain 230/330, ledger entry broadcast 258 may be transmitted to all other affiliated domains of system 200/300 via communication network 270/370, i.e., second and third affiliated domains 240/340 and 260. As a, result each instantiation of entitlement ledger 316 stored locally in each of the affiliated domains of system 200/300 may be substantially concurrently updated so as to agree with another.
The functionality of software code 110/310 will be further described by reference to
Referring now to
As also noted above, entitlement 154/254 may include any of ownership of asset 152/252, a license to utilize asset 152/252, a membership or subscription conferring a right of access to asset 152/252, or a rental or lease agreement conferring such a right, for example. Moreover, in some implementations, entitlement 154/254 may include a right to utilize a CDN or other media content distribution infrastructure of affiliated domains 130/230/330, 140/240/340, and 260.
Request 156/256 may be received on behalf of user 150/250 from second domain 140/240/340 via one of communication network 120 or 270/370. Request 156/256 may be received by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330.
Flowchart 480 continues with authenticating, in response to request 156/256, second domain 140/240/340 as one of affiliated domains 130/230/330, 140/240/340, and 260 (action 482). Second affiliated domain 140/240/340 may be authenticated by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330, and using authentication module 114/314. In one implementation, for example authentication module 114/314 may authenticate second affiliated domain 140/240/340 by reference to domain registry 112/312, which may include identification data for all of affiliated domains 130/230/330, 140/240/340, and 260.
Flowchart 480 continues with authenticating, in response to request 156/256, entitlement 154/254 in first affiliated domain 130/230/330 (action 483). Entitlement 154/254 may be authenticated by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330, and using authentication module 114/314. Entitlement 154/254 may be authenticated by authentication module 114/314 by reference to entitlement ledger 116/316, for example.
Flowchart 480 continues with transferring, in response to authenticating second affiliated domain 140/240/340 and entitlement 154/254, entitlement 154/254 to second affiliated domain 140/240/340 to enable user 150/250 to access asset 152/252 in second affiliated domain 140/240/340 (action 484). For example, where entitlement 154/254 includes a right of user 150/250 to utilize a CDN of first affiliated domain 130/230/330, transfer of entitlement 154/254 to second affiliated domain 140/240/340 may endow user 150/250 with a right to utilize a CDN of second affiliated domain 140/240/340 corresponding to the CDN of first affiliated domain 130/230/330.
In some implementations, transfer of entitlement 154/254 to second affiliated domain 140/240/340 results in user 150/250 having entitlement 154/254 to asset 152/252 in second affiliated domain 140/240/340, but not in first affiliated domain 130/230/330. That is to say, in those implementations, transfer of entitlement 154/254 to second affiliated domain 140/240/340 causes entitlement 154/254 to lapse, either permanently or temporarily, in first affiliated domain 130/230/330.
Alternatively, in some implementations, transfer of entitlement 154/254 to second affiliated domain 140/240/340 results in user 150/250 having entitlement 154/254 to asset 152/252 in second affiliated domain 140/240/340 while retaining entitlement 154/254 in first affiliated domain 130/230/330. In other words, in some to implementations, transfer of entitlement 154/254 to one or more other affiliated domains can result in replication of entitlement 154/254 in each of those respective affiliated domains. Entitlement 154/254 may be transferred to second affiliated domains 140/240/340 by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330, and via communication network 120/270/370.
Flowchart 480 continues with generating ledger entry 118/318 corresponding to the transfer of entitlement 154/254, in entitlement ledger 116/316 (action 485). Generation of ledger entry 118/318 may be performed by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330.
Although not included in flowchart 480, in implementations in which communication network 270/370 takes the form of a P2P network, the present method can further include broadcasting ledger entry 118/318 to all other affiliated domains 140/240/340 and 260 via communication network 270/370, for example as ledger entry broadcast 258. As shown by
It is noted that, in some implementations, flowchart 480 may conclude with action 485, or with the subsequent broadcasting of ledger entry 118/318 described above. However, in some implementations, flowchart 480 can continue with receiving access request 157/257 from user 150/250 to access asset 152/252 from second affiliated domain 140/240/340 (action 486). Access request 157/257 may be received from user 150/250 via one of communication network 120 or 270/370. Access request 157/257 may be received by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330.
Flowchart 480 can conclude with one or more of streaming and rendering asset 152/252 in response to receiving access request 157/257 (action 487). As noted above, asset 152/252 may take the form of media content, such as movie(s) and/or TV content, for example. In those implementations, asset 152/252 may be streamed to user device 151/251 via one of communication network 120 or 270/370. Moreover, in those implementations, asset 152/252 may be rendered on user device 151/251.
Asset 152/252 may be streamed to user device 151/251 by software code 110/310, executed by hardware processor 104 of computing platform 102, or executed by hardware processor 334 of computing platform 332 of first affiliated domain 230/330. Asset 152/252 may be rendered on user device 151/251, by user device 151/251, in response to streaming of asset 152/252 by software code 110/310.
It is emphasized that the method presented by flowchart 480 can be used to automate the transfer of entitlement 154/254 between or among affiliated domains 130/230/330, 140/240/340, and 260 in response to request 156/256. As a result, the present inventive concepts advantageously enable user 150/250 to exercise an entitlement acquired in first affiliated domain 130/230/330 in one or more other affiliated domains, without requiring the intervention or assistance of a human system administrator.
Thus, the present application discloses a solution for mediating entitlement transfers between affiliated domains. The present solution includes receiving a request for an asset on behalf of a user having an entitlement to the asset in a first of multiple affiliated domains, the request being received from a second domain where the user does not have the entitlement. The present solution also includes authenticating, in response to the request, the second domain as one of the affiliated domains, authenticating, also in response to the request, the entitlement in the first domain. The authenticated entitlement can then be transferred to the second domain, thereby advantageously enabling the user to access the asset in the second domain. The present solution further includes generating a ledger entry corresponding to the transfer in an entitlement ledger providing a persistent record of transfers of the entitlement, as well as the present status of the entitlement.
From the above description it is manifest that various techniques can be used for implementing the concepts described in the present application without departing from the scope of those concepts. Moreover, while the concepts have been described with specific reference to certain implementations, a person of ordinary skill in the art would recognize that changes can be made in form and detail without departing from the scope of those concepts. As such, the described implementations are to be considered in all respects as illustrative and not restrictive. It should also be understood that the present application is not limited to the particular implementations is described herein, but many rearrangements, modifications, and substitutions are possible without departing from the scope of the present disclosure.