Last post May 05, 2016 05:52 AM by MD_AS
May 02, 2016 03:30 PM|MD_AS|LINK
I’m planning to build a website using ASP.net. The members of this site should use a client like Skype. The client should support the following features:
I do not know the best option to achieve that. Is there an existing library to develop this client? Or I should build the client from scratch? Shall I use SIP, XMPP or other protocols? Can I use Google for work or office 365?
Note: The expected number of users is 100’000 and more later.
Thanks in advance
May 02, 2016 10:10 PM|AZMatt|LINK
Personally, I wouldn't re-invent the wheel. Take a look at the Web App Gallery... specifically Incentive...
May 03, 2016 03:51 AM|MD_AS|LINK
Thank you for your reply.
me too, I do not like to re-invite the wheel. So that, I asked if I can use office 365.
However, I asked about creating a program to check, does it worth to create a program? As I mentioned above I'm expecting more than 100'000 members.
May 03, 2016 05:23 AM|Zhi Lv - MSFT|LINK
I suggest you can try to use SignalR.
ASP.NET SignalR is a library for ASP.NET developers that simplifies the process of adding real-time web functionality to applications. Real-time web functionality is the ability to have server code push content to connected clients instantly as it becomes
available, rather than having the server wait for a client to request new data.
More details about SignalR, please refer to this articles:
May 03, 2016 07:02 PM|MD_AS|LINK
Thank you too much for sharing.
I read a little bit about SignalR. However, I'm not sure if it's the right option or not. What I read in the links that you shared, SignalR is Client/Server communications. As per my knowledge in VoIP and other real-time applications, signalling is client/server
communications like SIP/H.323. but the media is client to client. For example, if I have a SIP server and two SIP clients, those two clients make a call. SIP messages will go between client and server. While, the audio (call) go from client to client.
The advantage of the previous way of communications is to reduce the bandwidth and load on the server. signalling traffic is very light comparing it with real-time traffic.
Does SignalR do the same? What I understood that both signalling and medi is going from server to client no direct communications between clients.
Please correct me if I'm wrong.
May 04, 2016 11:15 AM|Khuram.Shahzad|LINK
You can use multiple technologies to perform multiple operation.
1: I have an application where signalR connect with clients.
2: Client need to get data from hardware/device where c++ client is involved, I use Multithreaded C# library there to connect to hardware.
What I want to say is, It is not hard and fast rule to stick with only 1 and 1 technology, you can choose or mix up tech on your requirements, thing is that requirement should be meet.
SignalR is not useful when you want to share large files like data etc. They used direct stream which make difficulty.
Every one have own experience and views but simple is do what is required and where is required.
May 04, 2016 12:59 PM|MD_AS|LINK
Thank you too much for your reply.
Regarding the application that you did, the data that you get from one device and you need to send to another device. Is it directly from client 1 to client 2? Or from Client 1 to the server and from server to client 2?
My concern is to avoid making the server as a proxy. a huge amount of bandwidth will be required. In my first post, I mentioned that I need chat and desktop sharing. very similar to audio and video chat. Imagen the huge amount of traffic to the server if
the flow is: Client>> Server >> Client.
May 05, 2016 04:41 AM|Khuram.Shahzad|LINK
Device it self connect to server, my issue was that, devices software is in c++ and its really hard to communicate to signalr from c++, so there is a custom defined protocol which make us enable to control flow of data between devices and server.
May 05, 2016 05:52 AM|MD_AS|LINK
Thank you for your support.