51 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import json
 | |
| 
 | |
| from requests import Request
 | |
| 
 | |
| from vinetrimmer.utils.BamSDK.services import Service
 | |
| 
 | |
| 
 | |
| # noinspection PyPep8Naming
 | |
| class drm(Service):
 | |
|     def widevineCertificate(self):
 | |
|         endpoint = self.client.endpoints["widevineCertificate"]
 | |
|         req = Request(
 | |
|             method=endpoint.method,
 | |
|             url=endpoint.href,
 | |
|             headers=endpoint.headers
 | |
|         ).prepare()
 | |
|         res = self.session.send(req)
 | |
|         return res.content
 | |
| 
 | |
|     def widevineLicense(self, licence, access_token):
 | |
|         endpoint = self.client.endpoints["widevineLicense"]
 | |
|         req = Request(
 | |
|             method=endpoint.method,
 | |
|             url=endpoint.href,
 | |
|             headers=endpoint.get_headers(accessToken=access_token),
 | |
|             data=licence
 | |
|         ).prepare()
 | |
|         res = self.session.send(req)
 | |
|         try:
 | |
|             # if it's json content, then an error occurred
 | |
|             res = json.loads(res.text)
 | |
|             raise Exception(f"Failed to obtain license: {res}")
 | |
|         except json.JSONDecodeError:
 | |
|             return res.content
 | |
|     
 | |
|     def playreadyLicense(self, licence, access_token):
 | |
|         endpoint = self.client.endpoints["playReadyLicense"]
 | |
|         req = Request(
 | |
|             method=endpoint.method,
 | |
|             url=endpoint.href,
 | |
|             headers=endpoint.get_headers(accessToken=access_token),
 | |
|             data=licence
 | |
|         ).prepare()
 | |
|         res = self.session.send(req)
 | |
|         try:
 | |
|             # if it's json content, then an error occurred
 | |
|             res = json.loads(res.text)
 | |
|             raise Exception(f"Failed to obtain license: {res}")
 | |
|         except json.JSONDecodeError:
 | |
|             return res.content
 |