diff --git a/NEWS b/NEWS index c34031a76..0173bf7d2 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,7 @@ linphone-3.3.0 -- ????????? * new tabbed ui * be nat friendly using OPTIONS request and using received,rport from responses. + * use stun guessed ports even if symmetric is detected (works with freeboxes) * improve bitrate usage of speex codec * allow speex to run with vbr (variable bit rate) mode * add speex/32000 (ultra wide band speex codec) diff --git a/configure.in b/configure.in index fec1ed279..2ecf17659 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([linphone],[3.2.99.5],[linphone-developers@nongnu.org]) +AC_INIT([linphone],[3.2.99.7],[linphone-developers@nongnu.org]) AC_CANONICAL_SYSTEM dnl Source packaging numbers diff --git a/coreapi/help/doxygen.dox.in b/coreapi/help/doxygen.dox.in index acdec9090..13502d424 100644 --- a/coreapi/help/doxygen.dox.in +++ b/coreapi/help/doxygen.dox.in @@ -28,6 +28,49 @@ * @verbinclude COPYING */ +/** + * @defgroup tutorial_liblinphone Tutorial: Placing and receiving calls with liblinphone + * + +
+ ##include+ + /** * @defgroup initializing Initialization and destruction diff --git a/coreapi/misc.c b/coreapi/misc.c index 894c3fc22..55aa83d4d 100644 --- a/coreapi/misc.c +++ b/coreapi/misc.c @@ -567,7 +567,8 @@ void linphone_core_run_stun_tests(LinphoneCore *lc, LinphoneCall *call){ } } } - if (ac->addr[0]!='\0' && vc->addr[0]!='\0' && strcmp(ac->addr,vc->addr)==0){ + if ((ac->addr[0]!='\0' && vc->addr[0]!='\0' && strcmp(ac->addr,vc->addr)==0) + || sock2==-1){ strcpy(call->localdesc->addr,ac->addr); } close_socket(sock1); diff --git a/mediastreamer2 b/mediastreamer2 index b437bd3bc..0ca839b53 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit b437bd3bcac6ce8f09218168ae75cc11e9a9255e +Subproject commit 0ca839b53751c4b687535bcfae747273f3dd0c44+ + //callback function for notification of incoming calls + static void on_invite_recv(LinphoneCore *lc, const char *from){ + printf("Receiving a call from %s\n",from); + } + + //callback function for notification end of calls (by remote) + static void on_bye_recv(LinphoneCore *lc, const char *from){ + printf("Remote end hangup\n"); + } + + / + static void on_display_status(LinphoneCore *lc, const char *msg){ + printf("%s",msg); + } + + int main(int argc, char *argv[]){ + LinphoneCoreVTable vtable; + + memset(&vtable,0,sizeof(vtable)); + vtable.inv_recv=&on_invite_recv; + vtable.bye_recv=&on_bye_recv; + vtable.display_status=&on_display_status; + + } + +