Bill hamilton
2018-09-10 16:37:27 UTC
Hi guy,
I encounter the serious bug that no any volume response when you make
an out-gong call and touch button to change the volume, the volume of
speaker and handset always the same, however, when it comes to incoming
call , everything is fine, no any volume problem.
Setting file, I remove the auto-adjust volume. The library is :
linphone-android , android studio to compile and download the code into the
devices.
Following are a part of incoming and outgoing call function:
public void acceptCall() {
LinphoneCore lc = LinphoneManager.getLc();
LinphoneCall calls[] = lc.getCalls();
//Loop through all the active calls and find the one that is
incoming
//for (LinphoneCall thisCall : calls) {
try {
LinphoneCall ic = lc.getCallById(LinphoneCall.INCOMING_CALL);
//WMI-769 added a check if the incoming call is null
if (ic != null && ic.getState() ==
LinphoneCall.State.IncomingReceived) {
Log.i("acceptCall()", " Accepting");
lc.acceptCall(ic);
ic.enableEchoCancellation(true);
//If we already have a call, pause it and change its id to
WAITING_CALL
LinphoneCall pc = lc.getCallById(LinphoneCall.PRIMARY_CALL);
if (pc != null) {
lc.pauseCall(pc);
pc.setId(LinphoneCall.WAITING_CALL);
}
//Make sure this call is set as primary
ic.setId(LinphoneCall.PRIMARY_CALL);
//If a conference exists, add this call to it.
if (lc.getConference() != null) {
lc.addToConference(ic);
}
//If there is more than one call, pause the others
this.resumeCallById(ic.getId());
} else {
Log.i("acceptCall()", " Not Incoming");
}
} catch (LinphoneCoreException e) {
e.printStackTrace();
}
}
public void call(String destinationSipAddress) throws
LinphoneCoreException {
//First, start captions
//startCaptions();
Log.i("HI: CALL", "LinphoneShimModule.call()");
LinphoneCore lc = LinphoneManager.getLc();
//LinphoneProxyConfig[] proxies = lc.getProxyConfigList();
// lc.enableEchoLimiter(true);
LinphoneAddress callTo =
LinphoneCoreFactory.instance().createLinphoneAddress(destinationSipAddress);
//Make Primary Call
lc.setDefaultProxyConfig(this.primaryProxy);
LinphoneCall call = lc.inviteId(callTo,LinphoneCall.PRIMARY_CALL);
// call.enableEchoCancellation(true);
//LinphoneManager.setPrimaryCall(call); //Tell linphone manager
which call is primary
Log.i("HI: call() PRIMARY","to:"+callTo.toString()+"
proxy:"+lc.getDefaultProxyConfig().getProxy()); //Log the proxy we are using
Log.i("HI: CALL", "Call to " + destinationSipAddress + " is in
progress...");
}
Thanks,
Bill
I encounter the serious bug that no any volume response when you make
an out-gong call and touch button to change the volume, the volume of
speaker and handset always the same, however, when it comes to incoming
call , everything is fine, no any volume problem.
Setting file, I remove the auto-adjust volume. The library is :
linphone-android , android studio to compile and download the code into the
devices.
Following are a part of incoming and outgoing call function:
public void acceptCall() {
LinphoneCore lc = LinphoneManager.getLc();
LinphoneCall calls[] = lc.getCalls();
//Loop through all the active calls and find the one that is
incoming
//for (LinphoneCall thisCall : calls) {
try {
LinphoneCall ic = lc.getCallById(LinphoneCall.INCOMING_CALL);
//WMI-769 added a check if the incoming call is null
if (ic != null && ic.getState() ==
LinphoneCall.State.IncomingReceived) {
Log.i("acceptCall()", " Accepting");
lc.acceptCall(ic);
ic.enableEchoCancellation(true);
//If we already have a call, pause it and change its id to
WAITING_CALL
LinphoneCall pc = lc.getCallById(LinphoneCall.PRIMARY_CALL);
if (pc != null) {
lc.pauseCall(pc);
pc.setId(LinphoneCall.WAITING_CALL);
}
//Make sure this call is set as primary
ic.setId(LinphoneCall.PRIMARY_CALL);
//If a conference exists, add this call to it.
if (lc.getConference() != null) {
lc.addToConference(ic);
}
//If there is more than one call, pause the others
this.resumeCallById(ic.getId());
} else {
Log.i("acceptCall()", " Not Incoming");
}
} catch (LinphoneCoreException e) {
e.printStackTrace();
}
}
public void call(String destinationSipAddress) throws
LinphoneCoreException {
//First, start captions
//startCaptions();
Log.i("HI: CALL", "LinphoneShimModule.call()");
LinphoneCore lc = LinphoneManager.getLc();
//LinphoneProxyConfig[] proxies = lc.getProxyConfigList();
// lc.enableEchoLimiter(true);
LinphoneAddress callTo =
LinphoneCoreFactory.instance().createLinphoneAddress(destinationSipAddress);
//Make Primary Call
lc.setDefaultProxyConfig(this.primaryProxy);
LinphoneCall call = lc.inviteId(callTo,LinphoneCall.PRIMARY_CALL);
// call.enableEchoCancellation(true);
//LinphoneManager.setPrimaryCall(call); //Tell linphone manager
which call is primary
Log.i("HI: call() PRIMARY","to:"+callTo.toString()+"
proxy:"+lc.getDefaultProxyConfig().getProxy()); //Log the proxy we are using
Log.i("HI: CALL", "Call to " + destinationSipAddress + " is in
progress...");
}
Thanks,
Bill