Changing how we decline call when call GSM is active
This commit is contained in:
parent
a6aacef3a3
commit
962654bf7d
2 changed files with 7 additions and 12 deletions
|
@ -87,6 +87,7 @@ import org.linphone.core.PresenceBasicStatus;
|
|||
import org.linphone.core.PresenceActivityType;
|
||||
import org.linphone.core.PresenceModel;
|
||||
import org.linphone.core.PublishState;
|
||||
import org.linphone.core.Reason;
|
||||
import org.linphone.core.SubscriptionState;
|
||||
import org.linphone.core.TunnelConfig;
|
||||
import org.linphone.mediastream.Log;
|
||||
|
@ -1352,8 +1353,11 @@ public class LinphoneManager implements LinphoneCoreListener, LinphoneChatMessag
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
if (state == State.IncomingReceived && (LinphonePreferences.instance().isAutoAnswerEnabled()) && !getCallGsmON()) {
|
||||
if (state == State.IncomingReceived && getCallGsmON()) {
|
||||
if (mLc != null) {
|
||||
mLc.declineCall(call, Reason.Busy);
|
||||
}
|
||||
} else if (state == State.IncomingReceived && (LinphonePreferences.instance().isAutoAnswerEnabled()) && !getCallGsmON()) {
|
||||
TimerTask lTask = new TimerTask() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
@ -1372,8 +1376,7 @@ public class LinphoneManager implements LinphoneCoreListener, LinphoneChatMessag
|
|||
};
|
||||
mTimer = new Timer("Auto answer");
|
||||
mTimer.schedule(lTask, mPrefs.getAutoAnswerTime());
|
||||
}
|
||||
else if (state == State.IncomingReceived || (state == State.CallIncomingEarlyMedia && mR.getBoolean(R.bool.allow_ringing_while_early_media))) {
|
||||
} else if (state == State.IncomingReceived || (state == State.CallIncomingEarlyMedia && mR.getBoolean(R.bool.allow_ringing_while_early_media))) {
|
||||
// Brighten screen for at least 10 seconds
|
||||
if (mLc.getCallsNb() == 1) {
|
||||
requestAudioFocus(STREAM_RING);
|
||||
|
|
|
@ -30,8 +30,6 @@ import android.telephony.TelephonyManager;
|
|||
*
|
||||
*/
|
||||
public class PhoneStateChangedReceiver extends BroadcastReceiver {
|
||||
private static int oldTimeOut;
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
final String extraState = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
|
||||
|
@ -40,15 +38,9 @@ public class PhoneStateChangedReceiver extends BroadcastReceiver {
|
|||
return;
|
||||
|
||||
if (TelephonyManager.EXTRA_STATE_OFFHOOK.equals(extraState)) {
|
||||
if (LinphonePreferences.instance() != null) {
|
||||
oldTimeOut = LinphoneManager.getLc().getIncomingTimeout();
|
||||
LinphoneManager.getLc().setIncomingTimeout(0);
|
||||
}
|
||||
LinphoneManager.getInstance().setCallGsmON(true);
|
||||
LinphoneManager.getLc().pauseAllCalls();
|
||||
} else if (TelephonyManager.EXTRA_STATE_IDLE.equals(extraState)) {
|
||||
if (LinphonePreferences.instance() != null)
|
||||
LinphoneManager.getLc().setIncomingTimeout(oldTimeOut);
|
||||
LinphoneManager.getInstance().setCallGsmON(false);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue