views:

258

answers:

3

Hi developers, I need to create file sharing and chatting system like Microsoft Groove under .NET (c#). But i don't know how to create it.

I had a questions:

  1. Groove using peer 2 peer? if you know about this, tell me any library.

  2. Groove is using what service?

  3. Groove is using what technology for network service?

A: 

Since Vista Microsoft has included a p2p library in Windows, so you don't have to write the whole library yourself: http://msdn.microsoft.com/en-us/library/bb756984.aspx

ZippyV
+1  A: 

From C# your easiest option is Windows Communication Foundation (WCF). Doing a Google search for WCF P2P resulted in some useful starting points. It is possible to use the native APIs from .NET code but this is going to be a lot more involved than going the Peer Channel route with WCF.

Here is a sample chat application that you can take a look at. I don't know what Groove uses, but it was around before Vista so they may have written their own P2P networking code.

BrianLy
WCF possible to chat through internet? WCF using any service?
ebattulga
Yes WCF can be made to work across the internet. I suspect that there may be some ports that need to be open. NAT and other network infrastructure have the potential to cause problems with connectivity no matter what option you choose.
BrianLy
+2  A: 

Groove Networks wrote their own code, largely based on their own patented algorithms for peer-to-peer communications. After Groove took over Microsoft, (or was it the other way round), some of their ideas surfaced in the technology called now called FeedSync (http://en.wikipedia.org/wiki/FeedSync)

You might consider the FeedSync framework a good place to start playing with this texchnology, or if you want to make use of a set of services provided by Microsoft, then the Mesh technology might work for you: http://msdn.microsoft.com/en-us/sync/default.aspx