Microsoft DirectX 8.1 (C++) |
This topic applies to Windows XP Home Edition and Windows XP Professional only.
Whenever a new tune request becomes active, the Video Control notifies the CA Manager, which notifies all of the policies. At that point, any policy can impose a denial and block the request. The client application should provide the user with a list of tolls, so that the user can select which tolls he or she wants to pay. To unblock a request, the user must resolve every denial. This prevents one policy from overriding another; for example, paying a viewing fee does not override a parental rating.
The CA Manager fires events whenever there is a change in the conditional access state; for example, whenever a policy denies a request or adds a toll. The application should listen for these events so that it can respond appropriately.
Multiple Tolls
There might be more than one way to resolve a particular denial. For example, a station might offer both a subscription rate and a one-time viewing fee. If so, the policy creates two separate tolls, and the user can resolve the denial by paying either toll. On the other hand, a policy is not required to provide any tolls. A denial with no tolls is called an absolute denial, and cannot be removed by the user.
Transient Denials
When a policy first receives a tune request, it might not have all the information that it needs to make a decision. For example, a parental policy needs the program’s content rating, which is embedded in a program stream. Until the program starts, the policy cannot determine whether to block the request. In that case, the policy can create a transient denial.
The application should disregard a transient denial; that is, it should not block the user, although it might display information about the denial. Later, the policy will either remove the denial or change its state to denied. Both actions trigger events, so the application can respond appropriately.
Paid Tolls
The CA Manager stores a collection of paid tolls. These enable the user to review his or her payment history. There might also be situations when a user requests a refund for a paid toll. The toll (or the owning policy) decides whether to grant the refund, and implements the refund mechanism. The details will depend on the type of the policy, the payment method, and so forth.