Skip to content
Snippets Groups Projects
Commit b1d1eb46 authored by Emmanuel Milou's avatar Emmanuel Milou
Browse files

SIP transfer OK

The dtmf's was sent. Bad
parent 38d095a5
No related branches found
No related tags found
No related merge requests found
...@@ -55,6 +55,28 @@ sflphone_notify_voice_mail (guint count) ...@@ -55,6 +55,28 @@ sflphone_notify_voice_mail (guint count)
status_bar_message_add(message, __MSG_VOICE_MAILS); status_bar_message_add(message, __MSG_VOICE_MAILS);
g_free(message); g_free(message);
} }
// TODO: add ifdef
if( account_list_get_size() > 0 )
{
account_t* acc = account_list_get_by_state( ACCOUNT_STATE_REGISTERED );
if( acc == NULL )
{
// Notify that no account is registered
//notify_no_account_registered();
}
else
{
if( account_list_get_default() == NULL ){
// Notify that the first registered account has count voice mails
notify_voice_mails( count , acc );
}
else
{
// Notify that the default registered account has count voice mails
notify_voice_mails( count , account_list_get_by_id(account_list_get_default()) );
}
}
}
} }
void void
...@@ -345,6 +367,7 @@ sflphone_unset_transfert() ...@@ -345,6 +367,7 @@ sflphone_unset_transfert()
} }
toolbar_update_buttons(); toolbar_update_buttons();
} }
void void
sflphone_incoming_call (call_t * c) sflphone_incoming_call (call_t * c)
{ {
...@@ -357,7 +380,7 @@ sflphone_incoming_call (call_t * c) ...@@ -357,7 +380,7 @@ sflphone_incoming_call (call_t * c)
void process_dialing(call_t * c, guint keyval, gchar * key) void process_dialing(call_t * c, guint keyval, gchar * key)
{ {
// We stop the tone // We stop the tone
if(strlen(c->to) == 0){ if(strlen(c->to) == 0 && c->state != CALL_STATE_TRANSFERT){
dbus_start_tone( FALSE , 0 ); dbus_start_tone( FALSE , 0 );
dbus_play_dtmf( key ); dbus_play_dtmf( key );
} }
...@@ -421,10 +444,10 @@ void process_dialing(call_t * c, guint keyval, gchar * key) ...@@ -421,10 +444,10 @@ void process_dialing(call_t * c, guint keyval, gchar * key)
call_t * sflphone_new_call() call_t * sflphone_new_call()
{ {
// Play a tone when creating a new call
if( call_list_get_size() == 0 ) if( call_list_get_size() == 0 )
{
dbus_start_tone( TRUE , ( voice_mails > 0 )? TONE_WITH_MESSAGE : TONE_WITHOUT_MESSAGE) ; dbus_start_tone( TRUE , ( voice_mails > 0 )? TONE_WITH_MESSAGE : TONE_WITHOUT_MESSAGE) ;
}
call_t * c = g_new0 (call_t, 1); call_t * c = g_new0 (call_t, 1);
c->state = CALL_STATE_DIALING; c->state = CALL_STATE_DIALING;
c->from = g_strconcat("\"\" <>", NULL); c->from = g_strconcat("\"\" <>", NULL);
......
...@@ -377,6 +377,7 @@ ManagerImpl::transferCall(const CallID& id, const std::string& to) ...@@ -377,6 +377,7 @@ ManagerImpl::transferCall(const CallID& id, const std::string& to)
if (_dbus) _dbus->getCallManager()->callStateChanged(id, "HUNGUP"); if (_dbus) _dbus->getCallManager()->callStateChanged(id, "HUNGUP");
switchCall(""); switchCall("");
return returnValue; return returnValue;
} }
......
...@@ -840,6 +840,7 @@ SIPVoIPLink::transfer(const CallID& id, const std::string& to) ...@@ -840,6 +840,7 @@ SIPVoIPLink::transfer(const CallID& id, const std::string& to)
} }
eXosip_unlock(); eXosip_unlock();
_audiortp.closeRtpSession();
// shall we delete the call? // shall we delete the call?
//removeCall(id); //removeCall(id);
return true; return true;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment