12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217 |
- package kr.co.icontrols.callengine.engine;
- import android.content.Context;
- import android.util.Log;
- import com.util.LogUtil;
- import java.util.Timer;
- import kr.co.icontrols.wallpadcall.declare.DataClasses.MultiCallInfo;
- import kr.co.icontrols.wallpadcall.declare.Declare;
- import kr.co.icontrols.wallpadcall.declare.Declare.DEVICENAME;
- import kr.co.icontrols.wallpadcall.declare.Global;
- import kr.co.icontrols.wallpadcall.declare.Global.ConfigValues;
- public class CallManager {
- static String TAG = "CallManager";
- boolean bLOG = true;
- private void LOG(String log) {
- if (bLOG) Log.v(TAG, log);
- }
- boolean bLOG_DEBUG = false;
- private void LOG_DEBUG(String log) {
- if (bLOG_DEBUG) Log.d(TAG, log);
- }
- boolean bLOG_INFO = true;
- private void LOG_INFO(String log) {
- if (bLOG_INFO) Log.i(TAG, log);
- }
- Context mContext;
- // 통화주체를 다루는 enum
- public enum CALLOWNER {
- NONE,
- WALLPAD,
- SUB_WALLPAD,
- KITCHEN_TV_01,
- KITCHEN_TV_02,
- KITCHEN_TV_03,
- KITCHEN_TV_04,
- KITCHEN_TV_05,
- KITCHEN_TV_06,
- KITCHEN_TV_07,
- KITCHEN_TV_08,
- KITCHEN_TV_09,
- KITCHEN_TV_10,
- BATH_PHONE_01,
- BATH_PHONE_02,
- BATH_PHONE_03,
- BATH_PHONE_04,
- BATH_PHONE_05,
- BATH_PHONE_06,
- BATH_PHONE_07,
- BATH_PHONE_08,
- BATH_PHONE_09,
- BATH_PHONE_10,
- BATH_TV_01,
- BATH_TV_02,
- BATH_TV_03,
- BATH_TV_04,
- BATH_TV_05,
- BATH_TV_06,
- BATH_TV_07,
- BATH_TV_08,
- BATH_TV_09,
- BATH_TV_10,
- UNIVERSAL_DEVICE,
- MOBILE,
- ERROR;
- public static CALLOWNER getCALLOWNER(String value) {
- try {
- if (value.equals(NONE.toString())) {
- return NONE;
- } else if (value.equals(WALLPAD.toString())) {
- return WALLPAD;
- } else if (value.equals(SUB_WALLPAD.toString())) {
- return SUB_WALLPAD;
- } else if (value.equals(KITCHEN_TV_01.toString())) {
- return KITCHEN_TV_01;
- } else if (value.equals(KITCHEN_TV_02.toString())) {
- return KITCHEN_TV_02;
- } else if (value.equals(KITCHEN_TV_03.toString())) {
- return KITCHEN_TV_03;
- } else if (value.equals(KITCHEN_TV_04.toString())) {
- return KITCHEN_TV_04;
- } else if (value.equals(KITCHEN_TV_05.toString())) {
- return KITCHEN_TV_05;
- } else if (value.equals(KITCHEN_TV_06.toString())) {
- return KITCHEN_TV_06;
- } else if (value.equals(KITCHEN_TV_07.toString())) {
- return KITCHEN_TV_07;
- } else if (value.equals(KITCHEN_TV_08.toString())) {
- return KITCHEN_TV_08;
- } else if (value.equals(KITCHEN_TV_09.toString())) {
- return KITCHEN_TV_09;
- } else if (value.equals(KITCHEN_TV_10.toString())) {
- return KITCHEN_TV_10;
- } else if (value.equals(BATH_PHONE_01.toString())) {
- return BATH_PHONE_01;
- } else if (value.equals(BATH_PHONE_02.toString())) {
- return BATH_PHONE_02;
- } else if (value.equals(BATH_PHONE_03.toString())) {
- return BATH_PHONE_03;
- } else if (value.equals(BATH_PHONE_04.toString())) {
- return BATH_PHONE_04;
- } else if (value.equals(BATH_PHONE_05.toString())) {
- return BATH_PHONE_05;
- } else if (value.equals(BATH_PHONE_06.toString())) {
- return BATH_PHONE_06;
- } else if (value.equals(BATH_PHONE_07.toString())) {
- return BATH_PHONE_07;
- } else if (value.equals(BATH_PHONE_08.toString())) {
- return BATH_PHONE_08;
- } else if (value.equals(BATH_PHONE_09.toString())) {
- return BATH_PHONE_09;
- } else if (value.equals(BATH_PHONE_10.toString())) {
- return BATH_PHONE_10;
- } else if (value.equals(BATH_TV_01.toString())) {
- return BATH_TV_01;
- } else if (value.equals(BATH_TV_02.toString())) {
- return BATH_TV_02;
- } else if (value.equals(BATH_TV_03.toString())) {
- return BATH_TV_03;
- } else if (value.equals(BATH_TV_04.toString())) {
- return BATH_TV_04;
- } else if (value.equals(BATH_TV_05.toString())) {
- return BATH_TV_05;
- } else if (value.equals(BATH_TV_06.toString())) {
- return BATH_TV_06;
- } else if (value.equals(BATH_TV_07.toString())) {
- return BATH_TV_07;
- } else if (value.equals(BATH_TV_08.toString())) {
- return BATH_TV_08;
- } else if (value.equals(BATH_TV_09.toString())) {
- return BATH_TV_09;
- } else if (value.equals(BATH_TV_10.toString())) {
- return BATH_TV_10;
- } else if (value.equals(UNIVERSAL_DEVICE.toString())) {
- return UNIVERSAL_DEVICE;
- } else if (value.equals(MOBILE.toString())) {
- return MOBILE;
- } else if (value.equals(ERROR.toString())) {
- return ERROR;
- } else {
- return null;
- }
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return null;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getCALLOWNER()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return null;
- }
- }
- }
- // 통화패스를 다루는 enum
- public enum CALLPATH {
- NORMAL,
- FRONT,
- FRONT_VOICE,
- MOIP,
- MOIP_IHN750_RESIDENCE,
- MOIP_V40_RESIDENCE,
- MOIP_IHND101_LOBBY,
- MOIP_IHND101_GUARD,
- MOIP_IHN1010_LOBBY,
- MOIP_IHN1010_GUARD,
- PSTN,
- PSTN_MIC,
- PSTN_SPEAKER,
- PSTN_ARS,
- ANALOG,
- SUBPHONE_FRONT,
- SUBPHONE_MOIP,
- SUBPHONE_PSTN,
- SUBPHONE_ANALOG,
- DOORMUSIC, // 현관초인종
- DTMF, // DTMF 톤 PhoneOut
- SUBWALLPAD, // 서브월패드와 통화할 경우 메인월패드 통화패스
- SUB_FRONT_SUBWALLPAD, // 서브월패드일때 현관 통화패스
- SUB_MOIP_SUBWALLPAD, // 서브월패드일때 MoIP 통화패스
- DOOR_RELIEFCALL, // 현관통화 안심통화
- DOOR_REMOTECALL, // 현관통화 방문객원격통화
- NONE,
- ERROR
- }
- // 통화상태정보를 다루는 enum
- public enum CALLTYPE {
- NONE,
- FRONT,
- // FRONT_RECORD, // 현관 거동수상자 영상 녹화
- // FRONT_TAKEPIC, // 현관 거동수상자 사진 촬영
- RESIDENCE,
- RENTRESIDENCE,
- LOBBY,
- GUARD,
- PSTN,
- IHUB,
- HISTORY_CALL,
- HISTORY_VISITORPIC,
- ERROR;
- public static CALLTYPE getCALLTYPE(String value) {
- try {
- if (value.equals(NONE.toString())) {
- return NONE;
- }
- else if (value.equals(FRONT.toString())) {
- return FRONT;
- }
- // else if (value.equals(FRONT_RECORD.toString())) {
- // return FRONT_RECORD;
- // }
- // else if (value.equals(FRONT_TAKEPIC.toString())) {
- // return FRONT_TAKEPIC;
- // }
- else if (value.equals(RESIDENCE.toString())) {
- return RESIDENCE;
- }
- else if (value.equals(LOBBY.toString())) {
- return LOBBY;
- }
- else if (value.equals(GUARD.toString())) {
- return GUARD;
- }
- else if (value.equals(PSTN.toString())) {
- return PSTN;
- }
- else if (value.equals(IHUB.toString())) {
- return IHUB;
- }
- else if (value.equals(HISTORY_CALL.toString())) {
- return HISTORY_CALL;
- }
- else if (value.equals(HISTORY_VISITORPIC.toString())) {
- return HISTORY_VISITORPIC;
- }
- else if (value.equals(ERROR.toString())) {
- return ERROR;
- }
- else {
- return null;
- }
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return null;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getCALLTYPE()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return null;
- }
- }
- }
- public enum CALLSTATUS {
- IDLE, // 대기중
- TRYING_CALL, // 통화가능여부 확인중
- WAITNG_INVITE_ACK, // 호출에 대한 응답 대기중
- CALLING, // 호출중
- CALLED, // 호출수신중
- TALKING, // 통화중
- REJECT, // 거절
- BUSY, // 통화중 거절
- FORWARD, // 착신전환
- CANCEL, // 호출 취소
- END, // 종료
- TIMEOUT_1STCALL, // 1st Call Timeout
- TIMEOUT_2NDCALL, // 2nd Call Timeout
- TIMEOUT_3RDCALL, // 3rd Call Timeout
- CALLERID, // CALLERID
- DOOR_OPEN, // 문열림 요청
- PSTN_RING, // ARS 동작을 위해, Ring 카운트를 한다.
- RECORDING, // 거동수상자 영상 녹화중
- TAKINGPIC, // 거동수상자 사진 촬영중
- HOMEVIEW; // 방문객원격통화 홈뷰어
- public static CALLSTATUS getCALLSTATUS(String value) {
- try {
- if (value.equals(IDLE.toString())) {
- return IDLE;
- } else if (value.equals(TRYING_CALL.toString())) {
- return TRYING_CALL;
- } else if (value.equals(WAITNG_INVITE_ACK.toString())) {
- return WAITNG_INVITE_ACK;
- } else if (value.equals(CALLING.toString())) {
- return CALLING;
- } else if (value.equals(CALLED.toString())) {
- return CALLED;
- } else if (value.equals(TALKING.toString())) {
- return TALKING;
- } else if (value.equals(REJECT.toString())) {
- return REJECT;
- } else if (value.equals(BUSY.toString())) {
- return BUSY;
- } else if (value.equals(FORWARD.toString())) {
- return FORWARD;
- } else if (value.equals(CANCEL.toString())) {
- return CANCEL;
- } else if (value.equals(END.toString())) {
- return END;
- } else if (value.equals(TIMEOUT_1STCALL.toString())) {
- return TIMEOUT_1STCALL;
- } else if (value.equals(TIMEOUT_2NDCALL.toString())) {
- return TIMEOUT_2NDCALL;
- } else if (value.equals(TIMEOUT_3RDCALL.toString())) {
- return TIMEOUT_3RDCALL;
- } else if (value.equals(CALLERID.toString())) {
- return CALLERID;
- } else if (value.equals(DOOR_OPEN.toString())) {
- return DOOR_OPEN;
- } else if (value.equals(PSTN_RING.toString())) {
- return PSTN_RING;
- } else if (value.equals(RECORDING.toString())) {
- return RECORDING;
- } else if (value.equals(TAKINGPIC.toString())) {
- return TAKINGPIC;
- } else if (value.equals(HOMEVIEW.toString())) {
- return HOMEVIEW;
- } else {
- return null;
- }
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return null;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getCALLSTATUS()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return null;
- }
- }
- }
- public void setCallManagerContext(Context context) {
- mContext = context;
- }
- public class CallInfo {
- private CALLOWNER eCallOwner = CALLOWNER.NONE;
- public void setCallOwner(CALLOWNER eCallowner) {
- LOG_INFO("[setCallOwner] eCallOwner [" + eCallowner + "]");
- eCallOwner = eCallowner;
- }
- public CALLOWNER getCallOwner() {
- return eCallOwner;
- }
- protected Status mStatus = new Status();
- protected class Status {
- CALLSTATUS FRONT = CALLSTATUS.IDLE;
- CALLSTATUS LOBBY = CALLSTATUS.IDLE;
- CALLSTATUS GUARD = CALLSTATUS.IDLE;
- CALLSTATUS RESI = CALLSTATUS.IDLE;
- CALLSTATUS IHUB = CALLSTATUS.IDLE;
- CALLSTATUS PSTN = CALLSTATUS.IDLE;
- }
- public void setCallStatus(CALLTYPE eType, CALLSTATUS eStatus) {
- LOG_INFO("[setCallStatus] eType [" + eType + "], eStatus [" + eStatus + "]");
- if (eType == CALLTYPE.FRONT) mStatus.FRONT = eStatus;
- else if (eType == CALLTYPE.LOBBY) mStatus.LOBBY = eStatus;
- else if (eType == CALLTYPE.GUARD) mStatus.GUARD = eStatus;
- else if (eType == CALLTYPE.RESIDENCE) mStatus.RESI = eStatus;
- else if (eType == CALLTYPE.IHUB) mStatus.IHUB = eStatus;
- else if (eType == CALLTYPE.PSTN) mStatus.PSTN = eStatus;
- }
- public CALLSTATUS getFRONT() {
- return mStatus.FRONT;
- }
- public CALLSTATUS getLOBBY() {
- return mStatus.LOBBY;
- }
- public CALLSTATUS getGUARD() {
- return mStatus.GUARD;
- }
- public CALLSTATUS getRESI() {
- return mStatus.RESI;
- }
- public CALLSTATUS getIHUB() {
- return mStatus.IHUB;
- }
- public CALLSTATUS getPSTN() {
- return mStatus.PSTN;
- }
- public int IDLECNT_MAX = 6;
- public int getIDLECnt() {
- int nIdleCnt = 0;
- if (mStatus.FRONT == CALLSTATUS.IDLE) nIdleCnt++;
- if (mStatus.LOBBY == CALLSTATUS.IDLE) nIdleCnt++;
- if (mStatus.RESI == CALLSTATUS.IDLE) nIdleCnt++;
- if (mStatus.GUARD == CALLSTATUS.IDLE) nIdleCnt++;
- if (mStatus.IHUB == CALLSTATUS.IDLE) nIdleCnt++;
- if (mStatus.PSTN == CALLSTATUS.IDLE) nIdleCnt++;
- LOG_INFO("[getIDLECnt] nIdleCnt = " + nIdleCnt);
- return nIdleCnt;
- }
- public int getCallingCnt() {
- int nCallingCnt = 0;
- if (mStatus.FRONT == CALLSTATUS.CALLING) nCallingCnt++;
- if (mStatus.LOBBY == CALLSTATUS.CALLING) nCallingCnt++;
- if (mStatus.GUARD == CALLSTATUS.CALLING) nCallingCnt++;
- if (mStatus.RESI == CALLSTATUS.CALLING || mStatus.RESI == CALLSTATUS.HOMEVIEW) nCallingCnt++;
- if (mStatus.IHUB == CALLSTATUS.CALLING) nCallingCnt++;
- if (mStatus.PSTN == CALLSTATUS.CALLING) nCallingCnt++;
- LOG_INFO("[getCallingCnt] nCallingCnt = " + nCallingCnt);
- return nCallingCnt;
- }
- public int getCalledCnt() {
- int nCalledCnt = 0;
- if (mStatus.FRONT == CALLSTATUS.CALLED) nCalledCnt++;
- if (mStatus.LOBBY == CALLSTATUS.CALLED) nCalledCnt++;
- if (mStatus.GUARD == CALLSTATUS.CALLED) nCalledCnt++;
- if (mStatus.RESI == CALLSTATUS.CALLED) nCalledCnt++;
- if (mStatus.IHUB == CALLSTATUS.CALLED) nCalledCnt++;
- if (mStatus.PSTN == CALLSTATUS.CALLED) nCalledCnt++;
- LOG_INFO("[getCalledCnt] nCalledCnt = " + nCalledCnt);
- return nCalledCnt;
- }
- public int getTalkingCnt() {
- int nTalkingCnt = 0;
- if (mStatus.FRONT == CALLSTATUS.TALKING) nTalkingCnt++;
- if (mStatus.LOBBY == CALLSTATUS.TALKING) nTalkingCnt++;
- if (mStatus.GUARD == CALLSTATUS.TALKING) nTalkingCnt++;
- if (mStatus.RESI == CALLSTATUS.TALKING) nTalkingCnt++;
- if (mStatus.IHUB == CALLSTATUS.TALKING) nTalkingCnt++;
- if (mStatus.PSTN == CALLSTATUS.TALKING) nTalkingCnt++;
- LOG_INFO("[getTalkingCnt] nTalkingCnt = " + nTalkingCnt);
- return nTalkingCnt;
- }
- public CALLTYPE getCallingType() {
- CALLTYPE eRemoteType = CALLTYPE.NONE;
- if (getCallingCnt() > 1) {
- eRemoteType = CALLTYPE.ERROR;
- } else {
- if (mStatus.FRONT == CALLSTATUS.CALLING) eRemoteType = CALLTYPE.FRONT;
- else if (mStatus.LOBBY == CALLSTATUS.CALLING) eRemoteType = CALLTYPE.LOBBY;
- else if (mStatus.GUARD == CALLSTATUS.CALLING) eRemoteType = CALLTYPE.GUARD;
- else if (mStatus.RESI == CALLSTATUS.CALLING) eRemoteType = CALLTYPE.RESIDENCE;
- else if (mStatus.IHUB == CALLSTATUS.CALLING) eRemoteType = CALLTYPE.IHUB;
- else if (mStatus.PSTN == CALLSTATUS.CALLING) eRemoteType = CALLTYPE.PSTN;
- else eRemoteType = CALLTYPE.NONE;
- }
- LOG_INFO("[getCallingType] eRemoteType = " + eRemoteType);
- return eRemoteType;
- }
- public CALLTYPE getCalledType() {
- CALLTYPE eRemoteType = CALLTYPE.NONE;
- if (getCalledCnt() > 1) {
- eRemoteType = CALLTYPE.ERROR;
- } else {
- if (mStatus.FRONT == CALLSTATUS.CALLED) eRemoteType = CALLTYPE.FRONT;
- else if (mStatus.LOBBY == CALLSTATUS.CALLED) eRemoteType = CALLTYPE.LOBBY;
- else if (mStatus.GUARD == CALLSTATUS.CALLED) eRemoteType = CALLTYPE.GUARD;
- else if (mStatus.RESI == CALLSTATUS.CALLED) eRemoteType = CALLTYPE.RESIDENCE;
- else if (mStatus.IHUB == CALLSTATUS.CALLED) eRemoteType = CALLTYPE.IHUB;
- else if (mStatus.PSTN == CALLSTATUS.CALLED) eRemoteType = CALLTYPE.PSTN;
- else eRemoteType = CALLTYPE.NONE;
- }
- LOG_INFO("[getCalledType] eRemoteType = " + eRemoteType);
- return eRemoteType;
- }
- public CALLTYPE getTalkingType() {
- CALLTYPE eRemoteType = CALLTYPE.NONE;
- if (getTalkingCnt() > 1) {
- eRemoteType = CALLTYPE.ERROR;
- } else {
- if (mStatus.FRONT == CALLSTATUS.TALKING) eRemoteType = CALLTYPE.FRONT;
- else if (mStatus.LOBBY == CALLSTATUS.TALKING) eRemoteType = CALLTYPE.LOBBY;
- else if (mStatus.GUARD == CALLSTATUS.TALKING) eRemoteType = CALLTYPE.GUARD;
- else if (mStatus.RESI == CALLSTATUS.TALKING) eRemoteType = CALLTYPE.RESIDENCE;
- else if (mStatus.IHUB == CALLSTATUS.TALKING) eRemoteType = CALLTYPE.IHUB;
- else if (mStatus.PSTN == CALLSTATUS.TALKING) eRemoteType = CALLTYPE.PSTN;
- else eRemoteType = CALLTYPE.NONE;
- }
- LOG_INFO("[getTalkingType] eRemoteType = " + eRemoteType);
- return eRemoteType;
- }
- public void printCallStatus() {
- try {
- LOG_INFO("[printCallStatus] RESI [" + getRESI() + "]");
- LOG_INFO("[printCallStatus] LOBBY [" + getLOBBY() + "]");
- LOG_INFO("[printCallStatus] GUARD [" + getGUARD() + "]");
- LOG_INFO("[printCallStatus] FRONT [" + getFRONT() + "]");
- LOG_INFO("[printCallStatus] PSTN [" + getPSTN() + "]");
- LOG_INFO("[printCallStatus] IHUB [" + getIHUB() + "]");
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] printCallStatus() : " + e);
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void resetCallStatus() {
- mStatus.RESI = CALLSTATUS.IDLE;
- mStatus.LOBBY = CALLSTATUS.IDLE;
- mStatus.GUARD = CALLSTATUS.IDLE;
- mStatus.FRONT = CALLSTATUS.IDLE;
- mStatus.PSTN = CALLSTATUS.IDLE;
- mStatus.IHUB = CALLSTATUS.IDLE;
- }
- public void resetAllCallInfo() {
- resetCallStatus();
- resetMultiCallInfo();
- }
- // MultiCall 관련
- private CALLTYPE eBaseMultiCallType = CALLTYPE.NONE; // 멀티콜이 수신될때의 통화중인 기기정보
- private CALLTYPE eMultiCallType = CALLTYPE.NONE;
- private CALLSTATUS eMultiCallStatus = CALLSTATUS.IDLE;
- private CALLOWNER eMultiCallOwner = CALLOWNER.NONE;
- private boolean bMultiCallAccept = false;
- private boolean bMultiCallPSTNReject = false;
- private String strMultiCall_ID = ""; // SIPID/CID
- private String strMultiCall_ID_H = ""; // 동정보
- private String strMultiCall_ID_L = ""; // 호/ID 정보
- private String strMultiCall_Name = ""; // 기기이름/CID
- private String strMultiCall_IP = ""; // IP
- // 국선홀드 관련
- private boolean bPSTNCallHold = false;
- private String strPSTNHoldInfo = "";
- public void setPSTNCallHold(boolean bHold, String strHoldInfo) {
- try {
- LOG_INFO("[setPSTNCallHold] bHold [" + bHold + "], strHoldInfo [" + strHoldInfo + "]");
- bPSTNCallHold = bHold;
- strPSTNHoldInfo = strHoldInfo;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] setPSTNCallHold(boolean bHold, String strHoldInfo)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public boolean getPSTNCallHold() {
- try {
- return bPSTNCallHold;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return false;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getPSTNCallHold()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return false;
- }
- }
- public String getPSTNCallInfo() {
- try {
- return strPSTNHoldInfo;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return null;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getPSTNCallInfo()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return null;
- }
- }
- public void resetPSTNCallHold() {
- try {
- bPSTNCallHold = false;
- strPSTNHoldInfo = null;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] resetPSTNCallHold()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void printMultiCallStatus() {
- try {
- LOG_INFO("[printMultiCallStatus] eBaseMultiCallType [" + eBaseMultiCallType + "]");
- LOG_INFO("[printMultiCallStatus] eMultiCallType [" + eMultiCallType + "]");
- LOG_INFO("[printMultiCallStatus] eMultiCallStatus [" + eMultiCallStatus + "]");
- LOG_INFO("[printMultiCallStatus] bMultiCallAccept [" + bMultiCallAccept + "]");
- LOG_INFO("[printMultiCallStatus] bMultiCallPSTNReject [" + bMultiCallPSTNReject + "]");
- LOG_INFO("[printMultiCallStatus] strMultiCall_ID [" + strMultiCall_ID + "]");
- LOG_INFO("[printMultiCallStatus] strMultiCall_ID_H [" + strMultiCall_ID_H + "]");
- LOG_INFO("[printMultiCallStatus] strMultiCall_ID_L [" + strMultiCall_ID_L + "]");
- LOG_INFO("[printMultiCallStatus] strMultiCall_Name [" + strMultiCall_Name + "]");
- LOG_INFO("[printMultiCallStatus] strMultiCall_IP [" + strMultiCall_IP + "]");
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] printMultiCallStatus() : " + e);
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void setMultiCallInfo(CALLTYPE eBaseCall, CALLTYPE eType, CALLSTATUS eStatus, CALLOWNER eCallOwner, boolean bAccept, String sID, String sID_H, String sID_L, String sName, String sIP) {
- try {
- LOG_INFO("[setMultiCallInfo] eBaseCall [" + eBaseCall + "], eType [" + eType + "], eStatus [" + eStatus + "], eCallOwner [" + eCallOwner + "], bAccept [" + bAccept + "], sID [" + sID + "], sID_H [" + sID_H + "], sID_L [" + sID_L + "], sName [" + sName + "], sIP [" + sIP + "]");
- eBaseMultiCallType = eBaseCall;
- eMultiCallType = eType;
- eMultiCallStatus = eStatus;
- eMultiCallOwner = eCallOwner;
- bMultiCallAccept = bAccept;
- strMultiCall_ID = sID;
- strMultiCall_ID_H = sID_H;
- strMultiCall_ID_L = sID_L;
- strMultiCall_Name = sName;
- strMultiCall_IP = sIP;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] setMultiCallInfo(CALLTYPE eBaseCall, CALLTYPE eType, CALLSTATUS eStatus, CALLOWNER eCallOwner, boolean bAccept, String sID, String sID_H, String sID_L, String sName, String sIP)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void setMultiCallInfo(MultiCallInfo Info) {
- try {
- Info.printMultiCallInfo();
- eBaseMultiCallType = Info.getBaseMultiCallType();
- eMultiCallType = Info.getMultiCallType();
- eMultiCallStatus = Info.getMultiCallStatus();
- eMultiCallOwner = Info.getMultiCallOwner();
- bMultiCallAccept = Info.getMultiCallFlag();
- strMultiCall_ID = Info.getID();
- strMultiCall_ID_H = Info.getID_High();
- strMultiCall_ID_L = Info.getID_Low();
- strMultiCall_Name = Info.getName();
- strMultiCall_IP = Info.getIP();
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] setMultiCallInfo(MultiCallInfo Info)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void setMultiCallOwner(CALLOWNER eCallOwner) {
- try {
- LOG_INFO("[setMultiCallOwner] eCallOwner [" + eCallOwner + "]");
- eMultiCallOwner = eCallOwner;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] setMultiCallOwner(CALLOWNER eCallOwner)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void setMultiCallAcceptFlag(boolean bAccept) {
- try {
- LOG_INFO("[setMultiCallAcceptFlag] bAccept [" + bAccept + "]");
- bMultiCallAccept = bAccept;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] setMultiCallAcceptFlag(String bAccept)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void setPSTNRejectFlag(boolean bReject) {
- try {
- LOG_INFO("[setPSTNRejectFlag] RESI [" + bReject + "]");
- bMultiCallPSTNReject = bReject;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] setPSTNRejectFlag(String bReject)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void updateMultiCallName(String sName) {
- try {
- LOG_INFO("[updateMultiCallName] sID [" + sName + "]");
- strMultiCall_Name = sName;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] updateMultiCallName(String sID)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public void resetMultiCallInfo() {
- try {
- LOG_INFO("[resetMultiCallInfo]");
- eBaseMultiCallType = CALLTYPE.NONE;
- eMultiCallType = CALLTYPE.NONE;
- eMultiCallStatus = CALLSTATUS.IDLE;
- bMultiCallAccept = false;
- bMultiCallPSTNReject = false;
- strMultiCall_ID = "";
- strMultiCall_ID_H = "";
- strMultiCall_ID_L = "";
- strMultiCall_Name = "";
- strMultiCall_IP = "";
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- } catch (Exception e) {
- Log.e(TAG, "[Exception] resetMultiCallInfo()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- }
- }
- public CALLTYPE getBaseMultiCallType() {
- try {
- return eBaseMultiCallType;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return CALLTYPE.ERROR;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getBaseMultiCallType()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return CALLTYPE.ERROR;
- }
- }
- public boolean isBaseMultiCallMoIP() {
- try {
- CALLTYPE eCallType = getBaseMultiCallType();
- if (eCallType == CALLTYPE.LOBBY || eCallType == CALLTYPE.GUARD || eCallType == CALLTYPE.RESIDENCE)
- return true;
- else return false;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return false;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] isBaseMultiCallMoIP()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return false;
- }
- }
- public CALLTYPE getMultiCallType() {
- try {
- return eMultiCallType;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return CALLTYPE.ERROR;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallType()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return CALLTYPE.ERROR;
- }
- }
- public CALLSTATUS getMultiCallStatus() {
- try {
- return eMultiCallStatus;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return CALLSTATUS.IDLE;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallStatus()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return CALLSTATUS.IDLE;
- }
- }
- public CALLOWNER getMultiCallOwner() {
- try {
- return eMultiCallOwner;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return CALLOWNER.NONE;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallOwner()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return CALLOWNER.NONE;
- }
- }
- public boolean getMultiCallAccept() {
- try {
- LOG("[getMultiCallAccept] bMultiCallAccept [" + bMultiCallAccept + "]");
- return bMultiCallAccept;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return false;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallAccept()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return false;
- }
- }
- public boolean getMultiCallPSTNReject() {
- try {
- return bMultiCallPSTNReject;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return false;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallPSTNReject()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return false;
- }
- }
- public String getMultiCall_ID() {
- try {
- return strMultiCall_ID;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCall_ID()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- public String getMultiCall_ID_H() {
- try {
- return strMultiCall_ID_H;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallID_H()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- public String getMultiCall_ID_L() {
- try {
- return strMultiCall_ID_L;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCallID_L()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- public String getMultiCall_Name() {
- try {
- return strMultiCall_Name;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCall_Name()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- public String getMultiCall_IP() {
- try {
- return strMultiCall_IP;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getMultiCall_IP()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- }
- public enum PSTNEVENTTYPE {
- RINGING,
- RINGING_END,
- CID
- }
- public enum CALLEVENTTYPE {
- RECEIVE_CALL, // 호출 수신 (호출 수신)
- TRYING_CALL, // 호출 시도중 (호출 발신)
- RECEIVE_CALL_2ND, // 멀티콜 수신 (호출 수신)
- RECEIVE_CALL_ACK, // 호출응답 수신 (호출 발신)
- REQUEST_FRONT_MONITORING, // 호출응답 수신 (호출 발신)
- REQUEST_RESIDENCE_CALL, // 이웃통화 요청 수신 (호출 발신)
- CONNECT_CALL, // 통화 시작
- TERMINATE_CALL, // 통화 종료
- CANCEL_CALL, // 호출 취소
- CANCEL_CALL_2ND, // 멀티콜 호출 취소
- REJECT_CALL, // 호출수신 거절
- REJECT_BUSY_CALL, // 통화중 호출수신 거절
- FORWARD_CALL, // 착신전환 설정
- CALLERID, // Caller ID
- TIMEOUT_1STCALL, // 1st Call Timeout
- TIMEOUT_2NDCALL, // 2nd Call Timeout
- TIMEOUT_3RDCALL, // 3rd Call Timeout
- MOIP_VIDEO_SET, // MoIP 영상통화 설정
- DOOR_OPEN, // 문열림 설정
- PSTN_RING, // PSTN ARS동작을 위해, UI에서 Ring을 카운트 하기위한 이벤트
- PSTN_DTMF, // PSTN DTMF 수신
- DETECT_STRANGER, // 거동수상자 발생
- INITIALIZE_ALLCALL, // 초기화 (서브월패드인 경우에만 사용함)
- RECORD_STOP,
- NONE;
- public static CALLEVENTTYPE getCALLEVENTTYPE(String value) {
- try {
- if (value.equals(RECEIVE_CALL.toString())) {
- return RECEIVE_CALL;
- } else if (value.equals(TRYING_CALL.toString())) {
- return TRYING_CALL;
- } else if (value.equals(RECEIVE_CALL_2ND.toString())) {
- return RECEIVE_CALL_2ND;
- } else if (value.equals(RECEIVE_CALL_ACK.toString())) {
- return RECEIVE_CALL_ACK;
- } else if (value.equals(REQUEST_FRONT_MONITORING.toString())) {
- return REQUEST_FRONT_MONITORING;
- } else if (value.equals(CONNECT_CALL.toString())) {
- return CONNECT_CALL;
- } else if (value.equals(TERMINATE_CALL.toString())) {
- return TERMINATE_CALL;
- } else if (value.equals(CANCEL_CALL.toString())) {
- return CANCEL_CALL;
- } else if (value.equals(REJECT_CALL.toString())) {
- return REJECT_CALL;
- } else if (value.equals(REJECT_BUSY_CALL.toString())) {
- return REJECT_BUSY_CALL;
- } else if (value.equals(FORWARD_CALL.toString())) {
- return FORWARD_CALL;
- } else if (value.equals(CALLERID.toString())) {
- return CALLERID;
- } else if (value.equals(TIMEOUT_1STCALL.toString())) {
- return TIMEOUT_1STCALL;
- } else if (value.equals(TIMEOUT_2NDCALL.toString())) {
- return TIMEOUT_2NDCALL;
- } else if (value.equals(TIMEOUT_3RDCALL.toString())) {
- return TIMEOUT_3RDCALL;
- } else if (value.equals(MOIP_VIDEO_SET.toString())) {
- return MOIP_VIDEO_SET;
- } else if (value.equals(DOOR_OPEN.toString())) {
- return DOOR_OPEN;
- } else if (value.equals(PSTN_RING.toString())) {
- return PSTN_RING;
- } else if (value.equals(PSTN_DTMF.toString())) {
- return PSTN_DTMF;
- } else if (value.equals(DETECT_STRANGER.toString())) {
- return DETECT_STRANGER;
- } else if (value.equals(INITIALIZE_ALLCALL.toString())) {
- return INITIALIZE_ALLCALL;
- } else if (value.equals(RECORD_STOP.toString())) {
- return RECORD_STOP;
- } else if (value.equals(NONE.toString())) {
- return NONE;
- } else {
- return null;
- }
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return null;
- } catch (Exception e) {
- Log.e(TAG, "[Exception] getCALLEVENTTYPE()");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return null;
- }
- }
- }
- public String makeSIPID(CALLTYPE eCallType, String strDong, String strHo) {
- try {
- LOG_INFO("[makeSIPID] eCallType : " + eCallType + ", strDong : " + strDong + ", strHo : " + strHo);
- String SIPID = "12345678_Resi_0101_0101_01";
- String strDeviceCnt = "01";
- String strType = DEVICENAME.strType_Resi;
- if (eCallType == CALLTYPE.RESIDENCE) strType = DEVICENAME.strType_Resi;
- else if (eCallType == CALLTYPE.LOBBY) strType = DEVICENAME.strType_Lobby;
- else if (eCallType == CALLTYPE.GUARD) strType = DEVICENAME.strType_Guard;
- else if (eCallType == CALLTYPE.IHUB) strType = DEVICENAME.strType_Ihub;
- else if (eCallType == CALLTYPE.RENTRESIDENCE) strType = DEVICENAME.strType_RentResi;
- else if (eCallType == CALLTYPE.FRONT) strType = DEVICENAME.strType_Front;
- SIPID = Global.ZeroPadding_Head(8, Global.getSitecodeString()) + "_" + strType + "_" + Global.ZeroPadding_Head(4, strDong) + "_" + Global.ZeroPadding_Head(4, strHo) + "_" + strDeviceCnt;
- LOG_INFO("[makeSIPID] SIPID : " + SIPID);
- return SIPID;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] MakeSIPID(...) : " + e);
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- public String makeSIPID(String strIPAddress) {
- try {
- LOG_INFO("[makeSIPID] strIPAddress : " + strIPAddress);
- String SIPID = "12345678_Resi_0101_0101_01";
- String dong = "101";
- String ho = "101";
- String strType = DEVICENAME.strType_Resi;
- String strDeviceCnt = "01";
- String[] IP_Parse = strIPAddress.split("\\.");
- // Log.d(TAG, "[makeSIPID] IP_Parse.length = " + IP_Parse.length);
- // for (int i = 0; i < IP_Parse.length; i++)
- // {
- // Log.d(TAG, "IP_Parse[" + i + "] : " + IP_Parse[i]);
- // }
- if (ConfigValues.bIPExpansion) {
- if (IP_Parse[1].equals("0")) {
- dong = "100";
- } else {
- dong = Integer.toString(((Integer.parseInt(IP_Parse[0]) * 100) + Integer.parseInt(IP_Parse[1])));
- }
- } else {
- dong = Integer.toString((((Integer.parseInt(Global.getDongString()) / 100) * 100) + Integer.parseInt(IP_Parse[1])));
- }
- if (IP_Parse[2].equals("128")) {
- // 경비실폰
- strType = DEVICENAME.strType_Guard;
- ho = IP_Parse[3];
- } else if (IP_Parse[2].equals("0")) {
- // 로비폰
- strType = DEVICENAME.strType_Lobby;
- ho = IP_Parse[3];
- } else if (IP_Parse[2].equals("201")) {
- // 아이허브
- strType = DEVICENAME.strType_Ihub;
- ho = IP_Parse[3];
- } else {
- strType = Declare.DEVICENAME.strType_Resi;
- ho = IP_Parse[2] + Global.ZeroPadding_Head(2, IP_Parse[3]);
- if (ConfigValues.bSetRentHouse) strDeviceCnt = "11";
- }
- // Log.d(TAG, "[makeSIPID] dong = " + dong + ", ho = " + ho);
- SIPID = Global.ZeroPadding_Head(8, Global.getSitecodeString()) + "_" + strType + "_" + Global.ZeroPadding_Head(4, dong) + "_" + Global.ZeroPadding_Head(4, ho) + "_" + strDeviceCnt;
- LOG_INFO("[makeSIPID] SIPID : " + SIPID);
- return SIPID;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] MakeSIPID(...) : " + e);
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- int nSIPPort = 5060;
- public String makeCallForwarInfo(String strIPAddress) {
- try {
- //String strForwardInfo = makeSIPID(strIPAddress) + "@" + strIPAddress + ":" + nSIPPort;
- String strForwardInfo = strIPAddress + "@" + strIPAddress + ":" + nSIPPort;
- LOG_INFO("[makeCallForwarInfo] strForwardInfo [" + strForwardInfo + "]");
- return strForwardInfo;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return "ERROR";
- } catch (Exception e) {
- Log.e(TAG, "[Exception] makeCallForwarInfo(String strIPAddress)");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return "ERROR";
- }
- }
- public CALLTYPE getCallType(String strIPAddress) {
- try {
- LOG("[getCallType] strIPAddress = " + strIPAddress);
- String[] IP_Parse = strIPAddress.split("\\.");
- if (IP_Parse[2].equals("128")) return CALLTYPE.GUARD;
- else if (IP_Parse[2].equals("0")) return CALLTYPE.LOBBY;
- else if (IP_Parse[2].equals("201")) return CALLTYPE.IHUB;
- else return CALLTYPE.RESIDENCE;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return CALLTYPE.NONE;
- } catch (Exception e) {
- Log.e(TAG, "[getCallType] getCallType(strIPAddress) + e");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return CALLTYPE.NONE;
- }
- }
- public CALLTYPE getTargetID(String strIPAddress) {
- try {
- LOG("[getCallType] strIPAddress = " + strIPAddress);
- String[] IP_Parse = strIPAddress.split("\\.");
- if (IP_Parse[2].equals("128")) return CALLTYPE.GUARD;
- else if (IP_Parse[2].equals("0")) return CALLTYPE.LOBBY;
- else if (IP_Parse[2].equals("201")) return CALLTYPE.IHUB;
- else return CALLTYPE.RESIDENCE;
- } catch (RuntimeException re) {
- LogUtil.errorLogInfo("", TAG, re);
- return CALLTYPE.NONE;
- } catch (Exception e) {
- Log.e(TAG, "[getCallType] getCallType(strIPAddress) + e");
- //e.printStackTrace();
- LogUtil.errorLogInfo("", TAG, e);
- return CALLTYPE.NONE;
- }
- }
- public boolean bTalkTestModeEnable = false;
- public Timer CallTimer = null;
- CALLTYPE eCallTypeTimer;
- public class CTT { // CTT = Call Timeout Table, 단위 Sec
- public int TIMEOUT_SEC_10 = 10;
- public int TIMEOUT_SEC_30 = 30;
- public int TIMEOUT_SEC_60 = 60;
- public int TIMEOUT_SEC_180 = 180;
- public int WAITNG_INVITE_ACK = 10;
- public int CALLING = 30;
- public int CALLED = 35;
- public int WAIT_RECORD = 3; // 거동수상자감지 녹화 대기 팝업
- public int RESIDENCEnRESIDENCE = 180;
- public int RESIDENCEnLOBBY = 60;
- public int RESIDENCEnGUARD = 180;
- public int RESIDENCEnFRONT = 60;
- public int LOBBYnGUARD = 60;
- public int GUARDnGUARD = 180;
- public int GUARDnIHUB = 180;
- public int KILLTIMER = -99;
- public void setTalkTestMode() {
- RESIDENCEnRESIDENCE = 9999999;
- RESIDENCEnLOBBY = 999999;
- RESIDENCEnGUARD = 999999;
- RESIDENCEnFRONT = 999999;
- LOBBYnGUARD = 999999;
- GUARDnGUARD = 999999;
- GUARDnIHUB = 999999;
- }
- public void setTalkNormalMode() {
- RESIDENCEnRESIDENCE = 180;
- RESIDENCEnLOBBY = 60;
- RESIDENCEnGUARD = 180;
- RESIDENCEnFRONT = 60;
- LOBBYnGUARD = 60;
- GUARDnGUARD = 180;
- GUARDnIHUB = 180;
- }
- }
- }
|