diff --git a/Classes/CallHistoryTableViewController.h b/Classes/CallHistoryTableViewController.h
index db06fa58e..d4630d69d 100644
--- a/Classes/CallHistoryTableViewController.h
+++ b/Classes/CallHistoryTableViewController.h
@@ -21,7 +21,9 @@
@interface CallHistoryTableViewController : GenericTabViewController {
-
+ UIButton* clear;
}
+-(void) doAction:(id) sender;
+@property (nonatomic, retain) IBOutlet UIButton* clear;
@end
diff --git a/Classes/CallHistoryTableViewController.m b/Classes/CallHistoryTableViewController.m
index d3737b7c8..3e248bd8a 100644
--- a/Classes/CallHistoryTableViewController.m
+++ b/Classes/CallHistoryTableViewController.m
@@ -22,7 +22,7 @@
@implementation CallHistoryTableViewController
-
+@synthesize clear;
/*
- (id)initWithStyle:(UITableViewStyle)style {
@@ -86,6 +86,12 @@
}
+-(void) doAction:(id)sender {
+ if (sender==clear) {
+ linphone_core_clear_call_logs(myLinphoneCore);
+ [self.tableView reloadData];
+ }
+}
#pragma mark Table view methods
@@ -108,29 +114,40 @@
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
- cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
+ cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
}
// Set up the cell...
- LinphoneCallLog* callLogs = ms_list_nth_data(linphone_core_get_call_logs(myLinphoneCore), indexPath.row) ;
- const char* username = linphone_address_get_username(callLogs->to)!=0?linphone_address_get_username(callLogs->to):"";
-
- [cell.textLabel setText:[[NSString alloc] initWithCString:username encoding:[NSString defaultCStringEncoding]]];
+ LinphoneAddress* partyToDisplay;
+ const MSList * logs = linphone_core_get_call_logs(myLinphoneCore);
+ LinphoneCallLog* callLogs = ms_list_nth_data(logs, ms_list_size(logs)-indexPath.row-1) ;
-
NSString *path;
-
if (callLogs->dir == LinphoneCallIncoming) {
path = [[NSBundle mainBundle] pathForResource:@"in_call" ofType:@"png"];
-
+ partyToDisplay=callLogs->from;
+
} else {
path = [[NSBundle mainBundle] pathForResource:@"out_call" ofType:@"png"];
-
+ partyToDisplay=callLogs->to;
+
}
UIImage *image = [UIImage imageWithContentsOfFile:path];
cell.imageView.image = image;
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
+
+ const char* username = linphone_address_get_username(partyToDisplay)!=0?linphone_address_get_username(partyToDisplay):"";
+ const char* displayName = linphone_address_get_display_name(partyToDisplay);
+ if (displayName) {
+ [cell.textLabel setText:[[NSString alloc] initWithCString:displayName encoding:[NSString defaultCStringEncoding]]];
+ [cell.detailTextLabel setText:[NSString stringWithFormat:@"%s"/* [%s]"*/,username/*,callLogs->start_date*/]];
+ } else {
+ [cell.textLabel setText:[[NSString alloc] initWithCString:username encoding:[NSString defaultCStringEncoding]]];
+ }
+
+
+
return cell;
}
@@ -142,9 +159,22 @@
// [anotherViewController release];
[tableView deselectRowAtIndexPath:indexPath animated:NO];
- LinphoneCallLog* callLogs = ms_list_nth_data(linphone_core_get_call_logs(myLinphoneCore), indexPath.row) ;
- const char* username = linphone_address_get_username(callLogs->to)!=0?linphone_address_get_username(callLogs->to):"";
- [self.phoneControllerDelegate setPhoneNumber:[[NSString alloc] initWithCString:username encoding:[NSString defaultCStringEncoding]]];
+ const MSList * logs = linphone_core_get_call_logs(myLinphoneCore);
+ LinphoneCallLog* callLogs = ms_list_nth_data(logs, ms_list_size(logs)-indexPath.row-1) ;
+ LinphoneAddress* partyToCall;
+ if (callLogs->dir == LinphoneCallIncoming) {
+ partyToCall=callLogs->from;
+
+ } else {
+ partyToCall=callLogs->to;
+
+ }
+ const char* username = linphone_address_get_username(partyToCall)!=0?linphone_address_get_username(partyToCall):"";
+ const char* displayName = linphone_address_get_display_name(partyToCall)!=0?linphone_address_get_display_name(partyToCall):"";
+ [self.phoneControllerDelegate
+ setPhoneNumber:[[NSString alloc] initWithCString:username encoding:[NSString defaultCStringEncoding]]
+ withDisplayName:[[NSString alloc] initWithCString:displayName encoding:[NSString defaultCStringEncoding]]];
+
[self.linphoneDelegate selectDialerTab];
}
diff --git a/Classes/CallHistoryTableViewController.xib b/Classes/CallHistoryTableViewController.xib
index f68b21c32..fea5a5b11 100644
--- a/Classes/CallHistoryTableViewController.xib
+++ b/Classes/CallHistoryTableViewController.xib
@@ -147,6 +147,23 @@
11
+
+
+
+ doAction:
+
+
+ 7
+
+ 13
+
@@ -218,7 +235,7 @@
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
{{393, 486}, {320, 480}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
- {{520, 620}, {320, 44}}
+ {{625, 616}, {320, 44}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
@@ -243,7 +260,7 @@
- 11
+ 13
@@ -251,6 +268,14 @@
CallHistoryTableViewController
GenericTabViewController
+
+ doAction:
+ id
+
+
+ clear
+ UIButton
+
IBProjectSource
Classes/CallHistoryTableViewController.h
diff --git a/Classes/PhoneViewController.h b/Classes/PhoneViewController.h
index 0748788ea..9b75bd394 100644
--- a/Classes/PhoneViewController.h
+++ b/Classes/PhoneViewController.h
@@ -34,6 +34,7 @@
//UI definition
UITextField* address;
UIButton* call;
+ UIButton* hangup;
UILabel* status;
@@ -61,6 +62,7 @@
}
@property (nonatomic, retain) IBOutlet UITextField* address;
@property (nonatomic, retain) IBOutlet UIButton* call;
+@property (nonatomic, retain) IBOutlet UIButton* hangup;
@property (nonatomic, retain) IBOutlet UILabel* status;
@property (nonatomic, retain) IBOutlet UIButton* one;
diff --git a/Classes/PhoneViewController.m b/Classes/PhoneViewController.m
index 1caf46a56..82221e25a 100644
--- a/Classes/PhoneViewController.m
+++ b/Classes/PhoneViewController.m
@@ -28,6 +28,7 @@
@implementation PhoneViewController
@synthesize address ;
@synthesize call;
+@synthesize hangup;
@synthesize status;
@synthesize one;
@@ -72,8 +73,9 @@
, &audioRouteOverride);
- }
-
+ } else if (sender == hangup) {
+ linphone_core_terminate_call(mCore,NULL);
+ }
}
//implements keypad behavior
@@ -85,6 +87,7 @@
[address setText:@""];
}
NSString* newAddress = nil;
+
if (sender == one) {
newAddress = [address.text stringByAppendingString:@"1"];
} else if (sender == two) {
@@ -122,7 +125,36 @@
if (newAddress != nil) {
[address setText:newAddress];
}
- }
+ } else {
+ //incall behavior
+ if (sender == one) {
+ linphone_core_send_dtmf(mCore,'1');
+ } else if (sender == two) {
+ linphone_core_send_dtmf(mCore,'2');
+ } else if (sender == three) {
+ linphone_core_send_dtmf(mCore,'3');
+ } else if (sender == four) {
+ linphone_core_send_dtmf(mCore,'4');
+ } else if (sender == five) {
+ linphone_core_send_dtmf(mCore,'5');
+ } else if (sender == six) {
+ linphone_core_send_dtmf(mCore,'6');
+ } else if (sender == seven) {
+ linphone_core_send_dtmf(mCore,'7');
+ } else if (sender == eight) {
+ linphone_core_send_dtmf(mCore,'8');
+ } else if (sender == nine) {
+ linphone_core_send_dtmf(mCore,'9');
+ } else if (sender == star) {
+ linphone_core_send_dtmf(mCore,'*');
+ } else if (sender == zero) {
+ linphone_core_send_dtmf(mCore,'0');
+ } else if (sender == hash) {
+ linphone_core_send_dtmf(mCore,'#');
+ } else if (sender == hangup) {
+ linphone_core_terminate_call(mCore,NULL);
+ }
+ }
}
//implements keypad up
@@ -242,8 +274,6 @@
switch (state->new_state) {
case GSTATE_CALL_IN_INVITE:
case GSTATE_CALL_OUT_INVITE: {
- //[myIncallViewController startCall];
- [self presentModalViewController: myIncallViewController animated:true];
break;
}
@@ -265,13 +295,10 @@
break;
case GSTATE_CALL_IN_CONNECTED:
case GSTATE_CALL_OUT_CONNECTED: {
- [myIncallViewController startCall];
break;
}
case GSTATE_CALL_END: {
- //end off call, just dismiss Incall view
- [self dismissIncallView];
break;
}
default:
diff --git a/Classes/PhoneViewController.xib b/Classes/PhoneViewController.xib
index 13a9d9866..0f0bcb483 100644
--- a/Classes/PhoneViewController.xib
+++ b/Classes/PhoneViewController.xib
@@ -8,7 +8,7 @@
353.00
YES
-
+
YES
@@ -40,67 +40,14 @@
292
-
- YES
-
-
- 292
- {{0, 20}, {227, 31}}
-
- NO
- NO
- 0
-
- 3
- sip:
-
- 3
- MAA
-
- 2
-
-
- YES
- 1.700000e+01
-
- 3
-
-
-
- 292
- {{231, 20}, {51, 32}}
-
- NO
- NO
- 0
- 0
-
- Helvetica-Bold
- 1.500000e+01
- 16
-
- 1
- PC0gA
-
- 3
- MQA
-
-
- 1
- MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA
-
-
- 3
- MC41AA
-
-
-
- {{18, -6}, {282, 63}}
+ {{18, -6}, {282, 49}}
3
MSAwAA
-
+
+ 2
+
NO
NO
@@ -108,19 +55,30 @@
292
- {{21, 312}, {72, 59}}
+ {{0, 331}, {160, 60}}
NO
NO
0
0
-
-
+
+ Helvetica-Bold
+ 1.500000e+01
+ 16
+
+ 1
+
+ 3
+ MQA
+
1
MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA
-
+
+ 3
+ MC41AA
+
NSImage
green.png
@@ -129,7 +87,7 @@
292
- {{0, 379}, {312, 21}}
+ {{9, 389}, {304, 21}}
NO
YES
@@ -146,7 +104,7 @@
292
- {{217, 65}, {83, 51}}
+ {{213, 89}, {107, 60}}
NO
NO
@@ -165,7 +123,7 @@
292
- {{21, 124}, {83, 52}}
+ {{0, 149}, {107, 60}}
NO
NO
@@ -184,7 +142,7 @@
292
- {{120, 124}, {83, 52}}
+ {{107, 149}, {106, 60}}
NO
NO
@@ -203,7 +161,7 @@
292
- {{217, 124}, {83, 52}}
+ {{213, 149}, {107, 60}}
NO
NO
@@ -222,7 +180,7 @@
292
- {{21, 184}, {83, 52}}
+ {{0, 209}, {107, 60}}
NO
NO
@@ -241,7 +199,7 @@
292
- {{217, 184}, {83, 52}}
+ {{213, 209}, {107, 60}}
NO
NO
@@ -260,7 +218,7 @@
292
- {{120, 65}, {83, 51}}
+ {{107, 89}, {106, 60}}
NO
NO
@@ -279,8 +237,12 @@
292
- {{21, 65}, {83, 51}}
+ {{0, 89}, {107, 60}}
+
+ 1
+ MC40MDAwMDAwMSAxIDEgMAA
+
NO
NO
0
@@ -298,7 +260,7 @@
292
- {{21, 244}, {83, 52}}
+ {{0, 269}, {107, 60}}
NO
NO
@@ -317,7 +279,7 @@
292
- {{120, 246}, {83, 52}}
+ {{107, 269}, {106, 60}}
NO
NO
@@ -336,7 +298,7 @@
292
- {{217, 244}, {83, 52}}
+ {{213, 269}, {107, 60}}
NO
NO
@@ -352,23 +314,10 @@
-
-
- 292
- {{120, 306}, {175, 65}}
-
- NO
- NO
- NO
-
- NSImage
- linphone.png
-
-
292
- {{118, 186}, {83, 52}}
+ {{107, 209}, {106, 60}}
NO
NO
@@ -384,12 +333,60 @@
+
+
+ 292
+ {{160, 333}, {160, 60}}
+
+ NO
+ NO
+ 0
+ 0
+
+ 1
+
+
+ 1
+ MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA
+
+
+
+ NSImage
+ red.png
+
+
+
+
+ 292
+ {{20, 30}, {282, 31}}
+
+ NO
+ NO
+ 0
+
+ 3
+ sip:
+
+ 3
+ MAA
+
+
+
+ Helvetica
+ 1.800000e+01
+ 16
+
+ YES
+ 1.700000e+01
+
+ 3
+
{320, 460}
1
- MCAwLjUwMTk2MDgxIDEAA
+ MC45MDE5NjA3OSAwLjkwMTk2MDc5IDAuOTAxOTYwNzkAA
5
@@ -544,14 +541,6 @@
54
-
-
- back
-
-
-
- 83
-
doKeyPad:
@@ -670,13 +659,21 @@
98
-
- doKeyPad:
-
-
- 1
+
+ hangup
+
+
- 106
+ 109
+
+
+
+ doAction:
+
+
+ 7
+
+ 110
@@ -715,30 +712,26 @@
YES
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
- 42
-
-
-
41
@@ -810,29 +803,26 @@
YES
-
-
AddressView
-
- 4
-
-
- Address
-
-
- 81
-
-
- back
-
35
+
+ 107
+
+
+
+
+ 4
+
+
+ Address
+
@@ -843,7 +833,9 @@
-2.CustomClassName
1.IBEditorWindowLastContentRect
1.IBPluginDependency
+ 1.IBUserGuides
104.IBPluginDependency
+ 107.IBPluginDependency
29.IBPluginDependency
30.IBPluginDependency
31.IBPluginDependency
@@ -857,12 +849,10 @@
4.IBPluginDependency
40.IBPluginDependency
41.IBPluginDependency
- 42.IBPluginDependency
5.IBPluginDependency
7.IBPluginDependency
80.IBEditorWindowLastContentRect
80.IBPluginDependency
- 81.IBPluginDependency
YES
@@ -870,6 +860,14 @@
UIResponder
{{581, 299}, {320, 460}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
+
+ YES
+
+
+ 4.100000e+02
+ 1
+
+
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
@@ -887,8 +885,7 @@
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
- {{353, 469}, {320, 480}}
- com.apple.InterfaceBuilder.IBCocoaTouchPlugin
+ {{204, 440}, {320, 480}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
@@ -912,7 +909,7 @@
- 106
+ 113
@@ -945,6 +942,7 @@
eight
five
four
+ hangup
hash
nine
one
@@ -970,6 +968,7 @@
UIButton
UIButton
UIButton
+ UIButton
UILabel
UIButton
UIButton
diff --git a/Classes/linphoneAppDelegate.h b/Classes/linphoneAppDelegate.h
index cf18657e5..0e13bae87 100644
--- a/Classes/linphoneAppDelegate.h
+++ b/Classes/linphoneAppDelegate.h
@@ -33,7 +33,6 @@
@class IncallViewController;
@class PhoneViewController;
@class CallHistoryTableViewController;
-@class FavoriteTableViewController;
@interface linphoneAppDelegate : NSObject {
UIWindow *window;
@@ -41,11 +40,10 @@
IBOutlet ABPeoplePickerNavigationController* myPeoplePickerController;
IBOutlet PhoneViewController* myPhoneViewController;
CallHistoryTableViewController* myCallHistoryTableViewController;
- FavoriteTableViewController* myFavoriteTableViewController;
ContactPickerDelegate* myContactPickerDelegate;
- int traceLevel;
+ bool isDebug;
LinphoneCore* myLinphoneCore;
diff --git a/Classes/linphoneAppDelegate.m b/Classes/linphoneAppDelegate.m
index 181d6d4d0..38d26fa03 100644
--- a/Classes/linphoneAppDelegate.m
+++ b/Classes/linphoneAppDelegate.m
@@ -89,11 +89,10 @@ LinphoneCoreVTable linphonec_vtable = {
- (void)applicationDidFinishLaunching:(UIApplication *)application {
//as defined in PhoneMainView.xib
-#define DIALER_TAB_INDEX 2
-#define CONTACTS_TAB_INDEX 3
-#define HISTORY_TAB_INDEX 1
-#define FAVORITE_TAB_INDEX 0
-#define MORE_TAB_INDEX 4
+#define DIALER_TAB_INDEX 1
+#define CONTACTS_TAB_INDEX 2
+#define HISTORY_TAB_INDEX 0
+#define MORE_TAB_INDEX 3
myPhoneViewController = (PhoneViewController*) [myTabBarController.viewControllers objectAtIndex: DIALER_TAB_INDEX];
@@ -102,9 +101,6 @@ LinphoneCoreVTable linphonec_vtable = {
[myCallHistoryTableViewController setPhoneControllerDelegate:myPhoneViewController];
[myCallHistoryTableViewController setLinphoneDelegate:self];
- myFavoriteTableViewController = (FavoriteTableViewController*)[myTabBarController.viewControllers objectAtIndex: FAVORITE_TAB_INDEX];
- [myFavoriteTableViewController setPhoneControllerDelegate:myPhoneViewController];
- [myFavoriteTableViewController setLinphoneDelegate:self];
//people picker delegates
myContactPickerDelegate = [[ContactPickerDelegate alloc] init];
@@ -130,7 +126,7 @@ LinphoneCoreVTable linphonec_vtable = {
[self startlibLinphone];
[myCallHistoryTableViewController setLinphoneCore: myLinphoneCore];
- [myFavoriteTableViewController setLinphoneCore: myLinphoneCore];
+
[myPhoneViewController setLinphoneCore: myLinphoneCore];
@@ -160,14 +156,13 @@ LinphoneCoreVTable linphonec_vtable = {
//get default config from bundle
NSBundle* myBundle = [NSBundle mainBundle];
- NSString* defaultConfigFile = [myBundle pathForResource:@"linphonerc"ofType:nil] ;
-#if TARGET_IPHONE_SIMULATOR
- NSDictionary *dictionary = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:YES] forKey:NSFileImmutable];
- [[NSFileManager defaultManager] setAttributes:dictionary ofItemAtPath:defaultConfigFile error:nil];
-#endif
+ NSString* factoryConfig = [myBundle pathForResource:@"linphonerc"ofType:nil] ;
+ NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
+ NSString *confiFileName = [[paths objectAtIndex:0] stringByAppendingString:@"/.linphonerc"];
+ ;
//log management
- traceLevel = 9;
- if (traceLevel > 0) {
+ isDebug = [[NSUserDefaults standardUserDefaults] boolForKey:@"debugenable_preference"];
+ if (isDebug) {
//redirect all traces to the iphone log framework
linphone_core_enable_logs_with_cb(linphone_iphone_log_handler);
}
@@ -182,7 +177,10 @@ LinphoneCoreVTable linphonec_vtable = {
* Initialize linphone core
*/
- myLinphoneCore = linphone_core_new (&linphonec_vtable, [defaultConfigFile cStringUsingEncoding:[NSString defaultCStringEncoding]],nil,self);
+ myLinphoneCore = linphone_core_new (&linphonec_vtable
+ , [confiFileName cStringUsingEncoding:[NSString defaultCStringEncoding]]
+ , [factoryConfig cStringUsingEncoding:[NSString defaultCStringEncoding]]
+ ,self);
// Set audio assets
const char* lRing = [[myBundle pathForResource:@"oldphone-mono"ofType:@"wav"] cStringUsingEncoding:[NSString defaultCStringEncoding]];
@@ -192,34 +190,36 @@ LinphoneCoreVTable linphonec_vtable = {
//configure sip account
- //get data from Settings bundle
- NSString* accountNameUri = [[NSUserDefaults standardUserDefaults] stringForKey:@"account_preference"];
- const char* identity = [accountNameUri cStringUsingEncoding:[NSString defaultCStringEncoding]];
+
+ //madatory parameters
+ NSString* username = [[NSUserDefaults standardUserDefaults] stringForKey:@"username_preference"];
+ NSString* domain = [[NSUserDefaults standardUserDefaults] stringForKey:@"domain_preference"];
NSString* accountPassword = [[NSUserDefaults standardUserDefaults] stringForKey:@"password_preference"];
- const char* password = [accountPassword cStringUsingEncoding:[NSString defaultCStringEncoding]];
- NSString* proxyUri = [[NSUserDefaults standardUserDefaults] stringForKey:@"proxy_preference"];
- const char* proxy = [proxyUri cStringUsingEncoding:[NSString defaultCStringEncoding]];
-
- NSString* routeUri = [[NSUserDefaults standardUserDefaults] stringForKey:@"route_preference"];
- const char* route = [routeUri cStringUsingEncoding:[NSString defaultCStringEncoding]];
-
- if (([accountNameUri length] + [proxyUri length]) >8 ) {
+ if (username && [username length] >0 && domain && [domain length]>0) {
+
+
+ const char* identity = [[NSString stringWithFormat:@"sip:%@@%@",username,domain] cStringUsingEncoding:[NSString defaultCStringEncoding]];
+ const char* password = [accountPassword cStringUsingEncoding:[NSString defaultCStringEncoding]];
+
+ NSString* proxyAddress = [[NSUserDefaults standardUserDefaults] stringForKey:@"proxy_preference"];
+ if ((!proxyAddress | [proxyAddress length] <1 ) && domain) {
+ proxyAddress = [NSString stringWithFormat:@"sip:%@",domain] ;
+ } else {
+ proxyAddress = [NSString stringWithFormat:@"sip:%@",proxyAddress] ;
+ }
+
+ const char* proxy = [proxyAddress cStringUsingEncoding:[NSString defaultCStringEncoding]];
+
+ NSString* prefix = [[NSUserDefaults standardUserDefaults] stringForKey:@"prefix_preference"];
//possible valid config detected
LinphoneProxyConfig* proxyCfg;
//clear auth info list
linphone_core_clear_all_auth_info(myLinphoneCore);
- //get default proxy
- linphone_core_get_default_proxy(myLinphoneCore,&proxyCfg);
- boolean_t addProxy=false;
- if (proxyCfg == NULL) {
- //create new proxy
- proxyCfg = linphone_proxy_config_new();
- addProxy = true;
- } else {
- linphone_proxy_config_edit(proxyCfg);
- }
+ //clear existing proxy config
+ linphone_core_clear_proxy_config(myLinphoneCore);
+ proxyCfg = linphone_proxy_config_new();
// add username password
osip_from_t *from;
@@ -234,20 +234,17 @@ LinphoneCoreVTable linphonec_vtable = {
// configure proxy entries
linphone_proxy_config_set_identity(proxyCfg,identity);
linphone_proxy_config_set_server_addr(proxyCfg,proxy);
- if ([routeUri length] > 4) {
- linphone_proxy_config_set_route(proxyCfg,route);
- }
- linphone_proxy_config_enable_register(proxyCfg,TRUE);
- if (addProxy) {
- linphone_core_add_proxy_config(myLinphoneCore,proxyCfg);
- //set to default proxy
- linphone_core_set_default_proxy(myLinphoneCore,proxyCfg);
- } else {
- linphone_proxy_config_done(proxyCfg);
+
+ if ([prefix length]>0) {
+ linphone_proxy_config_set_dial_prefix(proxyCfg, [prefix cStringUsingEncoding:[NSString defaultCStringEncoding]]);
}
+ linphone_proxy_config_set_dial_escape_plus(proxyCfg,TRUE);
+ linphone_proxy_config_enable_register(proxyCfg, TRUE);
+ linphone_core_add_proxy_config(myLinphoneCore,proxyCfg);
+ //set to default proxy
+ linphone_core_set_default_proxy(myLinphoneCore,proxyCfg);
}
-
//Configure Codecs
PayloadType *pt;
diff --git a/PhoneMainView.xib b/PhoneMainView.xib
index a9588c6ae..c133e9bbf 100644
--- a/PhoneMainView.xib
+++ b/PhoneMainView.xib
@@ -63,15 +63,6 @@
YES
-
-
- Favorites
-
-
-
- FavoriteTableViewController
-
-
History
@@ -180,7 +171,6 @@
-
@@ -251,20 +241,6 @@
-
- 46
-
-
- YES
-
-
-
-
-
- 47
-
-
-
@@ -287,8 +263,6 @@
41.CustomClassName
41.IBPluginDependency
43.IBPluginDependency
- 46.CustomClassName
- 46.IBPluginDependency
8.IBEditorWindowLastContentRect
8.IBPluginDependency
9.IBPluginDependency
@@ -319,8 +293,6 @@
CallHistoryTableViewController
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
- FavoriteTableViewController
- com.apple.InterfaceBuilder.IBCocoaTouchPlugin
{{11, 205}, {320, 480}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
@@ -359,31 +331,6 @@
Classes/CallHistoryTableViewController.h
-
- FavoriteTableViewController
- GenericTabViewController
-
- YES
-
- YES
- doAddFavorite:
- doEditFavorite:
-
-
- YES
- id
- id
-
-
-
- add
- UIButton
-
-
- IBProjectSource
- Classes/FavoriteTableViewController.h
-
-
GenericTabViewController
UITableViewController
@@ -432,10 +379,10 @@
address
back
call
- cancel
eight
five
four
+ hangup
hash
nine
one
diff --git a/Settings.bundle/Root.plist b/Settings.bundle/Root.plist
index 0e692f772..3349b60fa 100644
--- a/Settings.bundle/Root.plist
+++ b/Settings.bundle/Root.plist
@@ -16,11 +16,11 @@
Type
PSTextFieldSpecifier
Title
- sip identity
+ User name
Key
- account_preference
+ username_preference
DefaultValue
- sip:
+
IsSecure
KeyboardType
@@ -52,15 +52,15 @@
Type
PSTextFieldSpecifier
Title
- proxy
+ Domain
Key
- proxy_preference
+ domain_preference
DefaultValue
- sip:
+
IsSecure
KeyboardType
- Alphabet
+ URL
AutocapitalizationType
None
AutocorrectionType
@@ -70,15 +70,15 @@
Type
PSTextFieldSpecifier
Title
- route
+ Proxy
Key
- route_preference
+ proxy_preference
DefaultValue
- sip:
+
IsSecure
KeyboardType
- Alphabet
+ URL
AutocapitalizationType
None
AutocorrectionType
@@ -91,16 +91,17 @@
Codecs
- Type
- PSToggleSwitchSpecifier
- Title
- Speex 32Khz
- Key
- speex_32k_preference
- DefaultValue
-
-
-
+ TrueValue
+
+ Type
+ PSToggleSwitchSpecifier
+ Title
+ Speex 8Khz
+ Key
+ speex_8k_preference
+ DefaultValue
+
+
Type
PSToggleSwitchSpecifier
Title
@@ -111,6 +112,17 @@
+ TrueValue
+
+ Type
+ PSToggleSwitchSpecifier
+ Title
+ Speex 8Khz
+ Key
+ speex_8k_preference
+ DefaultValue
+
+
Type
PSToggleSwitchSpecifier
Title
@@ -124,27 +136,7 @@
Type
PSToggleSwitchSpecifier
Title
- GSM 22Khz
- Key
- gsm_22k_preference
- DefaultValue
-
-
-
- Type
- PSToggleSwitchSpecifier
- Title
- GSM 11Khz
- Key
- gsm_11k_preference
- DefaultValue
-
-
-
- Type
- PSToggleSwitchSpecifier
- Title
- GSM 8Khz
+ GSM
Key
gsm_8k_preference
DefaultValue
@@ -158,7 +150,7 @@
Key
pcmu_preference
DefaultValue
-
+
Type
@@ -168,8 +160,42 @@
Key
pcma_preference
DefaultValue
+
+
+
+ Type
+ PSGroupSpecifier
+ Title
+ Advanced
+
+
+ Type
+ PSToggleSwitchSpecifier
+ Title
+ Debug
+ Key
+ debugenable_preference
+ DefaultValue
+
+ Type
+ PSTextFieldSpecifier
+ Title
+ Prefix
+ Key
+ prefix_preference
+ DefaultValue
+
+ IsSecure
+
+ KeyboardType
+ NumberPad
+ AutocapitalizationType
+ None
+ AutocorrectionType
+ No
+