|
|
@@ -765,6 +765,7 @@ public class HomeAutomation_New_Controller extends DeviceManager {
|
|
|
filter.addAction(define.NOTIFY_ACNAME);
|
|
|
filter.addAction(HomeAutomation_Call_Status.BR_ACK_WALLPADCALL_LIVE);
|
|
|
filter.addAction(BR_MAIN_NOTI.ACNAME_MAIN_NOTI);
|
|
|
+ filter.addAction(HomeAutomation_Call.BR_NOTIFY_FRONTCALL_EVENT);
|
|
|
|
|
|
//엘리베이터 버튼 눌릴 시 BR수신 필요
|
|
|
ServiceMain.svcContext.registerReceiver(mWallPadNotifyBR, filter);
|
|
|
@@ -805,7 +806,13 @@ public class HomeAutomation_New_Controller extends DeviceManager {
|
|
|
|
|
|
if (mDriver.Polling.Status != Driver.PollingList.STATUS.Normal) return;
|
|
|
|
|
|
- if (strAction.equals(define.NOTIFY_ACNAME)) {
|
|
|
+ if (strAction.equals(HomeAutomation_Call.BR_NOTIFY_FRONTCALL_EVENT)) {
|
|
|
+ // 현관통화 수신시
|
|
|
+ setBlockNewCall(true);
|
|
|
+ HomeAutoCallHandler.removeMessages(HANDLERMSG.RELEASE_BLOCK_NEWCALL);
|
|
|
+ sendHandlerMsgDelayed(HANDLERMSG.RELEASE_BLOCK_NEWCALL, 0, 0, 3000);
|
|
|
+ }
|
|
|
+ else if (strAction.equals(define.NOTIFY_ACNAME)) {
|
|
|
//방범 관련 사항
|
|
|
int nKind = intent.getIntExtra(BR_MAIN_NOTI.KIND, 0);
|
|
|
DeviceLog("[mWallPadNotifyBR] strAction [" + strAction + "], nKind [" + nKind + "]");
|
|
|
@@ -906,6 +913,7 @@ public class HomeAutomation_New_Controller extends DeviceManager {
|
|
|
}
|
|
|
Log.i(TAG, "[mWallPadNotifyBR] Call Status is changed!! Type_Device [" + mDriver.CallStatus.Type_Device + "], Type_Call [" + mDriver.CallStatus.Type_Call + "]" );
|
|
|
} else if (strAction.equals(HomeAutomation_Call_Status.BR_ACK_WALLPADCALL_LIVE)) {
|
|
|
+ if (!bWallPadCallLive) setCallStaus(true);
|
|
|
bWallPadCallLive = true;
|
|
|
nWallPadCallACKCnt = MAX_WALLPADCALL_LIVE_CNT;
|
|
|
}
|
|
|
@@ -3741,6 +3749,7 @@ public class HomeAutomation_New_Controller extends DeviceManager {
|
|
|
}
|
|
|
}
|
|
|
else if (nCallType == HomeAutomation_Call.CALLTYPE_RECEIVE_CALL_REQUEST) {
|
|
|
+ sendHomeAutoCallRevEvent();
|
|
|
if (mPreviousCallInfo.checkCallBRDelay()) {
|
|
|
// 일정시간 이전에 호출을 수신한 이력이 있는 경우
|
|
|
// return mHomeAutomation_Call.sendHomeAutoCallBR(nDeviceType, HomeAutomation_Call.CALLTYPE_SEND_CALL_END, nID_Dong, nID_Ho); // 해당 메시지에 대해 통화 종료를 전송한다.
|
|
|
@@ -4997,4 +5006,16 @@ public class HomeAutomation_New_Controller extends DeviceManager {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private void sendHomeAutoCallRevEvent() {
|
|
|
+ try {
|
|
|
+// Log.i(TAG, "[sendHomeAutoCallRevEvent] ===== START =====");
|
|
|
+ Intent mIntent = new Intent();
|
|
|
+ mIntent.setAction(HomeAutomation_Call.BR_NOTIFY_HOMEAUTOCALL_EVENT);
|
|
|
+ ServiceMain.svcContext.sendBroadcast(mIntent);
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] sendWallPadCallLiveBR_ACK()");
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|