C#, C++, VB API to manage Asterisk (through Asterisk Manager API) from a Windows Server?

Hi all:

I am looking for C#, C++, VB, ... API that run on Windows that would allow to communicate and manage an Asterisk server from a Windows machine. These API should communicate with the Asterisk server through the Asterisk Manager API.
Do you know any well know and alive open source or commercial project that would provide these APIs?
Who is Participating?
If .NET is more your thing check out:


From their site:

"A port of Asterisk-Java to C# for Microsoft's .NET Framework 1.1/2.0 and anything else that implements the basic portions of the framework required to use this.

The Asterisk .NET library consists of a set of classes that allow you to easily build applications that interact with an Asterisk PBX Server.

Asterisk .NET supports both interfaces that Asterisk provides for this scenario: The FastAGI protocol and the Manager API.

Asterisk .NET is compatible with Asterisk 1.0 and 1.2.
The FastAGI implementation supports all commands currently available from Asterisk.

The Manager API implementation supports receiving events from the Asterisk server (e.g. call progess, registered peers, channel state) and sending actions to Asterisk (e.g. originate call, agent login/logoff, start/stop voice recording)."
You dont need any special libraries or tools to access the Astrisk Manager API. You just establish a normal tcp/ip connection to the manager port and send the text commands. See http://www.voip-info.org/wiki-Asterisk+manager+API
http://www.voip-info.org/wiki/view/Asterisk+manager+Examples contains links to a C~ and C++ example among others.
What grblades says is true, but you will find that the raw API is quite low level. I have used it to create a Windows application (written in Delphi) that monitors call activity on the Asterisk server. It took me an hour to get the socket connection and login working, but approx 90 hours to get it to the point where I am happy with the information it displays and the functionality it offers. That is essentially just a monitoring tool - I don't use it to load the scripts or create the conf files. (Maybe in version 2 one day - oh dream on).

Depending on what you are trying to do, you might find it easier/cheaper to find a commercial package that provides the entire interface. There are some available, but they often seem to hide the fact that there is an Asterisk server under the bonnet (that's "under the hood" if you're american). In UK there is one called VoIPOffice from Telappliant which I think is Asterisk based.

If you want to develop a bespoke application, then be prepared to invest some time or consider employing a consultant to do it for you. (My rates are very reasonable!!).

If you are looking for an already present API that lets you connect to the asterisk server using manager api go for
The Asterisk-java library at http://asterisk-java.sourceforge.net/

Tutorial is availble at http://asterisk-java.sourceforge.net/tutorial.html

Documentation of the API is at: http://asterisk-java.sourceforge.net/apidocs/index.html
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.