public static async Task <StreamingLocatorContentKey> GenerateAndRegisterCBCSKeyToIrdeto(string liveEventName, ConfigWrapper config) { // CBCS Key var cbcsGuid = Guid.NewGuid(); string cbcskeyId = cbcsGuid.ToString(); string cbcscontentKey = Convert.ToBase64String(IrdetoHelpers.GetRandomBuffer(16)); var cbcsIV = Convert.ToBase64String( IrdetoHelpers.HexStringToByteArray(cbcsGuid.ToString().Replace("-", string.Empty))); var responsecbcs = await IrdetoHelpers.CreateSoapEnvelopRegisterKeys(config.IrdetoSoapService, liveEventName, config, cbcskeyId, cbcscontentKey, cbcsIV, true); var contentcbcs = await responsecbcs.Content.ReadAsStringAsync(); if (responsecbcs.StatusCode != HttpStatusCode.OK) { throw new Exception("Error Irdeto response cbcs - code " + responsecbcs.StatusCode); } var cbcskeyIdFromIrdeto = IrdetoHelpers.ReturnDataFromSoapResponse(contentcbcs, "KeyId="); var cbcscontentKeyFromIrdeto = IrdetoHelpers.ReturnDataFromSoapResponse(contentcbcs, "ContentKey="); return(new StreamingLocatorContentKey() { Id = Guid.Parse(ReturnDataFromSoapResponse(contentcbcs, "KeyId=")), Value = ReturnDataFromSoapResponse(contentcbcs, "ContentKey=") }); }
public static async Task <StreamingLocatorContentKey> GenerateAndRegisterCENCKeyToIrdeto(string contentId, ConfigWrapper config) { // CENC Key var cencGuid = Guid.NewGuid(); string cenckeyId = cencGuid.ToString(); string cenccontentKey = Convert.ToBase64String(IrdetoHelpers.GetRandomBuffer(16)); var cencIV = Convert.ToBase64String(cencGuid.ToByteArray()); var responsecenc = await IrdetoHelpers.CreateSoapEnvelopRegisterKeys(config.IrdetoSoapService, contentId, config, cenckeyId, cenccontentKey, cencIV, false); var contentcenc = await responsecenc.Content.ReadAsStringAsync(); if (responsecenc.StatusCode != HttpStatusCode.OK) { throw new Exception("Error Irdeto response cenc - code " + responsecenc.StatusCode); } //return IrdetoHelpers.ReturnErrorException(log, "Error Irdeto response cenc - " + contentcenc); return(new StreamingLocatorContentKey() { Id = Guid.Parse(ReturnDataFromSoapResponse(contentcenc, "KeyId=")), Value = ReturnDataFromSoapResponse(contentcenc, "ContentKey=") }); }