|
@@ -341,10 +341,7 @@ public class MainActivity extends WpadActivity {
|
|
|
|
|
|
public boolean bBlockHomeBTN = false;
|
|
|
public boolean bLCDReverse = false;
|
|
|
-
|
|
|
- //public static boolean bRecordingStatus = false; // 거동수상자 녹화중 판별 플래그
|
|
|
- public static boolean bRecordingStopAndNewCall = false; // yjyoon.
|
|
|
-
|
|
|
+
|
|
|
public static boolean bFrontCallUse, bLobbyCallUse, bGuardCallUse, bResiCallUse, bPSTNCallUse, bCallHistoryUse, bVisitorPicUse;
|
|
|
|
|
|
// 앱 실행시 전달받은 이벤트 상태 여부. false 이면 새로운 이벤트가 있음을 의미.
|
|
@@ -655,6 +652,8 @@ public class MainActivity extends WpadActivity {
|
|
|
getCallTimeoutEnable();
|
|
|
addBrActionFilter("CERES_CALL");
|
|
|
addBrActionFilter("CERES_CALL_MULTI");
|
|
|
+ addBrActionFilter(Declare.BR.BR_REQUEST_RECORD_STOP);
|
|
|
+ addBrActionFilter(Declare.BR.BR_REQUEST_NEW_CALL);
|
|
|
|
|
|
sendHandlerMsgDelayed(HANDLERMSG.CHECK_RECEIVINGCALL, 0, 0, 500);
|
|
|
|
|
@@ -742,9 +741,6 @@ public class MainActivity extends WpadActivity {
|
|
|
MainHandler.removeMessages(HANDLERMSG.RECEIVE_NEW_FRONT_CALL);
|
|
|
}
|
|
|
|
|
|
- // yjyoon
|
|
|
- bRecordingStopAndNewCall = false;
|
|
|
-
|
|
|
super.setFinishTimerDestroy();
|
|
|
notifyAppFinish();
|
|
|
// setCallAppRunning(false);
|
|
@@ -903,17 +899,12 @@ public class MainActivity extends WpadActivity {
|
|
|
|
|
|
} else if (intent.getAction().equals(Declare.BR.BR_REQUEST_RECORD_STOP)) {
|
|
|
// WallPadMain > MainActivity - StrangeRecordBroadcastReceiver - Common.BR_RECORD_STOP
|
|
|
- // yjyoon.
|
|
|
// 거동수상자 녹화 중지.
|
|
|
- showStrangerNoticeText(false, false);
|
|
|
|
|
|
- bRecordingStopAndNewCall = true;
|
|
|
+ showStrangerNoticeText(false, false);
|
|
|
|
|
|
- // yjyoon.
|
|
|
- Log.v("yjyoon", "MainActivity > Declare.BR.BR_REQUEST_RECORD_STOP: mediaStopRecord()");
|
|
|
mediaStopRecord(true);
|
|
|
|
|
|
- Log.v("yjyoon", "MainActivity > Declare.BR.BR_REQUEST_RECORD_STOP: mFrontCamOpenCheckHandler 2,3 삭제");
|
|
|
mFrontCamOpenCheckHandler.removeMessages(2);
|
|
|
mFrontCamOpenCheckHandler.removeMessages(3);
|
|
|
|
|
@@ -925,9 +916,20 @@ public class MainActivity extends WpadActivity {
|
|
|
strCallType = intent.getStringExtra(CALLTRIGGER.CALLTYPE);
|
|
|
strRemoteInfo = intent.getStringExtra(CALLTRIGGER.REMOTEINFO);
|
|
|
strCallPopupInfo = intent.getStringExtra("CALLPOPUP"); // 각 스크린 ctrlAlphaBlending > ctrlPopupGUI_Resi or ctrlPopupGUI 에서 사용.
|
|
|
-
|
|
|
- Log.v("yjyoon", String.format("strCallEvent[%s] strCallType[%s] strRemoteInfo[%s] strCallPopupInfo[%s]", strCallEvent, strCallType, strRemoteInfo, strCallPopupInfo));
|
|
|
}
|
|
|
+ } else if (intent.getAction().equals(Declare.BR.BR_REQUEST_NEW_CALL)) {
|
|
|
+ // SIPStun > receiveNewCall > runCallMainActivity
|
|
|
+ // 앱이 동작 중일 때 새로운 콜의 정보를 저장.
|
|
|
+
|
|
|
+ // 월패드에서 경비아이콘을 선택하여 앱을 동작시킨 상태(IDLE)에서 로비로부터 호출이 왔을 때 월패드 화면에 로비 영상이 보이지 않는 문제
|
|
|
+ // 로비는 ctrlPopupGUI(false) 에서 화면이 보여지는데, 경비 화면은 ctrlPopupGUI(false)를 실행하지 않아 로비 영상이 보이지 않음.
|
|
|
+ // 이웃의 경우 화면 초기화시 ctrlPopupGUI_Resi(false) 을 실행하여 로비 영상이 보임.
|
|
|
+
|
|
|
+ strCallOwner = null;
|
|
|
+ strCallEvent = intent.getStringExtra(CALLTRIGGER.CALLEVENTTYPE);
|
|
|
+ strCallType = intent.getStringExtra(CALLTRIGGER.CALLTYPE);
|
|
|
+ strRemoteInfo = intent.getStringExtra(CALLTRIGGER.REMOTEINFO);
|
|
|
+ strCallPopupInfo = intent.getStringExtra("CALLPOPUP"); // 각 스크린 ctrlAlphaBlending > ctrlPopupGUI_Resi or ctrlPopupGUI 에서 사용.
|
|
|
}
|
|
|
}
|
|
|
public String makeSIPID(String strIPAddress) {
|
|
@@ -1519,23 +1521,6 @@ public class MainActivity extends WpadActivity {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
- if((mCurrentScreenId == API_Menu.SubMenuCall.Lobby) && (nScreenId == API_Menu.SubMenuCall.Door))
|
|
|
- {
|
|
|
- //startMultiCallPopup(ID.POPUP.POPUP_MULTICALL, MainActivity.mCallController.mCallInfo.getFRONT());
|
|
|
- finish();
|
|
|
- return true;
|
|
|
- }
|
|
|
- else if((mCurrentScreenId == API_Menu.SubMenuCall.Door) && (nScreenId == API_Menu.SubMenuCall.Lobby))
|
|
|
- {
|
|
|
- if (bRecordingStopAndNewCall) {
|
|
|
- setFinishTimerCreate(Common.FINISH_TIME_START_SCREEN);
|
|
|
- } else {
|
|
|
- //startMultiCallPopup(ID.POPUP.POPUP_MULTICALL, MainActivity.mCallController.mCallInfo.getFRONT());
|
|
|
- finish();
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
// 1. 현재 Layout 삭제
|
|
|
if (mCurrentScreenId > 0) {
|
|
|
ScreenLayout.removeAllViews();
|
|
@@ -3902,11 +3887,14 @@ public class MainActivity extends WpadActivity {
|
|
|
public void run() {
|
|
|
if (mMediaRecorder != null) {
|
|
|
Log.d(TAG, "[mFrontCamOpenCheckHandler] m_mediaRecorder.start");
|
|
|
- if(mFrontCamera != null)
|
|
|
- {
|
|
|
+ if(mFrontCamera != null) {
|
|
|
mMediaRecorder.start();
|
|
|
bMediaRecorder = true;
|
|
|
+ } else {
|
|
|
+ Log.v(TAG, "[mFrontCamOpenCheckHandler] mFrontCamera is null.");
|
|
|
}
|
|
|
+ } else {
|
|
|
+ Log.v(TAG, "[mFrontCamOpenCheckHandler] mMediaRecorder is null.");
|
|
|
}
|
|
|
}
|
|
|
}, iPlayTime);
|
|
@@ -4738,7 +4726,7 @@ public class MainActivity extends WpadActivity {
|
|
|
if (bDel) ScreenLayout.removeView(FrontVideoSurface);
|
|
|
|
|
|
// yjyoon. WallPadMain으로 녹화 종료 이벤트 발생. Common.bWallPadRecoder 값 변경.
|
|
|
- Log.v("yjyoon", "Call MainActivity ###Common.BR_MAIN_NOTI.STOP_RECORDING");
|
|
|
+ Log.d(TAG, "Send Br - Common.BR_MAIN_NOTI.STOP_RECORDING");
|
|
|
Intent newIntent = new Intent(); // 녹화 종료 BR 전송
|
|
|
newIntent.setAction(ACNAME_MAIN_NOTI);
|
|
|
newIntent.putExtra("KIND", /**Common.BR_MAIN_NOTI.STOP_RECORDING*/1027);
|
|
@@ -5646,7 +5634,6 @@ public class MainActivity extends WpadActivity {
|
|
|
|
|
|
if (!bIsGeneratedFirstCallEvent && strCallEvent.equals("DETECT_STRANGER")) {
|
|
|
// yjyoon. 첫번째 이벤트가 생성되기 전이고 그 타입이 거동수상자이면 거동수상자 이벤트를 폐기하고 현관콜 이벤트를 진행한다.
|
|
|
- Log.v("yjyoon", "###### 1");
|
|
|
bIsFirstCallEvent = false;
|
|
|
|
|
|
// 첫번째 이벤트 생성전까지 bBlockFrontCall = false 인 상태에서 현관버튼을 연속으로 눌렀을 때 간혹 1개 이상의 현관콜 이벤트가 수신되는 현상이 있어 이전 메지시를 삭제함.
|
|
@@ -5655,7 +5642,6 @@ public class MainActivity extends WpadActivity {
|
|
|
// 이벤트 메시지 생성
|
|
|
sendHandlerMsgDelayed(HANDLERMSG.RECEIVE_NEW_FRONT_CALL, 0, 0, 100);
|
|
|
} else {
|
|
|
- Log.v("yjyoon", "###### 2");
|
|
|
if (ConfigValues.DEVICE_BOARDTYPE == BOARD_TYPE.V40 || ConfigValues.DEVICE_BOARDTYPE == BOARD_TYPE.V40_NOUGAT) {
|
|
|
if (mCallController.mCallInfo.getIDLECnt() == mCallController.mCallInfo.IDLECNT_MAX) {
|
|
|
sendHandlerMsg(HANDLERMSG.SET_DINGDONG_VOLUME, 0, 0); // 현관띵똥 볼륨 고정(시스템 볼륨 따라가지 않도록)
|