How to get 'MeterChallenge' value from client ?
WMPTalk.com Forum Index WMPTalk.com
Discuss Windows Media Player
 
 FAQFAQ   MemberlistMemberlist     RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 
Google
 
Web wmptalk.com
How to get 'MeterChallenge' value from client ?

 
Post new topic   Reply to topic    WMPTalk.com Forum Index -> DRM
Author Message
HELP ME
Guest





Posted: Tue Nov 16, 2004 10:08 am    Post subject: How to get 'MeterChallenge' value from client ? Reply with quote

One question about Metering Service of DRM10.
How to get 'MeterChallenge' value from client ?

In the document of WMRM10SDK there are any sample code of Metering Service.
One of them is as belows;


'"""""""""""""""""""""""""""""""""""""""""""""""""""""
' Set variables.
'"""""""""""""""""""""""""""""""""""""""""""""""""""""
MeterChallenge = "<Replace with a metering challenge from the client>"
MeterCert = "<Replace with your metering certificate>"
MASPrivateKey = "<Replace with the private key for your service>"
'"""""""""""""""""""""""""""""""""""""""""""""""""""""


Three values are set you see.
I read all documents and understand that 'MeterCert' will be published from
Microsoft.
And 'MASPrivateKey' will be generated from my DRM10 Server.
BUT I could not find how to get 'MeterChallenge' from client ...

Please help me.

Back to top
Alex
Guest





Posted: Wed Nov 17, 2004 2:25 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Once you have a metering cert from MS you can read the metering
challenge from the client using WMDMSDK (part of WMFSDK 9.5). Search
for GenerateMeterChallenge on msdn.microsoft.com . I think that there
is also a nice article that explains it all.

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<25FFF9A9-F255-4DE6-B2D8-078EB6448695@microsoft.com>...
Quote:
One question about Metering Service of DRM10.
How to get 'MeterChallenge' value from client ?

In the document of WMRM10SDK there are any sample code of Metering Service.
One of them is as belows;


'"""""""""""""""""""""""""""""""""""""""""""""""""""""
' Set variables.
'"""""""""""""""""""""""""""""""""""""""""""""""""""""
MeterChallenge = "<Replace with a metering challenge from the client>"
MeterCert = "<Replace with your metering certificate>"
MASPrivateKey = "<Replace with the private key for your service>"
'"""""""""""""""""""""""""""""""""""""""""""""""""""""


Three values are set you see.
I read all documents and understand that 'MeterCert' will be published from
Microsoft.
And 'MASPrivateKey' will be generated from my DRM10 Server.
BUT I could not find how to get 'MeterChallenge' from client ...

Please help me.
Back to top
HELP ME
Guest





Posted: Wed Nov 17, 2004 5:55 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Thanks Alex :-)

Please allow me one more question.
You said "you can read the metering challenge from the client using WMDMSDK
(part of WMFSDK 9.5)".
The client using WMDMSDK must be original application ?
WindowsMediaPlayer10 don't send "Metering Challenge" value to WMRM10 Server ?

As far as I survey WMP9 don't send "MeteringChallenge" without original
Plug-in of metering service , but WMP10 will send "MeteringChallenge".
If it is correct I want to know HOW to get MeteringChallenge form WMP10.



"Alex" wrote:
Quote:
Once you have a metering cert from MS you can read the metering
challenge from the client using WMDMSDK (part of WMFSDK 9.5). Search
for GenerateMeterChallenge on msdn.microsoft.com . I think that there
is also a nice article that explains it all.

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<25FFF9A9-F255-4DE6-B2D8-078EB6448695@microsoft.com>...
One question about Metering Service of DRM10.
How to get 'MeterChallenge' value from client ?

In the document of WMRM10SDK there are any sample code of Metering Service.
One of them is as belows;


'"""""""""""""""""""""""""""""""""""""""""""""""""""""
' Set variables.
'"""""""""""""""""""""""""""""""""""""""""""""""""""""
MeterChallenge = "<Replace with a metering challenge from the client>"
MeterCert = "<Replace with your metering certificate>"
MASPrivateKey = "<Replace with the private key for your service>"
'"""""""""""""""""""""""""""""""""""""""""""""""""""""


