What is the best VOIP toolset for use with .Net development? - asp.net

I have a need to explore VOIP integration into a .Net application. It would be incredibly helpful if the toolset was usable via ASP.Net (version 2.0 or higher), and provided the developer the option to allow interaction on the client either embedded within the web browser or external to the client web browser. It should be compatible at a minimum with Internet Explorer, but would be better if browser independence were an option.

I don't really understand your question -- what are you trying to DO with VoIP? Since you mentioned ASP.NET I'm guessing you mean some kind of server app? If you explain more about what you want to do, we can give you better advice.
You could check out Microsoft's Speech stuff: http://www.microsoft.com/speech/speech2007/default.mspx. As I understand it, Speech Server was moved into being part of OCS. I remember that it supported using .NET 3.0's Workflow Foundation as well as some multi-modal stuff with ASP.NET.
FreeSWITCH is a flexible VoIP system that works for both large-scale server implementations as well as embedded scenarios (say as an ActiveX softphone). There is full .NET and Mono support via mod_managed. (This allows you to create voice applications in FreeSWITCH using any .NET language.) There's also an XML-based API that allows you to send and receive events to control a remote FS server. You could use this from ASP.NET. FreeSWITCH is very active in #freeswitch#irc.freenode.net so you can get a lot of advice there.

Related

HTTP/2 with WebForms - What actually does this feature mean to a developer?

I am exploring the current news for ASP.NET WinForms with .NET 4.6.
The resources I am currently looking at is this Video overview by Microsoft Program Manager Pranav Rastogi and an article on DotNetCurry. Besides the information, that I will require Windows 10 Preview, I can not decipher, what this really means to me as a WebForms developer.
To use HTTP/2 will I...
need to make some changes in a config file?
need to change something in the page / master page?
use a different programming model when it comes to serve resources?
Of course, IIS will need to be configured, but this does not affect me as developer.
Is there actually something I need / can do as developer to support HTTP/2?
Note: If someone sees this as a better fit on Programmers or other SE site, please move.
Basically, HTTP/2 is seemless for web services. The basic functions, request/response multiplexing and header compression, are defined at the network protocol level. That means it can be seen as the matter of web browsers and web servers.
But for the new features like HTTP/2 server push and stream priority/dependency, it needs to be considered for developers. To use those features, web browsers and web servers should provide APIs.

Reading/writing to a client-side USB device from ASP.NET

I currently have an ASP.NET web application written in C#, and I need to be able to communicate with a device that's hooked into a USB port on the client side (reading and writing). I was looking into adding a web service that would work with a Silverlight application that would handle the local hardware communication, but apparently that type of access only works for an "out of browser" SL app.
Are there any other technologies that would integrate nicely into an ASP.NET application that might support this type of thing? I'll need to support Windows XP+ on the client side. I'm really looking for something that's "browser centric" here (avoiding things like sleeper exe's, if possible) and will be easy for the user to install/allow (as I'm sure they'll need to explicitly allow something of that nature being read).
We used to do this with the (old) ActiveX technology (in Internet Explorer only) using an ActiveX Control which the user has to agree to actively (but it's simple).
Java applets are another option. But the scope of ASP.NET definitely has to be left.

Asp.net application for voice calls

I have a requirement for web application developed in asp.net which allows users to make voice calls among each other from the website.
I have looked at api of skype but it seems more inclined towards desktop application. IS there any api which supports for web application like gtalk etc.
Which technology could be best used for developing such kind of applications? Any input, references would be helpful.
I did read that jabber is underlying technology for gtalk. Does jabber support voice calls, and would it be useful for my situation?
If you can include Flash, it has API for that job, but for client side layer only... probably you can chose java/.net for server side.
The only solution here is flash. Gmail / Gtalk requires the user to download a plugin for it to work, so technically it is a windows application being called from a webpage.
I recommend flash and asp.net for the backend, as said above. Either that or if you are OK with deploying plugins, you could go that route. I wouldn't recommend it unless it is internal only.

Can WPF browser apps be used as a replacement for ASP.NET?

I don't understand the purpose of the WPF browser appliction. Is it simply another way of serving information through a browser, or is it not intended to be used for external deployment?
WPF Browser applications allow you to create very rich, application style UI's deployable via the web, using coding languages windows developers already likely have in their toolset. The downsides are that the users must must have .net installed, and use IE to access the application, considerably limiting the size and scope of your audience. WPF browser applications are very similar to Java applications in that they run in a virtual machine on the client. As it runs on the client, all data access and communication with the server must be done through WCF or web services.
With ASP.NET you have considerably more cross browser compatibility and support, giving you access to a much larger audience, with the possible downside of learning new libraries and the ASP.NET programming model. ASP.NET also provides a rich data access model and data control support. Silverlight is another interesting option based on .NET and WPF, as it is supported by a wide variety of browsers and provides similar rich user interface experiences. It can als be run out of the browser, disconnected if neccesary.
** Update based on Comment Request ***
The big advantage to Silverlight out of browser, is that you get most of the Rich, windows application style functionality, with a web deployable model and tiny install (4-6MB). Silverlight also supports an auto update feature which is VERY nice if you have a large user base.
Microsoft's Official description (propaganda :) )here
Silverlight Out Of Browser
Enables users to place their favorite Silverlight applications directly onto their PC and Mac, with links on the desktop and start menu—all without the need to download an additional runtime or browser plug-in. Further, the new experience enables Silverlight applications to work whether the computer is connected to the Internet or not—a radical improvement to the traditional Web experience. Features include:
Safe and secure. Leveraging the security features of the .NET Framework, Silverlight applications run inside a secure sandbox with persistent isolated storage. These applications have most of the same security restrictions as traditional web apps and so can be trusted without security warnings or prompts, minimizing user interruptions.
Smooth installation. Because Silverlight applications are stored in a local cache and do not require extra privileges to run, the installation process is quick and efficient.
Auto-update. Upon launch, Silverlight applications can check for new versions on the server, and automatically update if one is found.
Internet connectivity detection. Silverlight applications can now detect whether they have Internet connectivity and can react intelligently including caching a users’ data until their connection is restored.
A WPF browser application is a client side technology, rather than ASP(.NET) which is server-side. It is definitely not meant to replace it.
Using a WPF browser application one can provide a rich client inside the browser. However, this will only work when the whole .NET framework is installed. Another similar technology is Silverlight, which uses a very small (the installer about 5-6 MiB) framework, and is available to multiple platforms. It includes a small subset of .NET framework.
You can use it in external deployment considering the above requirements.
The following portion of the above selected comment is wrong:
and use IE to access the application,
considerably limiting the size and
scope of your audience
WPF in the browser (aka XBAP) is works just from FireFox (Mozilla) and Google Chrome. It was true about 2 years ago, but not today.
You could use XAML in silverlight, if thats what you are looking for.
Plus the RIA Application templates makes development quite neat.

Good replacement of GWT for asp.net

I know Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications. GWT is used by many products at Google, including Google Wave and Google AdWords. It's open source, completely free, and used by thousands of developers around the world.
It can be integrated in java based web applications....
Is there any suitable replacement of GWT for asp.net web application?
If so,what is it?
GWT is platform agnostic. It can be easily integrated with any web application, not just Java. You just tell it to inject widgets into elements on the host page - the host page could be static HTML.
The built in RPC mechanism makes it easy to do RPC with a Java on the server side, but you can certainly use JSON or XML to exchange data with your server. It's a little more work, but not impossible. Look up 'overlay types' - these make working with JSON data extremely easy.
Consider SmartGWT. It has a built-in REST connector that is easy to connect to REST services on the .NET platform, which Visual Studio can help you generate.
On the .NET platform, the free open source (LGPL) edition is all you need. If you need commercial license terms, those are available too.
Take a look at Script#, but I'm not sure if it's still in development. "Essentially the Script# compiler is a C# compiler that generates Javascript instead of IL."
http://www.nikhilk.net/Entry.aspx?id=121
If you're just looking to hook up an ASP.net web application with GWT, try
GWT and .NET

Resources