static void ParseResponse() { Console.Clear(); Console.WriteLine("Enter Payload :: "); var payload = Console.ReadLine(); var iso = new Iso8583Extended(); try { iso.Unpack(Encoding.UTF8.GetBytes(payload), 0); Console.WriteLine(iso.ToString()); } catch (Exception ex) { Console.WriteLine(ex.InnerException?.Message ?? ex.Message); } }
static void MakeRequest() { Console.Clear(); Console.WriteLine("Enter HOST IP :: "); var hostIp = Console.ReadLine(); Console.WriteLine("Enter HOST PORT :: "); var hostPort = Console.ReadLine(); Console.WriteLine("Enter Payload :: "); var payload = Console.ReadLine(); try { using var tcpClient = new TcpClient(); tcpClient.Connect(String.IsNullOrEmpty(hostIp) ? "196.46.20.30" : hostIp, int.TryParse(hostPort, out int port) ? port : 5334); //"196.46.20.30": 5334 using var client = tcpClient.GetStream(); var requestPayload = new List <byte> { (byte)(payload.Length / 256), (byte)(payload.Length % 256) }; requestPayload.AddRange(Encoding.UTF8.GetBytes(payload)); var responsePayload = new byte[1024]; client.Write(requestPayload.ToArray()); client.ReadTimeout = 30000; int totalRead = client.Read(responsePayload); if (totalRead > 30) { Console.WriteLine(Encoding.UTF8.GetString(responsePayload)); var iso = new Iso8583Extended(); iso.Unpack(responsePayload, 2); Console.WriteLine(iso.ToString()); } } catch (Exception ex) { Console.WriteLine(ex.InnerException?.Message ?? ex.Message); } }