Situation
I would like to receive terminal (headless) SIP calls working on my Raspberry Pi, and I already tried this with linphone:
RaspberryPI: Make outgoing SIP calls using linphonec or an alternative SIP cell phone
Since I was stuck there right now, I wanted to try another option that was SFLPhone . They pointed me to the ring project, which offers the dring daemon, which allows you to make SIP calls using the scripting interface:
Indeed, the daemon can work autonomously and be controlled using the DBus API.
Please note that the project has been renamed the "Ring" (version packed up to 2.x). Experimental packages are available at http://ring.cx/en/documentation/linux-installation The main feature of the 2.x ring is an optional DHT account type that allows you to make calls without any SIP server. There are many other improvements such as ICE support, UPnP support, stability improvements, etc. (note that the clients are chatting (GTK3, Qt5), and there is a new OS X client, they are not yet full-fledged and in heavy development.)
New demon dring source Git repo URI: https://gerrit-ring.savoirfairelinux.com/ring . The DBus API is basically the same as before. In the tools/dringctrl you will find an example python client that we use for testing (uses python3-dbus ).
We are ready to fix any errors that you may find, here is the bugtracker daemon: https://projects.savoirfairelinux.com/projects/ring-daemon/issues Also see https://projects.savoirfairelinux.com/projects/ring/wiki for build team, etc.
Regards and good luck for your embedded project, AB
Dependency Compilation
I tried to compile the dependencies for the project, as indicated in README :
git clone https://gerrit-ring.savoirfairelinux.com/ring cd ring
Compile Dependencies First
cd ../contrib/ rm -fr native/ && mkdir native cd native ../bootstrap make
I got this error:
libvpx.webm-4640a0c4804b/third_party/googletest/src/include/gtest/gtest.h mv libvpx-4640a0c4804b49f1870d5a2d17df0c7d0a77af2f libvpx && touch libvpx cd libvpx && CROSS= ./configure --target=armv7-linux-gcc \ --as=yasm --disable-docs --disable-examples --disable-unit-tests --disable-install-bins --disable-install-docs --enable-realtime-only --enable-error-concealment --disable-runtime-cpu-detect --disable-webm-io --enable-pic --prefix=/home/pi/ring/contrib/arm-linux-gnueabihf disabling docs disabling examples disabling unit_tests disabling install_bins disabling install_docs enabling realtime_only enabling error_concealment disabling runtime_cpu_detect disabling webm_io enabling pic Configuring selected codecs enabling vp8_encoder enabling vp8_decoder enabling vp9_encoder enabling vp9_decoder Configuring for target 'armv7-linux-gcc' enabling armv7 enabling neon enabling neon_asm enabling media Unable to invoke compiler: arm-none-linux-gnueabi-gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 Configuration failed. This could reflect a misconfiguration of your toolchains, improper options selected, or another problem. If you don't see any useful error messages above, the next step is to look at the configure error log file (config.log) to determine what configure was trying to do when it died. ../../contrib/src/vpx/rules.mak:105: recipe for target '.vpx' failed make: *** [.vpx] Error 1
Ring compilation
Despite compiling the dependencies, I tried to compile the ring:
git clone https://gerrit-ring.savoirfairelinux.com/ring cd ring ./autogen.sh ./configure make make install
This caused the following error:
checking for PJPROJECT... no configure: error: Missing pjproject files pi@phone ~/ring $ make make: *** No targets specified and no makefile found. Stop. pi@phone ~/ring $ make install make: *** No rule to make target 'install'. Stop.
So, I'm currently stuck, and I'm afraid that I will not be able to go beyond the current state of my project (๐ฅ):

Edit : now without video codecs (like those suggested by aberaud), I ran into the following error:
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include/opendht -I/home/pi/sip-desaster/ring/contrib/arm-linux-gnueabihf/include -fPIC -I/home/pi/sip-desaster/ring/contrib/arm-linux-gnueabihf/include -g -fPIC -O3 -std=c++0x -I/home/pi/sip-desaster/ring/contrib/arm-linux-gnueabihf/include -g -fPIC -O3 -std=c++0x -c -o libopendht_la-dht.lo `test -f 'dht.cpp' || echo './'`dht.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include/opendht -I/home/pi/sip-desaster/ring/contrib/arm-linux-gnueabihf/include -fPIC -I/home/pi/sip-desaster/ring/contrib/arm-linux-gnueabihf/include -g -fPIC -O3 -std=c++0x -I/home/pi/sip-desaster/ring/contrib/arm-linux-gnueabihf/include -g -fPIC -O3 -std=c++0x -c dht.cpp -fPIC -DPIC -o libopendht_la-dht.o In file included from ../include/opendht/dht.h:29:0, from dht.cpp:27: ../include/opendht/infohash.h:58:22: error: expected initializer before ':' token dht.cpp:3105:1: error: expected '}' at end of input Makefile:386: recipe for target 'libopendht_la-dht.lo' failed make[2]: *** [libopendht_la-dht.lo] Error 1 make[2]: Leaving directory '/home/pi/sip-desaster/ring/contrib/native/opendht/src' Makefile:395: recipe for target 'install-recursive' failed make[1]: *** [install-recursive] Error 1 make[1]: Leaving directory '/home/pi/sip-desaster/ring/contrib/native/opendht' ../../contrib/src/opendht/rules.mak:28: recipe for target '.opendht' failed make: *** [.opendht] Error 2