|
@@ -9,6 +9,7 @@ import android.content.IntentFilter
|
|
|
import android.graphics.Color
|
|
|
import android.net.Uri
|
|
|
import android.os.Build
|
|
|
+import android.os.CountDownTimer
|
|
|
import android.provider.Settings
|
|
|
import android.support.v4.app.Fragment
|
|
|
import android.support.v4.app.FragmentManager
|
|
@@ -83,6 +84,11 @@ class NurseHomeActivity : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
|
|
|
|
|
|
var receiver :TimeReceiver? = null
|
|
|
|
|
|
+ lateinit var countDownTimer: CountDownTimer
|
|
|
+
|
|
|
+ //呼叫对方设备id
|
|
|
+ var callTargetId: Int? = -1
|
|
|
+
|
|
|
//来电设备id
|
|
|
//private var fromId: Int = -1
|
|
|
//Interaction ID
|
|
@@ -151,6 +157,8 @@ class NurseHomeActivity : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
|
|
|
|
|
|
//设置设置配置
|
|
|
setSettingConfiguration()
|
|
|
+
|
|
|
+ initCountDownTimer()
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -248,7 +256,7 @@ class NurseHomeActivity : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
|
|
|
*页面销毁回调
|
|
|
*/
|
|
|
override fun destory() {
|
|
|
-
|
|
|
+ countDownTimer.cancel()
|
|
|
}
|
|
|
/**
|
|
|
*处理错误信息
|
|
@@ -532,6 +540,21 @@ fun call(tyte:Int){
|
|
|
|
|
|
}
|
|
|
|
|
|
+ fun initCountDownTimer() {
|
|
|
+ countDownTimer = object: CountDownTimer(60*1000L, 1000) {
|
|
|
+ override fun onTick(millisUntilFinished: Long) {
|
|
|
+ //
|
|
|
+ }
|
|
|
+
|
|
|
+ override fun onFinish() {
|
|
|
+ //呼叫超时,退出呼叫界面
|
|
|
+ showMessage("无人应答...")
|
|
|
+ VoiceUtil.cancelAudioCall(Integer.parseInt(Constants.ids), callTargetId)
|
|
|
+ CallDialogHelper.dismissCallDialog()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
|
|
fun onMoonEvent(messageEvent: MessageEvent) {
|
|
@@ -546,7 +569,7 @@ fun call(tyte:Int){
|
|
|
Constants.interactionId = interactionVO.id
|
|
|
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
- CallDialogHelper.showCallDialog(this@NurseHomeActivity, 1, View.OnClickListener {
|
|
|
+ CallDialogHelper.showCallDialog(this@NurseHomeActivity, 1, interactionVO.fromFrameFullName, View.OnClickListener {
|
|
|
//呼出取消
|
|
|
}, View.OnClickListener {
|
|
|
//来电接听
|
|
@@ -564,6 +587,7 @@ fun call(tyte:Int){
|
|
|
Constants.interactionId = interactionVO.id
|
|
|
Constants.fromId = tcpModel.fromId
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
|
|
|
DeviceChannel.calling = true
|
|
|
if (Constants.call_type == 1) {
|
|
@@ -574,27 +598,36 @@ fun call(tyte:Int){
|
|
|
} else if (tcpModel.getAction() == TcpAction.VoiceAction.REJECT) {//对方拒绝
|
|
|
DeviceChannel.calling = false
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
} else if (tcpModel.getAction() == TcpAction.VoiceAction.CANCEL) {//对方取消
|
|
|
DeviceChannel.calling = false
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
} else if (tcpModel.getAction() == TcpAction.VoiceAction.CALLING) {//对方通话中
|
|
|
showMessage("对方忙线中")
|
|
|
DeviceChannel.calling = false
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
} else if (tcpModel.getAction() == TcpAction.VoiceAction.FAILED) {//对方不在线 呼叫失败
|
|
|
showMessage("对方离线或不存在,呼叫失败")
|
|
|
DeviceChannel.calling = false
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
} else if (tcpModel.getAction() == TcpAction.VoiceAction.HANDOFF) {//对方挂断
|
|
|
DeviceChannel.calling = false
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
} else if (tcpModel.getAction() == TcpAction.VoiceAction.SUCCESS) {//服务器返回的呼叫成功tcp
|
|
|
+ callTargetId = interactionVO.toDeviceId
|
|
|
+ countDownTimer.start()
|
|
|
+
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
- CallDialogHelper.showCallDialog(this@NurseHomeActivity, 0, View.OnClickListener {
|
|
|
+ CallDialogHelper.showCallDialog(this@NurseHomeActivity, 0, "", View.OnClickListener {
|
|
|
//呼出取消
|
|
|
DeviceChannel.calling = false
|
|
|
VoiceUtil.cancelAudioCall(Integer.parseInt(Constants.ids), interactionVO.toDeviceId)
|
|
|
CallDialogHelper.dismissCallDialog()
|
|
|
+ countDownTimer.cancel()
|
|
|
}, View.OnClickListener {
|
|
|
//来电接听
|
|
|
}, View.OnClickListener {
|