|
@@ -179,7 +179,6 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
showMessage("对方忙线中")
|
|
|
} else {
|
|
|
showMessage("通话失败,请重试")
|
|
|
- init()
|
|
|
}
|
|
|
AppTool.Time.delay(800) {
|
|
|
finish()
|
|
@@ -201,7 +200,7 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
Handler().postDelayed({
|
|
|
//防止建立连接的时候 不能成功切换外音
|
|
|
session.toggleSpeaker(true)
|
|
|
- }, 3000)
|
|
|
+ }, 2400)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -248,11 +247,9 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
val voiceUtilTcpModel = VoiceUtil.voiceHandoff(Constants.deviceId, tcpModel.fromId, interactionVO.id)
|
|
|
TcpClient.getInstance().sendMsg(voiceUtilTcpModel.toJson())
|
|
|
}
|
|
|
-
|
|
|
- AppTool.Time.delay(800) {
|
|
|
- finish()
|
|
|
- }
|
|
|
}
|
|
|
+ gEngineKit?.endCall()
|
|
|
+ finish()
|
|
|
}
|
|
|
|
|
|
fun initCountDownTimer() {
|
|
@@ -278,18 +275,35 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
call_duration_tv.text = "连接中...."
|
|
|
createCallout()
|
|
|
} else if (tcpModel.action == TcpAction.VoiceAction.HANDOFF) { //对方挂断
|
|
|
- call_duration_tv.stop()
|
|
|
- AppTool.Time.delay(800) {
|
|
|
+
|
|
|
+ var interactionVO: InteractionVO? = null
|
|
|
+ if (tcpModel.data.javaClass.name == String::class.java.name) {
|
|
|
+ interactionVO = Gson().fromJson(this.tcpModel.data.toString(), InteractionVO::class.java)
|
|
|
+ } else {
|
|
|
+ interactionVO = this.tcpModel.data as InteractionVO
|
|
|
+ }
|
|
|
+ val currentTnVO = Gson().fromJson(tcpModel.data.toString(), InteractionVO::class.java)
|
|
|
+ if (interactionVO!!.id == currentTnVO.id){
|
|
|
+ call_duration_tv.stop()
|
|
|
+ showMessage("对方挂断")
|
|
|
+ gEngineKit?.currentSession?.leave()
|
|
|
finish()
|
|
|
}
|
|
|
} else if (tcpModel.action === TcpAction.VoiceAction.REJECT) {
|
|
|
- //voiceStatus.setText("对方拒绝接听");
|
|
|
- showMessage("对方拒绝接听")
|
|
|
- AppTool.Time.delay(800) {
|
|
|
+ var interactionVO: InteractionVO? = null
|
|
|
+ if (tcpModel.data.javaClass.name == String::class.java.name) {
|
|
|
+ interactionVO = Gson().fromJson(this.tcpModel.data.toString(), InteractionVO::class.java)
|
|
|
+ } else {
|
|
|
+ interactionVO = this.tcpModel.data as InteractionVO
|
|
|
+ }
|
|
|
+ val currentTnVO = Gson().fromJson(tcpModel.data.toString(), InteractionVO::class.java)
|
|
|
+ if (interactionVO!!.id == currentTnVO.id){
|
|
|
+ showMessage("对方拒绝接听")
|
|
|
finish()
|
|
|
}
|
|
|
+
|
|
|
} else if (tcpModel.action === TcpAction.VoiceAction.CALLING) {
|
|
|
- showMessage("对方正在通话")
|
|
|
+ //showMessage("对方正在通话")
|
|
|
AppTool.Time.delay(800) {
|
|
|
finish()
|
|
|
}
|
|
@@ -322,9 +336,6 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
}
|
|
|
MediaPlayHelper.getInstance().stopMusic()
|
|
|
EventBus.getDefault().unregister(this)
|
|
|
-
|
|
|
- val session = gEngineKit?.currentSession
|
|
|
- session?.leave()
|
|
|
}
|
|
|
|
|
|
override fun onResume() {
|
|
@@ -336,8 +347,11 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
}
|
|
|
|
|
|
override fun didDisconnected(userId: String?) {
|
|
|
+ //val session = gEngineKit?.currentSession
|
|
|
+ //Log.i(TAG+"_peer","userId : $userId <> myId = ${session?.mMyId} , targetId = ${session?.mTargetId}, roomId = ${session?.roomId}, state = ${session?.state}")
|
|
|
+ gEngineKit?.endCall()
|
|
|
runOnUiThread(Runnable {
|
|
|
- showMessage("对方挂断")
|
|
|
+ //showMessage("对方挂断")
|
|
|
AppTool.Time.delay(800) {
|
|
|
finish()
|
|
|
}
|
|
@@ -348,6 +362,7 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
}
|
|
|
|
|
|
override fun didError(error: String?) {
|
|
|
+ gEngineKit?.endCall()
|
|
|
if (error != null) {
|
|
|
Log.e(TAG, error)
|
|
|
runOnUiThread(Runnable {
|
|
@@ -367,33 +382,34 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
runOnUiThread(Runnable {
|
|
|
when (var1) {
|
|
|
CallEndReason.Busy -> {
|
|
|
- showMessage("忙线中")
|
|
|
+ showMessage("对方忙线中")
|
|
|
}
|
|
|
CallEndReason.AcceptByOtherClient -> {
|
|
|
showMessage("通话中")
|
|
|
}
|
|
|
CallEndReason.Hangup -> {
|
|
|
- //showMessage("对方挂起")
|
|
|
+ //showMessage("挂断")
|
|
|
}
|
|
|
CallEndReason.MediaError -> {
|
|
|
- showMessage("系统错误,请重试")
|
|
|
+ showMessage("媒体错误")
|
|
|
}
|
|
|
CallEndReason.OpenCameraFailure -> {
|
|
|
showMessage("打开摄像头错误")
|
|
|
}
|
|
|
CallEndReason.RemoteHangup -> {
|
|
|
- showMessage("对方挂断")
|
|
|
+ //showMessage("对方挂断")
|
|
|
}
|
|
|
CallEndReason.RemoteSignalError -> {
|
|
|
- showMessage("对方信号出错")
|
|
|
+ showMessage("对方网络断开")
|
|
|
}
|
|
|
CallEndReason.SignalError -> {
|
|
|
- showMessage("信号错误")
|
|
|
+ showMessage("连接断开")
|
|
|
}
|
|
|
CallEndReason.Timeout -> {
|
|
|
- showMessage("连接超时")
|
|
|
+ showMessage("对方未接听")
|
|
|
}
|
|
|
}
|
|
|
+ //gEngineKit?.endCall()
|
|
|
AppTool.Time.delay(800) {
|
|
|
finish()
|
|
|
}
|
|
@@ -404,6 +420,10 @@ class WebRTCVoipAudioActivity : Activity(), View.OnClickListener, CallSessionCal
|
|
|
}
|
|
|
|
|
|
override fun didUserLeave(userId: String?) {
|
|
|
- finish()
|
|
|
+ gEngineKit?.endCall()
|
|
|
+ runOnUiThread {
|
|
|
+ showMessage("用户 $userId 离开")
|
|
|
+ finish()
|
|
|
+ }
|
|
|
}
|
|
|
}
|