Three values are set you see.
I read all documents and understand that 'MeterCert' will be published from
Microsoft.
And 'MASPrivateKey' will be generated from my DRM10 Server.
BUT I could not find how to get 'MeterChallenge' from client ...

Please help me.


Back to top
Alex
Guest





Posted: Thu Nov 18, 2004 1:55 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

The documentation is misleading. It makes you believe that WMP is
going to send the metering challenge. In fact your application has to
extract this and send it to your server (or as Microsoft said it to
your "Metering Aggregation Service"). Your application may be a
subscription services plugin in WMP10 or a stand alone application.
On the server you will be able to decrypt the metering challenge
(there is a nice sample in msdn about this) and generate the metering
response.
Then you send the metering response to the client and your client
application will have to call ProcessMeterResponse to reset the
meters.

This works the same way for PC and devices.

The metering is not implemented in WMP9 so everything about meters
applies to WMP10 and WMFSDK 9.5 .

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<D6F86B52-E6E3-4B86-93B1-AE47230F6BC2@microsoft.com>...
Quote:
Thanks Alex :-)

Please allow me one more question.
You said "you can read the metering challenge from the client using WMDMSDK
(part of WMFSDK 9.5)".
The client using WMDMSDK must be original application ?
WindowsMediaPlayer10 don't send "Metering Challenge" value to WMRM10 Server ?

As far as I survey WMP9 don't send "MeteringChallenge" without original
Plug-in of metering service , but WMP10 will send "MeteringChallenge".
If it is correct I want to know HOW to get MeteringChallenge form WMP10.



"Alex" wrote:
Once you have a metering cert from MS you can read the metering
challenge from the client using WMDMSDK (part of WMFSDK 9.5). Search
for GenerateMeterChallenge on msdn.microsoft.com . I think that there
is also a nice article that explains it all.

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<25FFF9A9-F255-4DE6-B2D8-078EB6448695@microsoft.com>...
One question about Metering Service of DRM10.
How to get 'MeterChallenge' value from client ?

In the document of WMRM10SDK there are any sample code of Metering Service.
One of them is as belows;


'"""""""""""""""""""""""""""""""""""""""""""""""""""""
' Set variables.
'"""""""""""""""""""""""""""""""""""""""""""""""""""""
MeterChallenge = "<Replace with a metering challenge from the client>"
MeterCert = "<Replace with your metering certificate>"
MASPrivateKey = "<Replace with the private key for your service>"
'"""""""""""""""""""""""""""""""""""""""""""""""""""""


Three values are set you see.
I read all documents and understand that 'MeterCert' will be published from
Microsoft.
And 'MASPrivateKey' will be generated from my DRM10 Server.
BUT I could not find how to get 'MeterChallenge' from client ...

Please help me.
Back to top
HELP ME
Guest





Posted: Thu Nov 18, 2004 12:17 pm    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Thanks Alex :-)
Your advise is very help for me !!

I will download WMF9.5SDK and try to make 'Metering Plug-in for WMP10'.

If there is any sample code(VC++?) to Generate 'MeteringChallenge' value ,
please teach me.
To say more if you have already made Metering Plug-in for WMP10 , please
send me as reference.

Thanks

"Alex" wrote:
Quote:
The documentation is misleading. It makes you believe that WMP is
going to send the metering challenge. In fact your application has to
extract this and send it to your server (or as Microsoft said it to
your "Metering Aggregation Service"). Your application may be a
subscription services plugin in WMP10 or a stand alone application.
On the server you will be able to decrypt the metering challenge
(there is a nice sample in msdn about this) and generate the metering
response.
Then you send the metering response to the client and your client
application will have to call ProcessMeterResponse to reset the
meters.

This works the same way for PC and devices.

The metering is not implemented in WMP9 so everything about meters
applies to WMP10 and WMFSDK 9.5 .

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<D6F86B52-E6E3-4B86-93B1-AE47230F6BC2@microsoft.com>...
Thanks Alex :-)

