Pārlūkot izejas kodu

优化调试模式,优化网络获取后,自动刷新数据,优化增援逻辑

vothin 2 gadi atpakaļ
vecāks
revīzija
4f02e46d72

+ 12 - 7
jni/logic/callLogic.cc

@@ -257,6 +257,10 @@ static void onUI_intent(const Intent *intentPtr) {
 		_isOutgoing = intentPtr->getExtra(isOutgoing);
 		std::string _audioOnly = intentPtr->getExtra(audioOnly);
 
+		if (StoragePreferences::getString(STORE_SIGNAL_TYPE, SIGNAL_TYPE) == "SIP"){
+			return;
+		}
+
 		if (_isOutgoing == "true"){
 			int toId = 0;
 			_toIdStr = intentPtr->getExtra(toIdStr);
@@ -273,7 +277,7 @@ static void onUI_intent(const Intent *intentPtr) {
 			tcpModel.to_id = toId;
 			std::string req = getTcpModelString(tcpModel);
 			LOGD("TCP CALL : %s",req.c_str());
-//			TcpClient::instance()->sendMsg(req.c_str());
+			setCallTid(tcpModel.tid);
 
 			//回调注册
 			TcpCallback callback;
@@ -343,15 +347,16 @@ static void onUI_hide() {
  * 当界面完全退出时触发
  */
 static void onUI_quit() {
-	EASYUICONTEXT->showStatusBar();
-	EASYUICONTEXT->showNaviBar();
+	if (StoragePreferences::getString(STORE_SIGNAL_TYPE, SIGNAL_TYPE) == "TCP"){
+		EASYUICONTEXT->showNaviBar();
 
-//	wavPlayer.Stop();
-	mediaPlayer.Stop();
+		CallingStatus::instance()->setBusy(false);
+		CallingStatus::instance()->clearTcpModel();
+	}
 
-	CallingStatus::instance()->setBusy(false);
-	CallingStatus::instance()->clearTcpModel();
+	EASYUICONTEXT->showStatusBar();
 
+    mediaPlayer.Stop();
 	mActivityPtr->unregisterUserTimer(goBack);
 }
 

+ 4 - 0
jni/logic/mainLogic.cc

@@ -560,6 +560,10 @@ void setPainterInfo(int deviceId, uint32_t bgColor, const std::string& msg, cons
 void dataRefresh() {
 	LOGD("DATA-REFRESH, 数据刷新");
 
+	if (mActivityPtr == NULL) {
+		return;
+	}
+
 	if (serverInfo) {
 		udp_thread.getServerInfo();
 	}

+ 11 - 3
jni/logic/sipTestLogic.cc

@@ -189,6 +189,8 @@ static void onUI_intent(const Intent *intentPtr) {
  * 当界面显示时触发
  */
 static void onUI_show() {
+	// 切换成SIP模式
+	StoragePreferences::putString(STORE_SIGNAL_TYPE, "SIP");
 
 }
 
@@ -203,6 +205,10 @@ static void onUI_hide() {
  * 当界面完全退出时触发
  */
 static void onUI_quit() {
+	LOGD(">>>>>>>>>>> sip test quit !!!\n");
+	EASYUICONTEXT->showStatusBar();
+	// 切换回TCP模式
+	StoragePreferences::putString(STORE_SIGNAL_TYPE, "TCP");
 
 }
 
@@ -267,14 +273,16 @@ static bool onButtonClick_CallButton(ZKButton *pButton) {
 	std::string od_number = StoragePreferences::getString(SIP_REG_DOOR_ACCOUNT, SIP_REG_DOOR_ACCOUNT_DEFAULT);
 	std::string od_number_uri = URI(od_number, domain, port);
 	LOGD("od_number_uri: %s", od_number_uri.c_str());
-	GetTelephone()->MakeCall(od_number_uri);
+
+	voip::CallSetting setting;
+	setting.enable_video = false;
+
+	GetTelephone()->MakeCall(od_number_uri, setting);
     return false;
 }
 
 static bool onButtonClick_sys_back(ZKButton *pButton) {
     LOGD(" ButtonClick sys_back !!!\n");
-	// 切换回TCP模式
-	StoragePreferences::putString(STORE_SIGNAL_TYPE, "TCP");
     return false;
 }
 static void onCheckedChanged_Checkbox1(ZKCheckBox* pCheckBox, bool isChecked) {

+ 14 - 6
jni/logic/startLogic.cc

@@ -21,7 +21,7 @@
 static bool sosTimerRegistered = true;
 static bool isSleepTimerRegistered = false;		// 是否开启息屏定时任务
 static bool isSleep = false;	// 是否在息屏
-static string sosTid = "";
+static string callTid = "";
 #define HELP_TIMER_HANDLE 3	// 增援的定时器id
 #define SOS_CLICK_TIME_HANDLE 4	// sos的定时器id
 #define SOS_LAMP_TIME_HANDLE 5	// sos的门灯定时器id
@@ -90,7 +90,8 @@ namespace {
 				return;
 			}
 			if (StoragePreferences::getString(STORE_SIGNAL_TYPE, SIGNAL_TYPE) == "SIP"){
-				EASYUICONTEXT->goHome();
+				//EASYUICONTEXT->goHome();
+				EASYUICONTEXT->goBack();
 			}
 
 			//保存通话记录
@@ -191,7 +192,7 @@ void handleMsg(byte* inBytes){
 			LOGD("transfered time : %s", pDate);
 			TimeHelper::setDateTime(pDate);
 
-//			dataRefresh();
+			dataRefresh();
 		}
 	} else if (tcpModel.type == TcpType::REINFORCE){
 		if (tcpModel.action == ReinforceAction::RESPONSED){
@@ -495,7 +496,7 @@ void handleMsg(byte* inBytes){
 				callback.onFalied(tcpModel.json);
 			}
 
-			if (tcpModel.tid != sosTid){
+			if (tcpModel.tid == callTid){
 				callActivityFinish(CallFinishType::FAILED);
 			}
 		}
@@ -542,6 +543,10 @@ void scrrenOn() {
 	BRIGHTNESSHELPER->screenOn();
 }
 
+void setCallTid(std::string tid) {
+	callTid = tid;
+}
+
 //================================= IO 口操作
 //紧急按钮灯,明/灭
 void setSOS_A5(bool light){
@@ -685,6 +690,9 @@ static void onUI_init(){
 	//开启网页
 	httpServer.RunAsync(HTTP_SERVER_PORT);
 
+	// 启动的时候更改为tcp模式
+	StoragePreferences::putString(STORE_SIGNAL_TYPE, "TCP");
+
 
 	//请求版本号
 //	if(UartContext::Uart3IsOpen()) {
@@ -731,6 +739,7 @@ static void onUI_intent(const Intent *intentPtr) {
  * 当界面显示时触发
  */
 static void onUI_show() {
+	StoragePreferences::putString(STORE_SIGNAL_TYPE, "TCP");
 	//进入主界面
 	EASYUICONTEXT->openActivity("mainActivity");
 }
@@ -853,9 +862,8 @@ static void onProtocolDataUpdate(const SProtocolData &data) {
 					std::string heartStr2 = "DOORLED,200F";
 					const char* sendMsg2 = heartStr2.c_str();
 					sendProtocolTo(UART_TTYS2, (byte*)(sendMsg2), strlen(sendMsg2));
-
-					sosTid = tcpModel.tid;
 					sosTimerRegistered = false;
+
 					mActivityPtr->registerUserTimer(SOS_CLICK_TIME_HANDLE, 10000);		// 10秒后才能触发
 					mActivityPtr->registerUserTimer(SOS_LAMP_TIME_HANDLE, 120000);		// 2分钟后才能触发
 				}

+ 0 - 2
jni/logic/ui3Logic.cc

@@ -436,8 +436,6 @@ static bool onButtonClick_TestConfirmButton(ZKButton *pButton) {
     if (pwd == cpwd){
     	// 关闭密码输入界面
         mTestPasswordWindowPtr->hideWnd();
-        // 切换成SIP模式
-    	StoragePreferences::putString(STORE_SIGNAL_TYPE, "SIP");
     	// 打开SIP调试界面
         EASYUICONTEXT->openActivity("sipTestActivity");
 		return false;

+ 5 - 2
jni/service/BusinessConfig.h

@@ -52,8 +52,8 @@
 #define STORE_ROOM_CALL_BED "room_call_bed"
 #define SIGNAL_TYPE "TCP" //TCP,SIP
 
-static std::string version = "v1.0.30";
-static int versionNo = 30;
+static std::string version = "v1.0.33";
+static int versionNo = 33;
 static std::string serverIP = "172.28.100.100";
 static std::string tcpIP = "172.28.100.100";
 static int serverHttpPort = 8006;
@@ -128,6 +128,9 @@ bool getSleepTimerRegistered();
 // 设置是否开启息屏定时任务
 void setSleepTimerRegistered(bool result);
 
+// 设置callTid
+void setCallTid(std::string tid);
+
 // 设置护理的tcpModel
 void setNursingTcpModel(TcpModel source);
 /**

BIN
libs/armeabi/libzkgui.so


BIN
obj/activity/DeviceUpdateActivity.o


BIN
obj/activity/callActivity.o


BIN
obj/activity/mainActivity.o


BIN
obj/activity/sipTestActivity.o


BIN
obj/activity/startActivity.o


BIN
obj/activity/statusbar.o


BIN
obj/activity/ui3Activity.o


BIN
obj/activity/warnActivity.o


BIN
obj/core/update_assistant.o


BIN
obj/net/tcp_client.o


BIN
obj/server/http_server.o


BIN
obj/service/BusinessConfig.o


BIN
obj/service/time.o


BIN
ui/main.ftu