weizhengliang 6 месяцев назад
Родитель
Сommit
139ca2d63f

+ 15 - 0
android_mobile/src/main/yd_w_xiaomi_2_chile/code/com/wdkl/ncs/android/component/home/service/WdKeepAliveService.kt

@@ -46,11 +46,13 @@ import com.wdkl.ncs.android.middleware.tcp.enums.*
 import com.wdkl.ncs.android.middleware.utils.CommonUtils
 import com.wdkl.ncs.android.middleware.utils.ContactHelper
 import com.wdkl.ncs.android.middleware.utils.StringUtil
+import com.wdkl.ncs.host.sip.core.LinphoneManager
 import com.wdkl.ncs.keepbackground.work.AbsWorkService
 import com.wdkl.rtc.rtc.AudioFocusManager
 import org.greenrobot.eventbus.EventBus
 import org.greenrobot.eventbus.Subscribe
 import org.greenrobot.eventbus.ThreadMode
+import org.linphone.core.TransportType
 import java.util.*
 import java.util.concurrent.ConcurrentLinkedQueue
 import java.util.concurrent.ScheduledExecutorService
@@ -409,6 +411,19 @@ class WdKeepAliveService : AbsWorkService() {
                     || tcpModel.getAction() == TcpAction.VoiceAction.CANCEL
                     || tcpModel.getAction() == TcpAction.VoiceAction.VOICE_OFF) {
                     EventBus.getDefault().post(MessageEvent(tcpModel, 2))
+                } else if (tcpModel.getAction() == TcpAction.VoiceAction.SIP_RECONNECT) {
+                    //重连sip
+                    if (SettingConfig.getSipEnabled(BaseApplication.appContext)) {
+                        if (!TextUtils.isEmpty(Constants.sipId) && !TextUtils.isEmpty(Constants.sip_ip)) {
+                            LinphoneManager.getInstance(BaseApplication.appContext)
+                                .createProxyConfig(
+                                    Constants.sipId!!,
+                                    Constants.sipId!!,
+                                    "${Constants.sip_ip}:5060",
+                                    TransportType.Udp
+                                )
+                        }
+                    }
                 }
             }
 

+ 15 - 0
android_mobile/src/main/yd_watch_2/code/com/wdkl/ncs/android/component/home/service/WdKeepAliveService.kt

@@ -46,11 +46,13 @@ import com.wdkl.ncs.android.middleware.tcp.enums.RoleTypeEnum
 import com.wdkl.ncs.android.middleware.tcp.enums.TcpAction
 import com.wdkl.ncs.android.middleware.tcp.enums.TcpType
 import com.wdkl.ncs.android.middleware.utils.ContactHelper
+import com.wdkl.ncs.host.sip.core.LinphoneManager
 import com.wdkl.ncs.keepbackground.work.AbsWorkService
 import com.wdkl.rtc.rtc.AudioFocusManager
 import org.greenrobot.eventbus.EventBus
 import org.greenrobot.eventbus.Subscribe
 import org.greenrobot.eventbus.ThreadMode
+import org.linphone.core.TransportType
 import java.util.*
 import java.util.concurrent.ConcurrentLinkedQueue
 
@@ -369,6 +371,19 @@ class WdKeepAliveService : AbsWorkService() {
                     }
 
                     EventBus.getDefault().post(MessageEvent(tcpModel, 2))
+                } else if (tcpModel.getAction() == TcpAction.VoiceAction.SIP_RECONNECT) {
+                    //重连sip
+                    if (SettingConfig.getSipEnabled(BaseApplication.appContext)) {
+                        if (!TextUtils.isEmpty(Constants.sipId) && !TextUtils.isEmpty(Constants.sip_ip)) {
+                            LinphoneManager.getInstance(BaseApplication.appContext)
+                                .createProxyConfig(
+                                    Constants.sipId!!,
+                                    Constants.sipId!!,
+                                    "${Constants.sip_ip}:5060",
+                                    TransportType.Udp
+                                )
+                        }
+                    }
                 }
             }