public MultiServiceReply(EncapsReply reply) { EncapsRRData rrData = new EncapsRRData(); CommonPacket cpf = new CommonPacket(); int temp = 0; rrData.Expand(reply.EncapsData, 0, out temp); cpf = rrData.CPF; MessageRouterResponse response = new MessageRouterResponse(); response.Expand(cpf.DataItem.Data, 2, out temp); if (response.GeneralStatus == 0x1E) { IsPartial = true; } ReplyService = response.ReplyService; GenSTS = response.GeneralStatus; ServiceReplies = new List <ServiceReply>(); if (response.ResponseData != null) { Expand(response.ResponseData); } }
public ReadDataServiceReply(EncapsReply reply) { //First we have to get the data item... EncapsRRData rrData = new EncapsRRData(); CommonPacket cpf = new CommonPacket(); int temp = 0; rrData.Expand(reply.EncapsData, 0, out temp); cpf = rrData.CPF; //The data item contains the information in an MR_Response MessageRouterResponse response = new MessageRouterResponse(); response.Expand(cpf.DataItem.Data, 2, out temp); Service = response.ReplyService; Status = response.GeneralStatus; byte[] bbTemp = new byte[4]; Buffer.BlockCopy(BitConverter.GetBytes(Status), 0, bbTemp, 0, 2); if (Status == 0xFF) { if (response.AdditionalStatus_Size > 0) { Buffer.BlockCopy(response.AdditionalStatus, 0, bbTemp, 2, 2); } } ByteStatus = bbTemp; //Now check the response code... if (response.GeneralStatus != 0 && response.GeneralStatus != 0x06) { return; } if (response.ResponseData != null) { //Now we suck out the data type... DataType = BitConverter.ToUInt16(response.ResponseData, 0); byte[] tempB = new byte[response.ResponseData.Length - 2]; Buffer.BlockCopy(response.ResponseData, 2, tempB, 0, tempB.Length); Data = tempB; } else { DataType = 0x0000; } }
public WriteDataServiceReply(EncapsReply reply) { EncapsRRData rrData = new EncapsRRData(); CommonPacket cpf = new CommonPacket(); int temp = 0; rrData.Expand(reply.EncapsData, 0, out temp); cpf = rrData.CPF; MessageRouterResponse response = new MessageRouterResponse(); response.Expand(cpf.DataItem.Data, 2, out temp); if (response.GeneralStatus != 0) { return; } Service = response.ReplyService; Status = response.GeneralStatus; }