The present disclosure relates to communication devices, and more particularly, to providing improved apparatus and methods of managing licensed items, including content and/or a service.
Although the described aspects relate generally to communication devices, an example use case with mobile devices illustrates problems with current licensing models. Mobile operators or mobile device carriers play a major part in the telecommunication industry today. Initially, such mobile operators concentrated their efforts on generating revenue by increasing their subscriber base. However, it will be appreciated that in several countries, the scope for increasing the subscriber base has now become very limited, as the market has reached close to saturation point. As a result, the mobile operators have been branching into providing value added services to subscribers, in order to increase their revenue.
One means of generating increased revenue is through the sales of premium content and/or services to users, such as ringtones, wallpaper, games, etc. These items may be provided by the mobile operators themselves, or by business entities who may operate in collaboration with the mobile operators to provide such items. In some aspects, for example, the content and/or service items may be available for download to a user's communication device, such as a mobile device, upon payment of a fee.
Many benefits such as maximizing the potential earnings for sales may accrue upon recommending and distributing to users content and/or services that are of interest to the users. The user can have a better experience using the user's communication device in light of these content and/or services. Licensing of such content and/or services can provide an incentive for providers to create such offerings.
The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
In one aspect, the present disclosure provides a method for licensing by detecting a licensable item on a device and accessing a legacy license associated with the licensable item. The legacy license corresponds to a legacy licensing policy. The method further includes accessing a layered license associated with the licensable item wherein the layered license corresponds to a layered licensing policy. The method further includes integrating the legacy licensing policy and the layered licensing policy into an integrated license, and enforcing the integrated license.
In another aspect, the present disclosure provides at least one processor for licensing. A first module detects a licensable item on a device. A second module accesses a legacy license associated with the licensable item, wherein the legacy license corresponds to a legacy licensing policy. A third module accesses a layered license associated with the licensable item, wherein the layered license corresponds to a layered licensing policy. A fourth module integrates the legacy licensing policy and the layered licensing policy into an integrated license. A fifth module enforces the integrated license.
In an additional aspect, the present disclosure provides a computer program product for licensing. A non-transitory computer-readable storage medium stores instructions. At least one instruction causes a computer to detect a licensable item on a device. At least one instruction causes the computer to access a legacy license associated with the licensable item, wherein the legacy license corresponds to a legacy licensing policy. At least one instruction causes the computer to access a layered license associated with the licensable item, wherein the layered license corresponds to a layered licensing policy. At least one instruction causes the computer to integrate the legacy licensing policy and the layered licensing policy into an integrated license. At least one instruction causes the computer to enforce the integrated license.
In a further aspect, the present disclosure provides an apparatus for licensing. The apparatus comprises means for detecting a licensable item on a device. The apparatus comprises means for accessing a legacy license associated with the licensable item, wherein the legacy license corresponds to a legacy licensing policy. The apparatus comprises means for accessing a layered license associated with the licensable item, wherein the layered license corresponds to a layered licensing policy. The apparatus comprises means for integrating the legacy licensing policy and the layered licensing policy into an integrated license. The apparatus comprises means for enforcing the integrated license.
In yet another aspect, the present disclosure provides an apparatus for licensing. An invoking component detects a licensable item on a device. A license enforcement component accesses a legacy license associated with the licensable item. The legacy license corresponds to a legacy licensing policy. The license enforcement component further accesses a layered license associated with the licensable item, wherein the layered license corresponds to a layered licensing policy. The license enforcement component additionally integrates the legacy licensing policy and the layered licensing policy into an integrated license, and enforces the integrated license.
To the accomplishment of the foregoing and related ends, the one or more aspects comprise the features hereinafter described in detail and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative features of the one or more aspects. These features are indicative, however, of but a few of the various ways in which the principles of various aspects may be employed, and this description is intended to include all such aspects and their equivalents.
The disclosed aspects will hereinafter be described in conjunction with the appended drawings, provided to illustrate and not to limit the disclosed aspects, wherein like designations denote like elements.
Described herein is a layered licensing methodology and apparatus for dynamically modifying an extent of a license, a license policy, or a license feature for a licensable item on a communication device while maintaining baseline license enforcement by a legacy licensing component. In an exemplary aspect, a layered license agent on the communication device, such as a mobile device, may be located at a layer above a legacy licensing component, and provides complementary extensions to the legacy license component in synchronous or asynchronous coordination with a remote license server. In other words, in some aspects, the layered licensing agent may operate in combination with the legacy licensing component to enforce licensing policies from both new and legacy licensing infrastructures/systems. Thereby, a legacy licensing network infrastructure can continue to support a mixed population of mobile devices with a portion only being capable of legacy licensing.
In particular, in one example, a uniform licensing implementation is created for new and old devices, including existing devices having a different (e.g., legacy) licensing scheme. As such, a new licensable item distribution system can address the largest number of devices possible, including those devices already in the field operable with the legacy licensing scheme, while offering expanded opportunities for content and/or service providers and users through a new or layered licensing scheme. For instance, the new licensable item distribution system can include facilities to license a licensable item (e.g., content and/or services) in a variety of ways through the use of a layered license agent that has intelligence to cooperatively enforce new layered licensing policy in combination with the legacy licensing policy.
In other words, the described apparatus and methods of layered licensing can provide a flexible solution that balances complexity and inter-operability. In this manner, implementation details, system analysis, and code re-use may be improved in a licensable item distribution system that can use the same dynamic protections across new and legacy devices versus one where a distinct interoperability-based implementation is required for legacy devices.
In one aspect, layering the new scheme on top of code licensed by the legacy system provides a mechanism for inter-operation between the licensing systems without undue cost and complexity. According to one aspect, in new devices, the layered license agent can use the execution optimizations of the legacy license system while disabling enforcement of legacy licenses by generating valid unlimited use licenses in the legacy system and applying the unlimited use licenses to all licensable items (e.g., content and/or services) protected by the new scheme. As far as the underlying legacy licensing system and management software is aware, all of the newly protected licensable items are fully licensed. Only the new system (e.g., the layered licensing agent) is aware of the restrictions placed on the licenses for the newly protected licensable item. Any licensable item on these devices licensed by the legacy system will continue to function and be completely unaware of the new licensing system that has been added. It should be noted that the unlimited use legacy license is but one example, and that other types of legacy licenses with different policies may be used in conjunction with the layered license agent, such that some license enforcement is managed by the legacy licensing component while other license enforcement is managed by the layered license agent.
Various aspects are now described with reference to the drawings. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of one or more aspects. It may be evident, however, that the various aspects may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing these aspects.
With initial reference to
It should be noted that as used herein, a “licensable item” may include a content item (“content”) or a service item (“service”), each respectively corresponding to an effective, integrated license 135 having one or more layered licensing policies 154 and one or more legacy licensing policies 152. For instance, each layered licensing policy 154 corresponds to a new licensing scheme or system, for example, while each legacy licensing policy 152 corresponds to a legacy licensing scheme or system. Further, each of the layered licensing policies 154 and the legacy licensing policies 152, for example, may define one or more of a rule, a condition, a parameter, instructions, etc., corresponding to desired licensing enforcement for the respective licensable item 130. Accordingly, the combination of the one or more layered licensing policies 154 and the one or more legacy licensing policies 152 defines the effective, integrated license 135 that may be used by layered licensing component 133 and/or legacy licensing component 125 to perform licensing enforcement for the corresponding licensable item 130.
As used in this disclosure, the term “content” includes, at least, any type of application, multimedia file, image file, executable, program, web page, script, document, presentation, message, data, meta-data, or any other type of media or information that may be rendered, processed, or executed on a device. Also, the term “service” includes, at least, providing of an action or an accommodation, including in electronic or non-electronic form. For example, in one aspect, a service may include providing access, such as access to a network server, access to a physical location such as a building, a restricted area, etc. For instance, in one aspect that should not be construed as limiting, a use case of providing access to a network server may include a scenario where a user is a player in a game, and access is provided to a network server to enable the user to participate in a network-based multi-player service for the game provided by the network server. Additionally, for instance, in an aspect that should not be construed as limiting, a use case of providing access to a physical location may include providing access and/or a membership to a gym.
As used in this disclosure, the term “licensable item” or “licensed item” refers to content, or to a service, or to both, including items that can be used, executed, distributed, accessed, modified, viewed, presented, etc., subject to a license.
Also, as used in this disclosure, the term “license” is used to describe an enabling key, datum, object, policy, or authenticated message that allows use of a licensable item. The license can be a specific implementation of Data Rights Management (DRM) executed by a license agent on the device with at least intermittent coordination with a licensing server. DRM, and thus the term license as used herein, can refer to access control technologies that are used by hardware manufacturers, publishers, copyright holders and individuals to limit the use of digital content such as licensable content and/or services, as well as devices. The license can be used to describe any technology that inhibits uses of licensable content and/or services in a manner that is not desired or intended by an originating or distributing provider. Moreover, as noted above, a license may include one or more policies or policy objects, which may correspondingly define one or more rules, conditions, parameters, or instructions that characterize the license.
The communication network 104 can support legacy devices 114 that acquire one or more of the available licensable items 108 via a cellular access network 116 subject to a legacy license 118 from a legacy license system or legacy license store 120. Alternatively or in addition, legacy devices 114 can receive one or more of the available licensable items 108 via a wireless access network 124.
Similar to the legacy devices 114, the communication device 102 can comprise a legacy licensing component 125 having a downloader 126 for initially provisioning a non-transitory computer-readable storage medium, depicted as a memory 128, of the communication device 102 with licensable item 130 acquired from the available licensable items 108 and subject to a legacy license 118 from the legacy license store 120. One of ordinary skill in the art should appreciate that the provisioning can be made during original manufacture, manual installation, cellular, or wireless download, etc. In an aspect, for example, legacy license 118 may be defined by one or more legacy licensing policies 152. The communication device 102 can utilize a legacy license manager 131 that enables an application manager 132 to use the licensable item 130 according to the one or more legacy licensing policies 152.
Unlike the legacy devices 114, however, the communication device 102 can interact with a new license store 134 to implement advanced licensing terms or features by having a layered license component or layered license agent 133 that can update, modify, augment, enforce, etc., features defined by one or more layered licensing policies 154 associated with a licensable item 130 to define an effective integrated license 135. In an exemplary aspect, the communication device 102 does not access the legacy license store 120, but instead accesses new license store 134 and obtains a new license 119 for the licensable item 130. For example, the obtained new license 119 may be defined by one or more layered licensing policies 154. Correspondingly, in one aspect, the legacy license 118 as defined by one or more legacy licensing policies 152 is set to an unlimited license with a layered license 136 as defined by one or more layered licensing policies 154 providing specific license features (e.g., network connectivity, reporting requirements, allowable uses, etc.) for the licensable item 130.
Specifically, in one aspect, the communication device 102 can require a modification to one or more legacy licensing policies 152 in order to define the effective, integrated license 135 for the licensable item 130. For instance, a feature associated with the licensable item 130 may not have been provided for or may have been expired. Examples can include reporting of a status of a license policy, requiring network connectivity information by a license, or not implementing a timing requirement by the legacy license. Alternatively, the licensable item 130 can require an extension of a legacy licensing policy 152, such as a rule relating to access to a second category of use (e.g., upgrade, update, etc.) from an originally licensed first category of use (e.g., play, execute, present, display, etc.) allowed by the legacy license 118. Alternatively or in addition, the extension may relate to a license parameter defined by a legacy licensing policy 152, such as the term of the integrated license 135 (which may have expired after having been initially unexpired, based upon calendar date), number of uses, cumulative duration of use, etc. So, in this example, the layered license agent 133 may operate to define the effective, integrated license 135 to include the modification or extension, such as for an extended term on the communication device 102 in response to accessing the license that has expired, by obtaining one or more layered licensing policies 152.
Alternatively, a new download component 138 can provision the communication device 102 with the licensable item 130 from a new licensable item store 140 associated with the new license store 134. For instance, the hardware, firmware or software optimization provided by the legacy license manager 131 can be leveraged with a modification or replacement made for an application manager 132 that also looks to the layered license agent 133 for extra functionality. For instance, the legacy license 118 of the licensable item 130 can be unlimited but lack a license feature such as reporting license compliance or allowing an update, which functionality may be provided via layered licensing policy 154 and layered license agent 133.
In some aspects, the layered licensing component or agent 133 working together with, or overriding, the legacy licensing component 125, may be referred to as an integrated licensing component or agent 123. Moreover, according to one example, the layered licensing component or agent 133 or the integrated licensing component or agent 123 may define a single license agent at the device 102 that can enforce all of the licenses, e.g. legacy license 118 and layered license 136, and their corresponding policies, e.g. legacy licensing policy 152 and layered licensing policy 154, for any licensed items, e.g. licensable item 130, used on the device 102. Further, according to an example, such a single license manager or license agent may be configured to operate with different types of content, different types of services, content or services from different licensing authorities or systems, etc. In other words, in this aspect, the layered licensing component or agent 133 or the integrated licensing component or agent 123 may function as a universal or generic license manager or license agent, thereby eliminating or reducing the need for a plurality of different license managers or agents specific to different types of content or services, different licensing authorities, or different licensing systems.
In one aspect, the layered license agent 133 occasionally communicates with the remote license server 122 to reduce network data traffic. For example, the layered license agent 133, via a transceiver 142 of the communication device 102, can update the integrated license 135 after a selected period of time (e.g., hours, days, weeks, months, etc.). Alternatively or in addition, the layered license agent 133 via a transceiver 142 of the communication device 102 can update the integrated license 135 when a low cost or high bandwidth communication channel is available, depicted as a wireless link 144. Alternatively or in addition, the layered license agent 133 via a transceiver 142 of the communication device 102 can update the integrated license 135 on demand or as needed, as depicted via a cellular air link 146, with a confirmation 148 received back from the remote license server 122.
In an exemplary aspect, intelligent modification of the effective, integrated license 135 by the layered license agent 133 can utilize one or more types of communication during content acquisition, local license check, remote license check, or offline remote license check. Thereby, the layered license component 133 can modify the license (e.g., in the case where the legacy license may have expired, to extend the term) by performing a synchronous or asynchronous communication with the remote license server 122 with the request to use pending. For example, asynchronous communication can occur before the request or after the request. For synchronous communication, the layered license agent 133 can generate a user alert 150 for a delay imposed by the synchronous communication.
In one aspect, the communication device 102 can utilize licensable item 130 that is subject to a legacy licensing policy 152 or the layered licensing policy 154, or a combination of the legacy licensing policy 152 and the layered licensing policy 154 (e.g., the effective, integrated license 135).
By virtue of the foregoing, in
In one aspect, the license enforcement component 210 accesses a legacy license 212 that is set as an unlimited license and accesses a layered license 212 that provides for a network communication requirement.
In another aspect, the license enforcement component 210 accesses a legacy license and a layered license 216 that are both locally-stored.
In a further aspect, the license enforcement component 210 integrates the legacy licensing policy 214 and the layered licensing policy 218 by determining a combination of constraints, e.g. policies, imposed by both the legacy license 212 and the layered license 216.
In yet another aspect, the license enforcement component 210 accesses a null result for the legacy licensing policy 214 or the legacy license 212. The license enforcement component 210 thus integrates the legacy licensing policy 214 and the layered licensing policy 218 by determining a constraint imposed only by the layered license 216.
In another aspect, the license enforcement component 210 accesses the layered license 216 by accessing a remote license server 224 to receive at least a portion of the layered licensing policy 218 associated with the layered license 216. For example, the license enforcement component 210 performs a synchronous communication with the remote license server 224 while a request to use the licensable item 205 is pending, which can further include generating a user alert 226 on a user interface 228 for a delay imposed by the synchronous communication. Alternatively, the license enforcement component 210 can perform an asynchronous communication with the remote license server 224 prior to receiving a request to use the licensable item 205. In an additional aspect, the license enforcement component 210 can access the remote license server 224 by communicating via a cellular access node or via a wireless access point 230.
In one aspect, the license enforcement component 210 enforces at least one of a recall, deletion, update, transfer, upgrade, expiration, download or activation of a selected licensable item 206.
In another aspect, for example, the license enforcement component 210 enforces a term update policy of the integrated license 222, and in some aspect may perform updating a current term to one of a future calendar date, an additional duration of time, or an additional enumeration of uses.
In a further aspect, the license enforcement component 210 determines an item identifier 232 corresponding to the licensable item 205 and determines the legacy licensing policy 214 and the layered licensing policy 218 based upon a match between the item identifier 232 and a license identifier 234 corresponding to the licensable item 205. Alternatively, the license enforcement component 210 determines the item identifier 232 corresponding to the licensable item 205 and determines the legacy licensing policy 214 and the layered licensing policy 218 based upon a match between the item identifier 232 and a license type 236 corresponding to the licensable item 205.
In
With reference to
In
In one aspect, the invoking component 407 can be, for instance, a control component, an application manager (e.g., legacy or layered), a license manager, a content launcher, etc.
With particular reference to
With particular reference to
With particular reference to
With particular reference to
With particular reference to
In memory 616, a layered license agent 640 can augment a legacy license component 642 by modifying license 644 for content, depicted as an application 646 that were downloaded by downloader 648. An application manager 650 manages use, update, upgrade, deletion, etc., of the application 646.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
As used in this application, the terms “component”, “module”, “system”, and the like are intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a server and the server can be a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers.
In addition, the term application as used herein refers to computer software program in general and can further encompass data, configuration settings, etc., used by the computer software program. Examples include utilities such as e-mail, Short Message Service (SMS) text utility, chat interface, web browsers, calculators, viewers, media players, games, etc. In an exemplary aspect, application can refer to software that is suitable for use on a mobile device, especially to being downloaded via a Wireless Local Access Network (WLAN) or Wireless Wide Area Network (WWAN).
For clarity, examples herein denote applications that are locally stored on user equipment, mobile devices, handset, access terminals, etc. However, implementations can encompass applications that are remotely stored. Similarly, for clarity distributing of the applications to the mobile devices can be described as being wirelessly downloaded from a WWAN or WLAN or P2P. However, implementations can include wired distribution, manual insertion of non-transitory computer readable storage medium, and unlocking a previously installed software object.
The word “exemplary” is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs.
Various aspects will be presented in terms of systems that may include a number of components, modules, and the like. It is to be understood and appreciated that the various systems may include additional components, modules, etc. and/or may not include all of the components, modules, etc. discussed in connection with the figures. A combination of these approaches may also be used. The various aspects disclosed herein can be performed on electrical devices including devices that utilize touch screen display technologies and/or mouse-and-keyboard type interfaces. Examples of such devices include computers (desktop and mobile), smart phones, personal digital assistants (PDAs), and other electronic devices both wired and wireless.
In addition, the various illustrative logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
Furthermore, the one or more versions may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed aspects. The term “article of manufacture” (or alternatively, “computer program product”) as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. For example, computer readable media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips . . . ), optical disks (e.g., compact disk (CD), digital versatile disk (DVD) . . . ), smart cards, and flash memory devices (e.g., card, stick). Additionally it should be appreciated that a carrier wave can be employed to carry computer-readable electronic data such as those used in transmitting and receiving electronic mail or in accessing a network such as the Internet or a local area network (LAN). Of course, those skilled in the art will recognize many modifications may be made to this configuration without departing from the scope of the disclosed aspects.
The steps of a method or algorithm described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
In view of the exemplary systems described supra, methodologies that may be implemented in accordance with the disclosed subject matter have been described with reference to several flow diagrams. While for purposes of simplicity of explanation, the methodologies are shown and described as a series of blocks, it is to be understood and appreciated that the claimed subject matter is not limited by the order of the blocks, as some blocks may occur in different orders and/or concurrently with other blocks from what is depicted and described herein. Moreover, not all illustrated blocks may be required to implement the methodologies described herein. Additionally, it should be further appreciated that the methodologies disclosed herein are capable of being stored on an article of manufacture to facilitate transporting and transferring such methodologies to computers. The term article of manufacture, as used herein, is intended to encompass a computer program accessible from any computer-readable device, carrier, or media.
It should be appreciated that any patent, publication, or other disclosure material, in whole or in part, that is said to be incorporated by reference herein is incorporated herein only to the extent that the incorporated material does not conflict with existing definitions, statements, or other disclosure material set forth in this disclosure. As such, and to the extent necessary, the disclosure as explicitly set forth herein supersedes any conflicting material incorporated herein by reference. Any material, or portion thereof, that is said to be incorporated by reference herein, but which conflicts with existing definitions, statements, or other disclosure material set forth herein, will only be incorporated to the extent that no conflict arises between that incorporated material and the existing disclosure material.
The present application for patent is related to the following co-pending U.S. patent application “Apparatus and Method of In-Application Licensing” by Mahan, et al., having Attorney Docket No. 103100U2, filed concurrently herewith, assigned to the assignee hereof, and expressly incorporated by reference herein.