|
@@ -332,6 +332,9 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
if (MainActivity.mCallController.mCallInfo.getLOBBY() != CALLSTATUS.TALKING) MainActivity.mSound.Play(SND.effect.TOUCH_LATCHED);
|
|
if (MainActivity.mCallController.mCallInfo.getLOBBY() != CALLSTATUS.TALKING) MainActivity.mSound.Play(SND.effect.TOUCH_LATCHED);
|
|
|
|
|
|
|
|
if (nID == ID.SCREEN.TALKLOBBY.ELEMENT.BUTTON.TALK) {
|
|
if (nID == ID.SCREEN.TALKLOBBY.ELEMENT.BUTTON.TALK) {
|
|
|
|
|
+ enableEndBTN(false);
|
|
|
|
|
+ setBlockTalkKey();
|
|
|
|
|
+ sendHandlerMsgDelayed(HANDLERMSG.ENABLE_END_BTN, 0, 0, null, 2000);
|
|
|
doTalk(CALLOWNER.WALLPAD);
|
|
doTalk(CALLOWNER.WALLPAD);
|
|
|
} else if (nID == ID.SCREEN.TALKLOBBY.ELEMENT.BUTTON.END) {
|
|
} else if (nID == ID.SCREEN.TALKLOBBY.ELEMENT.BUTTON.END) {
|
|
|
bEnableVisitorPic = false;
|
|
bEnableVisitorPic = false;
|
|
@@ -389,7 +392,10 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
LOG_INFO("[onKeyDown] keyCode [" + keyCode + "], event.getAction() [" + event.getAction() + "]");
|
|
LOG_INFO("[onKeyDown] keyCode [" + keyCode + "], event.getAction() [" + event.getAction() + "]");
|
|
|
if (keyCode == Declare.BTN.TALK || keyCode == Declare.BTN.TALK_V40) {
|
|
if (keyCode == Declare.BTN.TALK || keyCode == Declare.BTN.TALK_V40) {
|
|
|
//doTalk(CALLOWNER.WALLPAD);
|
|
//doTalk(CALLOWNER.WALLPAD);
|
|
|
- doTalkByBTN(CALLOWNER.WALLPAD);
|
|
|
|
|
|
|
+ if (!bTalkKeyBlock) {
|
|
|
|
|
+ setBlockTalkKey();
|
|
|
|
|
+ doTalkByBTN(CALLOWNER.WALLPAD);
|
|
|
|
|
+ }
|
|
|
} else if (keyCode == Declare.BTN.DOOR_OPEN || keyCode == Declare.BTN.DOOR_OPEN_V40) {
|
|
} else if (keyCode == Declare.BTN.DOOR_OPEN || keyCode == Declare.BTN.DOOR_OPEN_V40) {
|
|
|
if (!bSentiMAP) doDoorOpen();
|
|
if (!bSentiMAP) doDoorOpen();
|
|
|
} else if (keyCode == Declare.BTN.PLAY_DECODED_VIDEO || keyCode == Declare.BTN.PLAY_DECODED_VIDEO_V40) {
|
|
} else if (keyCode == Declare.BTN.PLAY_DECODED_VIDEO || keyCode == Declare.BTN.PLAY_DECODED_VIDEO_V40) {
|
|
@@ -991,6 +997,7 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
Global.stopMelodyRepeat();
|
|
Global.stopMelodyRepeat();
|
|
|
MainActivity.mCallController.sendCallEnd(CALLTYPE.LOBBY, Integer.parseInt(ConfigValues.strDong), RemoteIDInfo.nHo);
|
|
MainActivity.mCallController.sendCallEnd(CALLTYPE.LOBBY, Integer.parseInt(ConfigValues.strDong), RemoteIDInfo.nHo);
|
|
|
MainActivity.mCallController.onLobbyEvent(CALLEVENTTYPE.TERMINATE_CALL, CALLTYPE.LOBBY);
|
|
MainActivity.mCallController.onLobbyEvent(CALLEVENTTYPE.TERMINATE_CALL, CALLTYPE.LOBBY);
|
|
|
|
|
+ Global.change1stCallLogAction(CALLACTION.REJECT);
|
|
|
// MainActivity.mCallController.sendCallEnd(CALLTYPE.LOBBY, Integer.parseInt(RemoteIDInfo.strDong), Integer.parseInt(RemoteIDInfo.strHo));
|
|
// MainActivity.mCallController.sendCallEnd(CALLTYPE.LOBBY, Integer.parseInt(RemoteIDInfo.strDong), Integer.parseInt(RemoteIDInfo.strHo));
|
|
|
}
|
|
}
|
|
|
else if (MainActivity.mCallController.mCallInfo.getLOBBY() == CALLSTATUS.TALKING) {
|
|
else if (MainActivity.mCallController.mCallInfo.getLOBBY() == CALLSTATUS.TALKING) {
|
|
@@ -1044,8 +1051,6 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
try {
|
|
try {
|
|
|
LOG_INFO("[doTalkByBTN] CALLSTATUS [" + MainActivity.mCallController.mCallInfo.getLOBBY() + "]");
|
|
LOG_INFO("[doTalkByBTN] CALLSTATUS [" + MainActivity.mCallController.mCallInfo.getLOBBY() + "]");
|
|
|
if (MainActivity.mCallController.mCallInfo.getLOBBY() == CALLSTATUS.CALLED) {
|
|
if (MainActivity.mCallController.mCallInfo.getLOBBY() == CALLSTATUS.CALLED) {
|
|
|
- // MainActivity.mCallController.acceptMoIPCall(false);
|
|
|
|
|
- //MainActivity.mCallController.mCallInfo.setCallOwner(eCallOwner);
|
|
|
|
|
doTalk(CALLOWNER.WALLPAD);
|
|
doTalk(CALLOWNER.WALLPAD);
|
|
|
} else if (MainActivity.mCallController.mCallInfo.getLOBBY() == CALLSTATUS.TALKING) {
|
|
} else if (MainActivity.mCallController.mCallInfo.getLOBBY() == CALLSTATUS.TALKING) {
|
|
|
doEnd();
|
|
doEnd();
|
|
@@ -1369,14 +1374,12 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
LOG("[enableTalkBTN] bEnable [" + bEnable + "]");
|
|
LOG("[enableTalkBTN] bEnable [" + bEnable + "]");
|
|
|
if (bEnable) {
|
|
if (bEnable) {
|
|
|
// 이벤트 on
|
|
// 이벤트 on
|
|
|
- if (ConfigValues.bReliefCall)
|
|
|
|
|
- BTN_TALK.setImageResource(R.drawable.btn_call_normal);
|
|
|
|
|
|
|
+ if (ConfigValues.bReliefCall) BTN_TALK.setImageResource(R.drawable.btn_call_normal);
|
|
|
else BTN_TALK.setImageResource(R.drawable.btn_lobby_call_normal);
|
|
else BTN_TALK.setImageResource(R.drawable.btn_lobby_call_normal);
|
|
|
BTN_TALK.setButtonEventOffDisable();
|
|
BTN_TALK.setButtonEventOffDisable();
|
|
|
} else {
|
|
} else {
|
|
|
// 이벤트 off
|
|
// 이벤트 off
|
|
|
- if (ConfigValues.bReliefCall)
|
|
|
|
|
- BTN_TALK.setButtonEventOffEnable(R.drawable.btn_call_disabled);
|
|
|
|
|
|
|
+ if (ConfigValues.bReliefCall) BTN_TALK.setButtonEventOffEnable(R.drawable.btn_call_disabled);
|
|
|
else BTN_TALK.setButtonEventOffEnable(R.drawable.btn_lobby_call_disabled);
|
|
else BTN_TALK.setButtonEventOffEnable(R.drawable.btn_lobby_call_disabled);
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
@@ -1385,21 +1388,23 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ boolean bTalkKeyBlock = false;
|
|
|
private void enableEndBTN(boolean bEnable) {
|
|
private void enableEndBTN(boolean bEnable) {
|
|
|
try {
|
|
try {
|
|
|
LOG("[enableEndBTN] bEnable [" + bEnable + "]");
|
|
LOG("[enableEndBTN] bEnable [" + bEnable + "]");
|
|
|
if (bEnable) {
|
|
if (bEnable) {
|
|
|
// 이벤트 on
|
|
// 이벤트 on
|
|
|
- if (ConfigValues.bReliefCall)
|
|
|
|
|
- BTN_END.setImageResource(R.drawable.btn_endl_normal);
|
|
|
|
|
|
|
+ if (ConfigValues.bReliefCall) BTN_END.setImageResource(R.drawable.btn_endl_normal);
|
|
|
else BTN_END.setImageResource(R.drawable.btn_lobby_end_normal);
|
|
else BTN_END.setImageResource(R.drawable.btn_lobby_end_normal);
|
|
|
|
|
+
|
|
|
BTN_END.setButtonEventOffDisable();
|
|
BTN_END.setButtonEventOffDisable();
|
|
|
((MainActivity) mContext).TopHomeBtn.setButtonEventOffDisable();
|
|
((MainActivity) mContext).TopHomeBtn.setButtonEventOffDisable();
|
|
|
- } else {
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+ else {
|
|
|
// 이벤트 off
|
|
// 이벤트 off
|
|
|
- if (ConfigValues.bReliefCall)
|
|
|
|
|
- BTN_END.setButtonEventOffEnable(R.drawable.btn_endl_disabled);
|
|
|
|
|
|
|
+ if (ConfigValues.bReliefCall) BTN_END.setButtonEventOffEnable(R.drawable.btn_endl_disabled);
|
|
|
else BTN_END.setButtonEventOffEnable(R.drawable.btn_lobby_end_disabled);
|
|
else BTN_END.setButtonEventOffEnable(R.drawable.btn_lobby_end_disabled);
|
|
|
|
|
+
|
|
|
((MainActivity) mContext).TopHomeBtn.setButtonEventOffEnable();
|
|
((MainActivity) mContext).TopHomeBtn.setButtonEventOffEnable();
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
@@ -1887,6 +1892,7 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
public final static int CHECK_DOOROPEN_REPLY = 600;
|
|
public final static int CHECK_DOOROPEN_REPLY = 600;
|
|
|
public final static int CALL_END = 610;
|
|
public final static int CALL_END = 610;
|
|
|
public final static int SEND_TALK_START = 620;
|
|
public final static int SEND_TALK_START = 620;
|
|
|
|
|
+ public final static int RELEASE_TALK_KEY = 630;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public Handler TalkLobbyHandler = new Handler(Looper.getMainLooper()) {
|
|
public Handler TalkLobbyHandler = new Handler(Looper.getMainLooper()) {
|
|
@@ -1991,6 +1997,11 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
MainActivity.mCallController.sendCallStart(CALLTYPE.LOBBY, RemoteIDInfo.nDong, RemoteIDInfo.nHo);
|
|
MainActivity.mCallController.sendCallStart(CALLTYPE.LOBBY, RemoteIDInfo.nDong, RemoteIDInfo.nHo);
|
|
|
break;
|
|
break;
|
|
|
|
|
|
|
|
|
|
+ case HANDLERMSG.RELEASE_TALK_KEY:
|
|
|
|
|
+ // 통화 터치버튼을 일시적으로 막는다. (통화시작후, 바로 종료하지 않도록)
|
|
|
|
|
+ bTalkKeyBlock = false;
|
|
|
|
|
+ break;
|
|
|
|
|
+
|
|
|
default:
|
|
default:
|
|
|
break;
|
|
break;
|
|
|
|
|
|
|
@@ -1998,6 +2009,11 @@ public class TalkLobby extends WpadScreen implements CallEventListener, MainEven
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+ private void setBlockTalkKey() {
|
|
|
|
|
+ bTalkKeyBlock = true;
|
|
|
|
|
+ sendHandlerMsgDelayed(HANDLERMSG.RELEASE_TALK_KEY, 0, 0, null, 2000);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
private void checkDoorCtrlACK() {
|
|
private void checkDoorCtrlACK() {
|
|
|
try {
|
|
try {
|
|
|
if (bSentiMAP) {
|
|
if (bSentiMAP) {
|