.NET wrapper for liblinphone library. You can use it for simple interface for SIP telephony.
You can access to wrapped liblinphone actions and events by Phone
class. Only that you need is the SIP account (Account
class).
Current available functionality:
- SIP-proxy connection control:
Connect
Disconnect
Useragent
andVersion
definition
- Call / Register / Error events:
PhoneConnectedEvent
PhoneDisconnectedEvent
IncomingCallEvent
CallActiveEvent
CallCompletedEvent
ErrorEvent
- Make / receive / terminate / record calls:
MakeCall
MakeCallAndRecord
ReceiveCall
ReceiveCallAndRecord
TerminateCall
Account account = new Account ("username", "password", "server");
Phone phone = new Phone (account);
phone.PhoneConnectedEvent += delegate() {
Console.WriteLine("Phone connected. Calling...");
phone.MakeCallAndRecord("phonenumber", "/tmp/filename.wav");
};
phone.CallActiveEvent += delegate(Call call) {
Console.WriteLine("Answered. Call is active!");
};
phone.CallCompletedEvent += delegate(Call call) {
Console.WriteLine("Completed.");
};
phone.Connect (); // connecting
Console.ReadLine ();
Console.WriteLine("Disconnecting...");
phone.Disconnect (); // terminate all calls and disconnect
- .NET 4.0 framework on Windows or Linux (>= Mono 3.2.8)
- last available (>= 3.7.0) liblinphone library binaries installed
It can be hardly built from sources or be gotten from linphone binaries. On Windows it requires almost all dlls from bin
directory of linphone. Complete pack of required liblinphone dlls can be downloaded from here.
It is good if you build liblinphone from sources to have last version of liblinphone shared libraries. Note that this will require some components. For example, this is my "multi spell" for Ubuntu 14.04:
apt-get install g++ git libtool automake autoconf libantlr3c-dev antlr3 make intltool speex libxml2-dev gtk+-2.0-dev libspeexdsp-dev && git clone git://git.linphone.org/linphone.git --recursive && git clone git://git.linphone.org/belle-sip.git && cd belle-sip && ./autogen.sh && ./configure && make && make install && cd ../linphone && ./autogen.sh && ./configure SPEEX_CFLAGS="-L/usr/lib/i386-linux-gnu -lspeex" SPEEX_LIBS="-L/usr/lib/i386-linux-gnu -lspeex" --without--ffmpeg --disable-video && make && make install
LGPLv3 (see LICENSE
file)