123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224 |
- 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_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,
- 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 카운트를 한다.
- 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(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 수신
- INITIALIZE_ALLCALL, // 초기화 (서브월패드인 경우에만 사용함)
- 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(INITIALIZE_ALLCALL.toString())) {
- return INITIALIZE_ALLCALL;
- } else if (value.equals(REQUEST_RESIDENCE_CALL.toString())) {
- return REQUEST_RESIDENCE_CALL;
- } 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];
- if(IP_Parse[3].equals("11"))
- strType = DEVICENAME.strType_Front;
- } else if (IP_Parse[2].equals("201")) {
- // 아이허브
- strType = DEVICENAME.strType_Ihub;
- ho = IP_Parse[3];
- } else if (IP_Parse[2].equals("129")) {
- // Ihub
- strType = DEVICENAME.strType_Front;
- 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;
- 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"))
- {
- if(IP_Parse[3].equals("11"))
- return CALLTYPE.FRONT;
- return CALLTYPE.LOBBY;
- }
- else if (IP_Parse[2].equals("201")) return CALLTYPE.IHUB;
- else if (IP_Parse[2].equals("129")) return CALLTYPE.FRONT;
- 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"))
- {
- if(IP_Parse[3].equals("11"))
- return CALLTYPE.FRONT;
- return CALLTYPE.LOBBY;
- }
- else if (IP_Parse[2].equals("201")) return CALLTYPE.IHUB;
- else if (IP_Parse[2].equals("129")) return CALLTYPE.FRONT;
- 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_1 = 1;
- 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 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;
- }
- }
- }
|