From 84221d30581c2f142a95fc37125e96e2bf8d1e43 Mon Sep 17 00:00:00 2001 From: jihye kim Date: Wed, 12 Sep 2012 21:09:27 +0900 Subject: [PATCH] modified for sending MO call dialling or alert when connect with event injector --- debian/changelog | 8 ++++++++ debian/control | 2 +- packaging/vmodemd-emul.spec | 2 +- vmodem/server/client.c | 33 ++++++++++++++++++++++++++++++++- 4 files changed, 42 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index 4b0689a..cb35160 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +vmodemd-emul (0.2.22) unstable; urgency=low + + * modified for sending MO call dialling or alert when connect with event injector + * Git: slp/pkgs/v/vmodem-daemon-emulator + * Tag: vmodemd-emul_0.2.22 + + -- Sungmin ha Wed, 12 Sep 2012 20:00:18 +0900 + vmodemd-emul (0.2.21) unstable; urgency=low * modified end call bug when conference call diff --git a/debian/control b/debian/control index f452929..e9a74a3 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: devel Priority: extra Maintainer: SungMin Ha ,Jihye Kim ,Yeongkyoon Lee Build-Depends: bison, flex, autoconf, gcc, debhelper, libglib2.0-dev, libxml2-dev, libvconf-dev -Standards-Version: 0.2.21 +Standards-Version: 0.2.22 Package: vmodemd-emul Architecture: i386 diff --git a/packaging/vmodemd-emul.spec b/packaging/vmodemd-emul.spec index f6980e7..7f71a92 100644 --- a/packaging/vmodemd-emul.spec +++ b/packaging/vmodemd-emul.spec @@ -1,6 +1,6 @@ #git:slp/pkgs/v/vmodem-daemon-emulator Name: vmodemd-emul -Version: 0.2.21 +Version: 0.2.22 Release: 1 Summary: Modem Emulator Group: System/ModemEmulator diff --git a/vmodem/server/client.c b/vmodem/server/client.c index 3b1b452..7c5b70f 100644 --- a/vmodem/server/client.c +++ b/vmodem/server/client.c @@ -204,11 +204,42 @@ void do_ext(PhoneServer* ps, TClientInfo * ci, LXT_MESSAGE * packet) // 090326 // restore data in EI static void do_restore_ei(PhoneServer* ps, TClientInfo * ci, LXT_MESSAGE * packet) { + unsigned char data[MAX_GSM_DIALED_DIGITS_NUMBER+4]; + log_msg(MSGL_VGSM_INFO,"do_restore_EI\n"); init_ss_info_re(); init_plmn_list(); server_sim_db_init(); + + gsm_call_list_t * callList = malloc(sizeof(gsm_call_list_t)); + LXT_MESSAGE MOpacket; + TAPIMessageInit(&MOpacket); + int i = 0; + + get_call_list(callList); + + for( i=0; iCallInfo[i].stat == GSM_CALL_STATUS_DIALING || callList->CallInfo[i].stat == GSM_CALL_STATUS_ALERT) + { + data[0] = callList->CallInfo[i].idx; + data[1] = callList->CallInfo[i].call_type; + data[2] = callList->CallInfo[i].num_len; + data[3] = callList->CallInfo[i].stat; + + memset(&data[4], 0, MAX_GSM_DIALED_DIGITS_NUMBER); + memcpy(&data[4], callList->CallInfo[i].number, callList->CallInfo[i].num_len); + MOpacket.data = data; + MOpacket.group = GSM_CALL; + MOpacket.action = GSM_CALL_MAKE_REQ; + MOpacket.length = callList->CallInfo[i].num_len + 4; + + FuncServer->Cast(&GlobalPS, LXT_ID_CLIENT_EVENT_INJECTOR, &MOpacket); + } + } + + free(callList); callback_callist(); log_msg(MSGL_VGSM_INFO,"do_restore_EI\n"); @@ -1218,7 +1249,7 @@ void do_power(PhoneServer* ps, TClientInfo * ci, LXT_MESSAGE * packet) { case LXT_PDA_POWER_ON_REQUEST : /* - * Interanl state´Â ½ÇÁ¦ dpram event¿¡¼­ active¸¦ È®ÀÎÇÑ ÈÄ¿¡ ó¸® + * Interanl state\B4\C2 \BD\C7\C1\A6 dpram event\BF\A1\BC\AD active\B8\A6 È®\C0\CE\C7\D1 \C8Ä¿\A1 ó\B8\AE */ Device->PowerOnDevice(&GlobalS, 0); break; -- 2.7.4