1

I have a project that initially was planned as a simple client server architecture over HTTP with server written in Node.js and client being a .NET Windows application written in C#.

The customer was supposed to exercise control over Windows C# app, which in turn would send some requests for data to the server.

Now I am thinking about moving all control of the app to the server, so that .NET app has minimal UI and is completely controlled via Web UI on the server. In this case customer logs in to a Web app, clicks buttons and the server sends commands and data to the C# app on Windows.

The problem of course if I do it over HTTP, it becomes a mess in terms of proper configuration on the customer side: firewall rules must allow connections to the customer computers from the Internet and NAT has to be taken care of.

Is there a way to avoid these issues on client side? For instance by initiating a connection from the client (once client software is started) and then keeping it constantly open for receiving commands from the server?

1 Answer 1

1

From what you have said, it sounds like you want websockets.

You can use SignalR for this http://www.asp.net/signalr/overview/getting-started/introduction-to-signalr

If you want to use Meteor, you could also use DDP. You can use this .NET client lib for that https://github.com/sonyarouje/DDPClient.NET

Sign up to request clarification or add additional context in comments.

2 Comments

Alright, this is what I suspected. Any other protocols to look at?
and here is a good refresh stackoverflow.com/questions/11077857/…

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.