diff options
author | Liong Sauw Ming <ming@teluu.com> | 2010-08-27 06:46:29 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2010-08-27 06:46:29 +0000 |
commit | a5c285d7fd046c862ef2ba11cd8bef71786db939 (patch) | |
tree | 13247c6735d6bb8f6a4b6d5253b39dd8a4b0e6a3 /pjsip-apps/src/pjsua/pjsua_app.c | |
parent | 41b2998504157f24d6b991d372e77addbed55030 (diff) |
Closed ticket #1107: iOS4 background feature
* pjlib:
* add support for activesock TCP to work in background mode.
* add feature in ioqueue to recreate closed UDP sockets.
* pjsip-apps:
* ipjsua: add support for iPhone OS 4 background mode
* ipjsystest: add support for iPhone OS 4 background mode
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3299 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps/src/pjsua/pjsua_app.c')
-rw-r--r-- | pjsip-apps/src/pjsua/pjsua_app.c | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/pjsip-apps/src/pjsua/pjsua_app.c b/pjsip-apps/src/pjsua/pjsua_app.c index f51a30cd..9da513d7 100644 --- a/pjsip-apps/src/pjsua/pjsua_app.c +++ b/pjsip-apps/src/pjsua/pjsua_app.c @@ -158,6 +158,23 @@ pj_log_func *log_cb = NULL; * Configuration manipulation */ +#if (defined(PJ_IPHONE_OS_HAS_MULTITASKING_SUPPORT) && \ + PJ_IPHONE_OS_HAS_MULTITASKING_SUPPORT!=0) || \ + defined(__IPHONE_4_0) +void keepAliveFunction(int timeout) +{ + int i; + for (i=0; i<(int)pjsua_acc_get_count(); ++i) { + if (!pjsua_acc_is_valid(i)) + continue; + + if (app_config.acc_cfg[i].reg_timeout < timeout) + app_config.acc_cfg[i].reg_timeout = timeout; + pjsua_acc_set_registration(i, PJ_TRUE); + } +} +#endif + /* Show usage */ static void usage(void) { @@ -2456,12 +2473,17 @@ static void on_incoming_call(pjsua_acc_id acc_id, pjsua_call_id call_id, pjsua_call_get_info(call_id, &call_info); - /* Start ringback */ - ring_start(call_id); - if (current_call==PJSUA_INVALID_ID) current_call = call_id; +#ifdef USE_GUI + if (!showNotification(call_id)) + return; +#endif + + /* Start ringback */ + ring_start(call_id); + if (app_config.auto_answer > 0) { pjsua_call_answer(call_id, app_config.auto_answer, NULL, NULL); } |