From 911b526564403dd1e7f9e010487562b188005405 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Thu, 30 Aug 2012 16:30:58 +0200 Subject: [PATCH] fix a bunch of settings --- Classes/LinphoneCoreSettingsStore.m | 33 +++++++++++++++++------- Classes/LinphoneManager.m | 1 + Resources/linphonerc | 14 +++++++++- Resources/linphonerc-factory | 9 ++----- Settings/InAppSettings.bundle/Call.plist | 2 -- submodules/linphone | 2 +- 6 files changed, 40 insertions(+), 21 deletions(-) diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index 6dbc8ffef..eb1032839 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -103,6 +103,7 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [self setString: linphone_address_get_username(addr) forKey:@"username_preference"]; [self setString: linphone_address_get_domain(addr) forKey:@"domain_preference"]; [self setInteger: linphone_proxy_config_get_expires(cfg) forKey:@"expire_preference"]; + [self setString:linphone_proxy_config_get_dial_prefix(cfg) forKey:@"prefix_preference"]; if (strcmp(linphone_address_get_domain(addr),linphone_address_get_domain(proxy_addr))!=0 || port!=NULL){ char tmp[256]={0}; @@ -115,6 +116,7 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); linphone_address_destroy(proxy_addr); [self setBool: (linphone_proxy_config_get_route(cfg)!=NULL) forKey:@"outbound_proxy_preference"]; + [self setBool:linphone_proxy_config_get_dial_escape_plus(cfg) forKey:@"substitute_+_by_00_preference"]; } } @@ -332,11 +334,11 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); const char* proxy = [proxyAddress cStringUsingEncoding:[NSString defaultCStringEncoding]]; - NSString* prefix = [self stringForKey:@"prefix_preference"]; - bool substitute_plus_by_00 = [self boolForKey:@"substitute_+_by_00_preference"]; + + //possible valid config detected - proxyCfg = linphone_proxy_config_new(); + proxyCfg = linphone_core_create_proxy_config(lc); // add username password LinphoneAddress *from = linphone_address_new(identity); @@ -356,19 +358,30 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); if (isWifiOnly && lLinphoneMgr.connectivity == wwan) { linphone_proxy_config_expires(proxyCfg, 0); } else { - int expire = [self integerForKey:@"expire_preference"]; - if(expire < lLinphoneMgr.defaultExpires) - expire = lLinphoneMgr.defaultExpires; - linphone_proxy_config_expires(proxyCfg, expire); + if ([self objectForKey:@"expire_preference"]) { + int expire = [self integerForKey:@"expire_preference"]; + /*if(expire < lLinphoneMgr.defaultExpires) + expire = lLinphoneMgr.defaultExpires;*/ + linphone_proxy_config_expires(proxyCfg, expire); + } + //else not set + } if (isOutboundProxy) linphone_proxy_config_set_route(proxyCfg,proxy); - if ([prefix length]>0) { - linphone_proxy_config_set_dial_prefix(proxyCfg, [prefix cStringUsingEncoding:[NSString defaultCStringEncoding]]); + if ([self objectForKey:@"prefix_preference"]) { + NSString* prefix = [self stringForKey:@"prefix_preference"]; + if ([prefix length]>0) { + linphone_proxy_config_set_dial_prefix(proxyCfg, [prefix cStringUsingEncoding:[NSString defaultCStringEncoding]]); + } } - linphone_proxy_config_set_dial_escape_plus(proxyCfg,substitute_plus_by_00); + if ([self objectForKey:@"substitute_+_by_00_preference"]) { + bool substitute_plus_by_00 = [self boolForKey:@"substitute_+_by_00_preference"]; + linphone_proxy_config_set_dial_escape_plus(proxyCfg,substitute_plus_by_00); + } + [[LinphoneManager instance ]addPushTokenToProxyConfig : proxyCfg ]; diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index ee5abc758..99e103af9 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -612,6 +612,7 @@ static LinphoneCoreVTable linphonec_vtable = { /* Initialize linphone core*/ [LinphoneLogger logc:LinphoneLoggerLog format:"Create linphonecore"]; + linphone_core_enable_logs_with_cb((OrtpLogFunc)linphone_iphone_log_handler); theLinphoneCore = linphone_core_new (&linphonec_vtable , [confiFileName cStringUsingEncoding:[NSString defaultCStringEncoding]] , [factoryConfig cStringUsingEncoding:[NSString defaultCStringEncoding]] diff --git a/Resources/linphonerc b/Resources/linphonerc index 2b37b20f2..1aa810d4c 100644 --- a/Resources/linphonerc +++ b/Resources/linphonerc @@ -4,7 +4,19 @@ sip_tcp_random_port=1 sip_tls_random_port=1 contact="Linphone iPhone" keepalive_period=30000 +default_proxy=0 [rtp] audio_rtp_port=7076 -video_rtp_port=9078 \ No newline at end of file +video_rtp_port=9078 + +[video] +display=1 +capture=1 +show_local=0 +enabled=1 +size=qvga +display_filter_auto_rotate=1 + + + diff --git a/Resources/linphonerc-factory b/Resources/linphonerc-factory index d69466a06..c2a9d7950 100644 --- a/Resources/linphonerc-factory +++ b/Resources/linphonerc-factory @@ -29,11 +29,6 @@ dtmf_player_amp=0.007 history_max_size=30 max_calls=3 -[video] -display=1 -capture=1 -show_local=0 -enabled=1 -size=qvga -display_filter_auto_rotate=1 +[default_values] +reg_expires=600 diff --git a/Settings/InAppSettings.bundle/Call.plist b/Settings/InAppSettings.bundle/Call.plist index b5e1a7f6d..378b6b856 100644 --- a/Settings/InAppSettings.bundle/Call.plist +++ b/Settings/InAppSettings.bundle/Call.plist @@ -15,8 +15,6 @@ Key prefix_preference - KeyboardType - NumberPad Title Prefix Type diff --git a/submodules/linphone b/submodules/linphone index e1f018f27..4e847d24c 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit e1f018f274274d7574ebadd27659098453d8d1b5 +Subproject commit 4e847d24ca5c3a5012cb62beee4248667428b24c