Protocol for chat server [closed] - c#

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I have a project to create a messaging system for iOS, Android, web browser as the client. What kind of protocol can i use? I have read about the HTTP and Socket programming. Some solution that come up:
GET/POST HTTP
Socket
If we have the socket programming, how can we arrange the socket connection with the load balancing?
Any idea which one can I apply or other protocol?
Thanks
My first plan is to create something like a usual chatting app we know nowadays, but integrated with some other functions in the current system. Which one should I use?

I strongly recommend that you use an established protocol, IRC. For a general overview of IRC see http://en.wikipedia.org/wiki/Internet_Relay_Chat
Read about one Android library implementation at IRC library for Android (From 2.3.3 to 4.0.3 )?
This could go a long way towards solving your problem. Mainly though, "don't reinvent the wheel" as the saying goes.

You can check SignalR to use on the Website part. This will allow you to create real time connections. It uses WebSockets:
http://signalr.net/

Related

In C#, How do I monitor what goes in and out my ip sockets that other programs are using? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
Trying to make console app that monitors alongside its main program, and monitors what the main program has going in and what goes out its tcp/ip sockets. I have seen people do this in a few programs, but I can't figure out how. Something about using a raw socket, but I am not sure.
Any ideas how?
If you want the console app to be entirely separate from the main program, you can do this various ways:
Create a man-in-the-middle proxy for the connections. Run a client and server socket from your console application - i.e. clients connect to your proxy server and then your proxy server will forward the connection to your main program. This allows you to record the packets on their way through your console.
Hook winsock.dll. Essentially you will be gaining access to the parameters of send() and recv() calls that your main program makes, and you can then output or do as you like with it.
Forget programming it, and use Wireshark or another network sniffer to check what's going in or out.
More information on number 2:
It was surprisingly difficult to find good tutorials in C#, mainly because it's generally done with C++ or C. Some links to get you started:
https://en.wikipedia.org/wiki/Hooking
http://csns.calstatela.edu/download.html?fileId=2062150
http://www.elitepvpers.com/forum/co2-programming/1917917-c-dll-injecting-hooking.html
A tool to assist with hooking: http://easyhook.codeplex.com
I'll update this list as I find better resources. I might make a tutorial myself, will keep you informed.

How to send Audio/Video over internet to multiple clients? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I have designed a virtual classroom software for students with disabilities, it is being used by some local colleges. The limitation of the software is that the students within a Local Area Network (LAN) are able to connect with server in order to receive audio/video data. I have used sockets to connect clients with server. Now the demand for the software has increased and students outside of the LAN want to connect to server using their internet connection. I am aware that I have to rewrite the server/client connectivity modules, but I am not sure how to go about connecting clients to server using internet.
I think one way is to use a vpn but I am not really sure.
Any guidance would be much appreciated. Thanks in advance.
1)First, the good news: You may not have to rewrite your client server code (at least not completely)
2)This question may be better suited for serverfault
3)Get with your IT staff to discuss your needs. Developing the app without consulting them is asking for trouble, because they're going to be the ones to ensure the proper firewall ports are opened. Even if you had a VPN, without consulting them there's no guarantee it would even work. Because you would need
4)A routable IP address. Yes, DYNDNS or something similar would work, but that introduces another single point of failure. No IT staff? Then
5)Find an IT consultant knowledgeable in basic networking, or make heavy use of serverfault.

How to Force a binary Application to use SOCKS Proxy from C# Tool? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I'm currently thinking about developing a sockscap-like tool with some cool new features and a nice WPF gui.
For those who don't remember:
SocksCap was a tool that allowed you use any application with the use of a SOCKS4/5 Proxy... So e.g. you could play games with another IP without using VNC and alike.
However I'm not much of a network guy, so I'd love some input on how to "socksify / proxify" from an external application within a windows environment. As this is supposed to be a project, not a "quick and dirty" thing I'm only into "clean and generic" approaches instead of "modify HOSTS entry" or "plugin for each application"...
So how would someone with knowledge about networking programming start his research about redirecting (routing?) an applications traffic via a proxy?
Thanks for any help :-)
Google always helps.
Under windows there is something similar to socksify:
FreeCap -- is a program for transparency redirect connections from programs through SOCKS server. In fact that some programs hasn't native SOCKS support (for example Internet Explorer), In this case FreeCap will be helpful, transparently redirect all connections requests through SOCKS server.
The internal implementation of this seems hijacked the socket call of the client applications.

what i need to study befor programming Chat? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 months ago.
Improve this question
what do I need to study before programming a windows chat application in C#?? Moreover, can you recommended me books names or tutorials links about this topic??
You'll need to understand interprocess communication if you want to make a "chat" application.
Typically, in C#, this is currently handled via Windows Communication Foundation. That would be a good place to start.
It depends on the specific requirements for your chat program. Is your application going to be web-based (runs in the browser) or will people need to download a program for it to work? Will communication be handled directly from one computer to another (peer-to-peer), or will there be a central server that handles communication? Will there be "chat rooms" where more than two people are chatting together at once? Will chat conversations be encrypted for privacy? Will chat conversations be saved?
Depending on your answers to these questions, you may want to look into:
Windows Communication Foundation
Asp.net MVC
SQL Server
Entity Framework or LINQ to SQL
Interprocess communication
AJAX
JSONP
Windows Presentation Foundation or Windows Forms
... and possibly others as well.
If you don't know where you're going, any road will get you there. -- The Cheshire Cat

How can I setup an SSL environment to test C# remoting? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
Our customer has asked that our application be able to communicate through HTTPS. The application itself is a C#.NET application, a client/server/database sort of application. My understanding from my programmer is that this is an additional layer of unnecessary encryption, but because our customer has asked for it we're going to try to provide it anyway.
What I'm looking for is a way to setup an SSL environment that does not require me to install a webserver. Although we could recompile our server into a DLL that could allow us to be hosted through IIS, the idea doesn't exactly thrill me (we're not wanting our customer to have to implement IIS in addition to our solution).
In any case, the idea is to provide an SSL tunnel over port 443 that our C#.NET remoting packets (they're http packets at the moment) may pass through.
Does anybody have any suggestions which may prove helpful in this regard? Do we need to add any additional handling to the communication process to allow this? (My gut says no, but I'm not the programmer.)
Mike
Check out this article on MSDN:
.NET Remoting: Writing an Asymmetric Encryption Channel Sink
First header is 'Support For HTTPS'

Categories