dtmf: add toggle in account settings
Choose between RTP or SIP dtmf. THis is the first step before presenting
a software dialpad during calls, and be able to respond to automated
systems
Change-Id: Ia09cf6a2c4bc2abcf2ca766ab7c760f7cdedd8da
Tuleap: #154
diff --git a/src/AccGeneralVC.mm b/src/AccGeneralVC.mm
index d9d1472..d8df65a 100644
--- a/src/AccGeneralVC.mm
+++ b/src/AccGeneralVC.mm
@@ -31,6 +31,8 @@
__unsafe_unretained IBOutlet NSSecureTextField *passwordTextField;
NSTextField *clearTextField;
+ __unsafe_unretained IBOutlet NSButton *dtmfRTPButton;
+ __unsafe_unretained IBOutlet NSButton *dtmfSIPButton;
__unsafe_unretained IBOutlet NSButton *upnpButton;
__unsafe_unretained IBOutlet NSButton *autoAnswerButton;
__unsafe_unretained IBOutlet NSButton *userAgentButton;
@@ -47,6 +49,8 @@
USERNAME = 2,
PASSWORD = 3,
USERAGENT = 4,
+ DTMF_SIP = 5,
+ DTMF_RTP = 6,
};
- (void)awakeFromNib
@@ -57,6 +61,8 @@
[usernameTextField setTag:TagViews::USERNAME];
[passwordTextField setTag:TagViews::PASSWORD];
[userAgentTextField setTag:TagViews::USERAGENT];
+ [dtmfRTPButton setTag:DTMF_RTP];
+ [dtmfSIPButton setTag:DTMF_SIP];
QObject::connect(AccountModel::instance().selectionModel(),
&QItemSelectionModel::currentChanged,
@@ -100,6 +106,8 @@
[userAgentTextField setEnabled:AccountModel::instance().selectedAccount()->hasCustomUserAgent()];
[autoAnswerButton setState:AccountModel::instance().selectedAccount()->isAutoAnswer()];
[userAgentTextField setStringValue:account->userAgent().toNSString()];
+
+ (account->DTMFType() == DtmfType::OverRtp) ? [dtmfRTPButton setState:NSOnState] : [dtmfSIPButton setState:NSOnState];
}
- (IBAction)tryRegistration:(id)sender {
@@ -164,4 +172,17 @@
break;
}
}
+
+- (IBAction)toggleDTMFType:(id)sender
+{
+ switch ([sender tag]) {
+ case TagViews::DTMF_RTP:
+ AccountModel::instance().selectedAccount()->setDTMFType(DtmfType::OverRtp);
+ break;
+ case TagViews::DTMF_SIP:
+ AccountModel::instance().selectedAccount()->setDTMFType(DtmfType::OverSip);
+ break;
+ }
+}
+
@end