vmodem: Send RSSI level 01/39701/1
authorMunkyu Im <munkyu.im@samsung.com>
Fri, 19 Sep 2014 09:36:20 +0000 (18:36 +0900)
committerSooyoung Ha <yoosah.ha@samsung.com>
Thu, 21 May 2015 08:11:05 +0000 (17:11 +0900)
Send RSSI at command to telephony daemon

Conflicts:

        packaging/vmodemd-emul.spec

Change-Id: Ied02dfd8f5aa60d12cca07661f43ad6c614a01e7
Signed-off-by: Munkyu Im <munkyu.im@samsung.com>
Signed-off-by: Sooyoung Ha <yoosah.ha@samsung.com>
libvmodem/vgsm_phone.h
packaging/vmodemd-emul.spec
vmodem/at/at_tx_display.c
vmodem/include/server/server_tx_display.h
vmodem/oem/oem_tx_display.c
vmodem/server/client.c
vmodem/server/server_tx_display.c

index 7606ea87ecb372af7bbb6826613eb514897665f7..f4bac0922f3b33e2772ec93859e0da1abbfc61eb 100644 (file)
@@ -68,6 +68,7 @@
 #define GSM_POWER                             0x0F
 #define GSM_CLIENT             0x10
 #define RESTORE_EI_DATA                                                0x11
+#define GSM_RSSI                            0x13
 #define FUNC_EDB                                                       0x12
 #define FUNC_EDB_IND                                           0x01
 #define FUNC_SINGLEDB_IND                                              0x02
index c2c9b05035068727c859b011a3880b4d1d8d2b67..1c324136ecae2b9c07976653a1fe79e889d220b4 100644 (file)
@@ -1,6 +1,6 @@
 #git:sdk/vmodem-daemon-emulator
 Name: vmodemd-emul
-Version: 0.2.53
+Version: 0.2.56
 Release: 1
 Summary: Virtual Modem
 Group: System/ModemEmulator
index e17a5cb9ddd1ef03aa3b49f8b31020892fdd4b35..a02860d31da425996e532b262948fe7d6aaf9f07 100644 (file)
 #include "at_tx_display.h"
 #include "at_func.h"
 
+int at_tx_display_rssi_info_noti(void *data, int len)
+{
+    TRACE(MSGL_VGSM_INFO, "%s noti\n", CIEV);
+    char* buf = (char*)data;
+    char sndbuf1[SEND_BUF_SIZE];
+    memset(sndbuf1, '\0', sizeof(sndbuf1));
+
+    sprintf(sndbuf1, "%s%d,%d%s", CIEV, SIGNAL, buf[1], CRLF);  // rssi
+    return at_msg_send(ACK_SEQ_NOTIFICATION, sndbuf1, strlen(sndbuf1));
+}
+
 int at_tx_display_icon_info_noti(void *data, int len)
 {
     TRACE(MSGL_VGSM_INFO, "%s noti\n", CIEV);
index 4a70dac40b2249dd44cbc88b2e4a29f38e079d1d..485639bb5199860235d2d6cf665ebbf500fd9489 100644 (file)
@@ -33,6 +33,7 @@
 
 int server_tx_display_icon_info_resp(void);
 int server_tx_display_icon_info_noti( unsigned char icon_type, unsigned char rssi, unsigned char bat, unsigned char act, unsigned char reg);
+int server_tx_display_rssi_info_noti( unsigned char icon_type, unsigned char rssi);
 
 #endif
 
index 6a05db42f759c1d927d2370ec31b19b250f0f4ac..bb5c44a7dc8d5d277f188d1f74d9ad51a2abae3c 100644 (file)
 #include "at_tx_display.h"
 #include "oem_tx_display.h"
 
+int oem_tx_display_rssi_info_noti(void *data, int len)
+{
+    return at_tx_display_rssi_info_noti(data, len);
+}
+
 int oem_tx_display_icon_info_noti(void *data, int len)
 {
     return at_tx_display_icon_info_noti(data, len);
index 42df968fae0f72b21be8a52be3dece15bd330933..3724e380da268b8b4bcad0f3c67097ef7688b35b 100644 (file)
@@ -957,6 +957,9 @@ static int client_callback(PhoneServer * ps, int fd, EloopCondition cond, void *
 
     switch (group)
     {
+        case GSM_RSSI:
+            server_tx_display_rssi_info_noti(0xff, action);
+            break;
         case GSM_CALL:
             change_state_machine( GSM_CALL_CMD );
             if( is_flight_mode() ){
index 2a874e03a66516965ad56815b9af1ea2b29e5ad1..65730ac1e5ac83a990725433a51c86db81916803 100644 (file)
@@ -56,6 +56,20 @@ int server_tx_display_icon_info_resp(void)
     return oem_tx_display_icon_info_resp(data, n);
 }
 
+int server_tx_display_rssi_info_noti( unsigned char icon_type, unsigned char rssi)
+{
+    unsigned char data[2];
+    int n = 0;
+
+    TRACE(MSGL_VGSM_INFO, "icon %02x rssi %02x\n", icon_type, rssi);
+    g_rssi_value = rssi;
+
+    data[n++] = icon_type;
+    data[n++] = g_rssi_value;
+
+    return oem_tx_display_rssi_info_noti(data, n);
+}
+
 int server_tx_display_icon_info_noti( unsigned char icon_type, unsigned char rssi, unsigned char bat, unsigned char act, unsigned char reg)
 {
     unsigned char data[10];