In attended call transfer, check if peer supports REPLACES header

This commit is contained in:
Juha Heinanen
2026-04-03 14:13:58 +03:00
parent bdaee6f013
commit cc3fc1b23d
6 changed files with 27 additions and 5 deletions
@@ -1579,13 +1579,20 @@ private fun CallRow(
enabled = call.transferButtonEnabled.value,
onClick = {
if (call.onHoldCall != null) {
val connection = ConnectionService.connections[call.callp]
connection?.onHold()
if (!call.executeTransfer()) {
alertTitle.value = ctx.getString(R.string.notice)
alertMessage.value = ctx.getString(R.string.transfer_failed)
if (!Api.call_supported(call.callp, Call.REPLACES)) {
alertTitle.value = ctx.getString(R.string.notice)
alertMessage.value = ctx.getString(R.string.replaces_not_supported)
showAlert.value = true
}
else {
val connection = ConnectionService.connections[call.callp]
connection?.onHold()
if (!call.executeTransfer()) {
alertTitle.value = ctx.getString(R.string.notice)
alertMessage.value = ctx.getString(R.string.transfer_failed)
showAlert.value = true
}
}
}
else
showTransferDialog = true