Please allow me one more question.
You said "you can read the metering challenge from the client using WMDMSDK
(part of WMFSDK 9.5)".
The client using WMDMSDK must be original application ?
WindowsMediaPlayer10 don't send "Metering Challenge" value to WMRM10 Server ?

As far as I survey WMP9 don't send "MeteringChallenge" without original
Plug-in of metering service , but WMP10 will send "MeteringChallenge".
If it is correct I want to know HOW to get MeteringChallenge form WMP10.



"Alex" wrote:
Once you have a metering cert from MS you can read the metering
challenge from the client using WMDMSDK (part of WMFSDK 9.5). Search
for GenerateMeterChallenge on msdn.microsoft.com . I think that there
is also a nice article that explains it all.

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<25FFF9A9-F255-4DE6-B2D8-078EB6448695@microsoft.com>...
One question about Metering Service of DRM10.
How to get 'MeterChallenge' value from client ?

In the document of WMRM10SDK there are any sample code of Metering Service.
One of them is as belows;


'"""""""""""""""""""""""""""""""""""""""""""""""""""""
' Set variables.
'"""""""""""""""""""""""""""""""""""""""""""""""""""""
MeterChallenge = "<Replace with a metering challenge from the client>"
MeterCert = "<Replace with your metering certificate>"
MASPrivateKey = "<Replace with the private key for your service>"
'"""""""""""""""""""""""""""""""""""""""""""""""""""""


Three values are set you see.
I read all documents and understand that 'MeterCert' will be published from
Microsoft.
And 'MASPrivateKey' will be generated from my DRM10 Server.
BUT I could not find how to get 'MeterChallenge' from client ...

Please help me.

Back to top
Alex
Guest





Posted: Fri Nov 19, 2004 2:33 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

I don't think there is any sample and I cannot give you any source
code I wrote because It does not belong to me.

It is not very complicated to read the meters from the PC.

1. Obtain a metering certificate from MS
2. On the server, when issuing a license, set the MeteringCertificate
property of WMRMRights to the certificate you received from MS
3. Register the license on the client and play the secure file
4. Create a client application that does this:
- CoCreateInstance of IWMDRMDeviceApp
- call IWMDRMDeviceApp::GenerateMeterChallenge and obtain the
challenge string
5. Send the challenge string to the server where you can decrypt it
and read the usage. There is a sample of how to do this. Generate a
metering response string and send it back to the client
6. Call in the client app IWMDRMDeviceApp::ProcessMeterResponse using
the respose you got from server. This will reset the metering data on
the PC
Back to top
HELP ME
Guest





Posted: Mon Nov 29, 2004 1:13 pm    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Hello Alex

Now I am trying to test MeteringService.
Please give me any advice.


"Alex" wrote:
Quote:
I don't think there is any sample and I cannot give you any source
code I wrote because It does not belong to me.
It is not very complicated to read the meters from the PC.

MeteringData is not recorded in the DRM folder ?
C:\Documents and Settings\All Users\DRM
If it is true where is it recorded?


Quote:
1. Obtain a metering certificate from MS
2. On the server, when issuing a license, set the MeteringCertificate
property of WMRMRights to the certificate you received from MS

I see 'WMRM10SDK' manual but I could not find How to set
MeteringCertValue on WMRMRightsObject.
How to set MeteringCertValue in DRM licesense ?


Quote:
3. Register the license on the client and play the secure file

The license you said is the same as license of DRM9 ?


Quote:
4. Create a client application that does this:
- CoCreateInstance of IWMDRMDeviceApp
- call IWMDRMDeviceApp::GenerateMeterChallenge and obtain the
challenge string

To use these function , MeteringData was automatically collected ?
I shoud not specific directory where MeteringData exist.


Quote:
5. Send the challenge string to the server where you can decrypt it
and read the usage. There is a sample of how to do this. Generate a
metering response string and send it back to the client
6. Call in the client app IWMDRMDeviceApp::ProcessMeterResponse using
the respose you got from server. This will reset the metering data on
the PC

I (We) want to more detail flow of How MeteringService work ...

Thanks
Back to top
Alex
Guest





Posted: Tue Nov 30, 2004 12:34 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<D8A02598-1579-445C-B087-AFDE855B9EE4@microsoft.com>...
Quote:
Hello Alex

Now I am trying to test MeteringService.
Please give me any advice.


"Alex" wrote:
I don't think there is any sample and I cannot give you any source
code I wrote because It does not belong to me.
It is not very complicated to read the meters from the PC.

MeteringData is not recorded in the DRM folder ?
C:\Documents and Settings\All Users\DRM
If it is true where is it recorded?

I don't know where this is stored. I suspect though that it is stored
somewhere in the DRM folder.
Quote:


1. Obtain a metering certificate from MS
2. On the server, when issuing a license, set the MeteringCertificate
property of WMRMRights to the certificate you received from MS

I see 'WMRM10SDK' manual but I could not find How to set
MeteringCertValue on WMRMRightsObject.
How to set MeteringCertValue in DRM licesense ?

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmrm10/htm/licgen3meteringcertificate.asp

Quote:


3. Register the license on the client and play the secure file

The license you said is the same as license of DRM9 ?

Yes.
Quote:


4. Create a client application that does this:
- CoCreateInstance of IWMDRMDeviceApp
- call IWMDRMDeviceApp::GenerateMeterChallenge and obtain the
challenge string

To use these function , MeteringData was automatically collected ?
I shoud not specific directory where MeteringData exist.

GenerateMeterChallenge has 2 IN parameters: the device interface
pointer (0 for PC) and the metering certificate
and 2 OUT parameters: metering data and the metering url.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmdm10/htm/iwmdrmdeviceappgeneratemeterchallenge.asp

Quote:


5. Send the challenge string to the server where you can decrypt it
and read the usage. There is a sample of how to do this. Generate a
metering response string and send it back to the client
6. Call in the client app IWMDRMDeviceApp::ProcessMeterResponse using
the respose you got from server. This will reset the metering data on
the PC

I (We) want to more detail flow of How MeteringService work ...

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmrm10/htm/howmeteringworks.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmdm10/htm/bestpracticeforusingmeteringapi.asp
Quote:

Thanks
Back to top
HELP ME
Guest





Posted: Tue Nov 30, 2004 10:45 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Hello Alex

Very Very Thanks you for your reply.
Your advice is very useful !!
I will try again :-)

Are you MVP of WindowsMedia??
You are well acquainted with the technology .

Very Thanks :-)



"Alex" wrote:
Quote:
"HELP ME" <HELPME@discussions.microsoft.com> wrote in message news:<D8A02598-1579-445C-B087-AFDE855B9EE4@microsoft.com>...
Hello Alex

Now I am trying to test MeteringService.
Please give me any advice.


"Alex" wrote:
I don't think there is any sample and I cannot give you any source
code I wrote because It does not belong to me.
It is not very complicated to read the meters from the PC.

MeteringData is not recorded in the DRM folder ?
C:\Documents and Settings\All Users\DRM
If it is true where is it recorded?

I don't know where this is stored. I suspect though that it is stored
somewhere in the DRM folder.


1. Obtain a metering certificate from MS
2. On the server, when issuing a license, set the MeteringCertificate
property of WMRMRights to the certificate you received from MS

I see 'WMRM10SDK' manual but I could not find How to set
MeteringCertValue on WMRMRightsObject.
How to set MeteringCertValue in DRM licesense ?

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmrm10/htm/licgen3meteringcertificate.asp



3. Register the license on the client and play the secure file

The license you said is the same as license of DRM9 ?

Yes.


4. Create a client application that does this:
- CoCreateInstance of IWMDRMDeviceApp
- call IWMDRMDeviceApp::GenerateMeterChallenge and obtain the
challenge string

To use these function , MeteringData was automatically collected ?
I shoud not specific directory where MeteringData exist.

GenerateMeterChallenge has 2 IN parameters: the device interface
pointer (0 for PC) and the metering certificate
and 2 OUT parameters: metering data and the metering url.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmdm10/htm/iwmdrmdeviceappgeneratemeterchallenge.asp



5. Send the challenge string to the server where you can decrypt it
and read the usage. There is a sample of how to do this. Generate a
metering response string and send it back to the client
6. Call in the client app IWMDRMDeviceApp::ProcessMeterResponse using
the respose you got from server. This will reset the metering data on
the PC

I (We) want to more detail flow of How MeteringService work ...

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmrm10/htm/howmeteringworks.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmdm10/htm/bestpracticeforusingmeteringapi.asp

Thanks
Back to top
Dennies Chang
Guest





Posted: Mon Aug 22, 2005 8:30 pm    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Thanks Alex,

But when I call IWMDRMDeviceApp->QueryDeviceStatus or
IWMDRMDeviceApp->GenrtateMeterChallenge, the function return
-1072879769, I had WMF SDK, WMDM SDK, should I use any
other SDK to get the correct result? Thanks for your information.

Best Regard.
Dennies Chang.

"Alex" wrote:

Quote:
I don't think there is any sample and I cannot give you any source
code I wrote because It does not belong to me.

It is not very complicated to read the meters from the PC.

1. Obtain a metering certificate from MS
2. On the server, when issuing a license, set the MeteringCertificate
property of WMRMRights to the certificate you received from MS
3. Register the license on the client and play the secure file
4. Create a client application that does this:
- CoCreateInstance of IWMDRMDeviceApp
- call IWMDRMDeviceApp::GenerateMeterChallenge and obtain the
challenge string
5. Send the challenge string to the server where you can decrypt it
and read the usage. There is a sample of how to do this. Generate a
metering response string and send it back to the client
6. Call in the client app IWMDRMDeviceApp::ProcessMeterResponse using
the respose you got from server. This will reset the metering data on
the PC
Back to top
exalien



Joined: 22 Sep 2005
Posts: 3

Posted: Wed Nov 09, 2005 6:22 pm    Post subject: GenerateMeterChallenge results in error code -1072879769 Reply with quote

Hey Dennis how did you end up getting a valid return from GenerateMeterChallenge? I've been getting the same error code (-1072879769) and I can't figure out why. I'm basically using the sample code from the Microsoft documentation.
Back to top
View user's profile Send private message
drmNoob



Joined: 16 Nov 2005
Posts: 1

Posted: Wed Nov 16, 2005 10:11 am    Post subject: Re: How to get 'MeterChallenge' value from client ? Reply with quote

Alex wrote:
I don't think there is any sample and I cannot give you any source
code I wrote because It does not belong to me.

It is not very complicated to read the meters from the PC.

1. Obtain a metering certificate from MS
2. On the server, when issuing a license, set the MeteringCertificate
property of WMRMRights to the certificate you received from MS
3. Register the license on the client and play the secure file
4. Create a client application that does this:
- CoCreateInstance of IWMDRMDeviceApp
- call IWMDRMDeviceApp::GenerateMeterChallenge and obtain the
challenge string
5. Send the challenge string to the server where you can decrypt it
and read the usage. There is a sample of how to do this. Generate a
metering response string and send it back to the client
6. Call in the client app IWMDRMDeviceApp::ProcessMeterResponse using
the respose you got from server. This will reset the metering data on
the PC


hi Alex

May i know the URL to obtain metering certificate, or do i use the :

MeterCert = "<METERCERT version=""1.0""><DATA><MID>pIKx8Wsy5aYRQN8LLIIcTQ==</MID><PUBLICKEY>nm0yQ6CXLcQIBf*Zc*VKGL!SziEdTT!ehGxDotUazwFtE7X40IlqAQ


TIA
Back to top
View user's profile Send private message
 
Post new topic   Reply to topic    WMPTalk.com Forum Index -> DRM All times are GMT
Page 1 of 1

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum



Microsoft Office Forum New Topics
Powered by phpBB