karpiyon Posted August 10, 2020 Posted August 10, 2020 Hi, I am trying to export DCS data. I want to transfer data every 500ms and try to receive it in my c# plugin when i need it. I am new to this so I try to follow existing examples. When I start the listener before DCS starts (the client) the connection is working. However, I want to open start the listener after the client starts transmitting or be able to open close it. on the client(DCS) i use: socket = require("socket") IPAddress = "127.0.0.1" Port = 31090 MySocket = socket.try(socket.connect(IPAddress, Port)) MySocket:setoption("tcp-nodelay",true) The error i get from that client (when my listener is not set is the: Lua::Config: Call error LuaExportStart:<LUA_TTABLE> stack traceback: [C]: ? [C]: in function 'try' on this line: MySocket = socket.try(socket.connect(IPAddress, Port)) My test c# code is something like this: var listener = new TcpListener(IPAddress.Parse("127.0.0.1"), 31091); listener.Start(); Thread.Sleep(700); if (!listener.Pending()) { vaProxy.WriteToLog("Sorry, no connection requests have arrived", "Red"); } else { vaProxy.WriteToLog("Server started.", "Green"); vaProxy.WriteToLog("Waiting for DCS connection...", "Green"); var client = listener.AcceptTcpClient(); vaProxy.WriteToLog("DCS connected :-)", "Green"); var reader = new StreamReader(client.GetStream()); var writer = new StreamWriter(client.GetStream()); var s = string.Empty; s = reader.ReadLine(); vaProxy.WriteToLog(s, "Blue"); reader.Close(); writer.Close(); client.Close(); } listener.Stop();
Recommended Posts