Commit f6239618 authored by jehan's avatar jehan
Browse files

Merge branch 'master' of git.linphone.org:linphone-private

parents 2d7d7fdb 3b919335
No related merge requests found
Showing with 48 additions and 3 deletions
...@@ -7,6 +7,7 @@ linphone-3.3.0 -- ????????? ...@@ -7,6 +7,7 @@ linphone-3.3.0 -- ?????????
* new tabbed ui * new tabbed ui
* be nat friendly using OPTIONS request and using received,rport from * be nat friendly using OPTIONS request and using received,rport from
responses. responses.
* use stun guessed ports even if symmetric is detected (works with freeboxes)
* improve bitrate usage of speex codec * improve bitrate usage of speex codec
* allow speex to run with vbr (variable bit rate) mode * allow speex to run with vbr (variable bit rate) mode
* add speex/32000 (ultra wide band speex codec) * add speex/32000 (ultra wide band speex codec)
......
dnl Process this file with autoconf to produce a configure script. 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 AC_CANONICAL_SYSTEM
dnl Source packaging numbers dnl Source packaging numbers
......
...@@ -28,6 +28,49 @@ ...@@ -28,6 +28,49 @@
* @verbinclude COPYING * @verbinclude COPYING
*/ */
/**
* @defgroup tutorial_liblinphone Tutorial: Placing and receiving calls with liblinphone
*
<H1>Initialize liblinphone</H1>
The first thing to do is to initialize the library passing it a set of callbacks functions to receive
various notifications: incoming calls, progress of calls etc...
These callbacks are all grouped in the LinphoneCoreVTable structure.
All are optionnals (use NULL if you don't need them).
The following code shows how initialize liblinphone:
<PRE>
##include <linphonecore.h>
//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;
}
</PRE>
/** /**
* @defgroup initializing Initialization and destruction * @defgroup initializing Initialization and destruction
......
...@@ -567,7 +567,8 @@ void linphone_core_run_stun_tests(LinphoneCore *lc, LinphoneCall *call){ ...@@ -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); strcpy(call->localdesc->addr,ac->addr);
} }
close_socket(sock1); close_socket(sock1);
......
mediastreamer2 @ 0ca839b5
Subproject commit b437bd3bcac6ce8f09218168ae75cc11e9a9255e Subproject commit 0ca839b53751c4b687535bcfae747273f3dd0c44
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment