[feature][T8TSK-135] RIL3.0 soceket broadcast optimistion 4

Change-Id: Ia50de7c8bb4eebf52b139b92e21e9c8cef18ebe3
diff --git a/lib/liblynq-call/lynq_call.cpp b/lib/liblynq-call/lynq_call.cpp
index 0270aa1..2d49208 100755
--- a/lib/liblynq-call/lynq_call.cpp
+++ b/lib/liblynq-call/lynq_call.cpp
@@ -751,7 +751,7 @@
 

     g_module_Global_uToken = utoken; 

 

-    int ret = lynq_urc_socket_start();

+    int ret = lynq_start_all_urc_socket_thread();

     if(ret != RESULT_OK)

     {

         LYERRLOG("init socket urc fail!!!");

@@ -759,11 +759,11 @@
         return LYNQ_E_INNER_ERROR;

     }

 

-    ret = lynq_server_socket_start();

+    ret = lynq_start_all_rc_socket_thread();

     if(ret !=RESULT_OK)

     {

         LYERRLOG("init socket client fail!!!");

-        lynq_close_urc_thread();

+        lynq_close_all_urc_socket_thread();

         g_module_init_flag = MODULE_CLOSED;

         return LYNQ_E_INNER_ERROR;

     }

@@ -773,8 +773,8 @@
     if(ret != RESULT_OK)

     {

         LYERRLOG("lynq_start_call_list_loop fail!!!");

-        lynq_close_urc_thread();

-        lynq_close_rc_thread();

+        lynq_close_all_urc_socket_thread();

+        lynq_close_all_rc_socket_thread();

         g_module_init_flag = MODULE_CLOSED;

         return LYNQ_E_INNER_ERROR;

     }      

@@ -795,8 +795,8 @@
     lynq_call_hungup_all();  

     lynq_set_voice_audio_mode(AUDIO_MODE_CODEC);

     g_module_init_flag = MODULE_SWITCHING;

-    lynq_close_urc_thread();

-    lynq_close_rc_thread();    

+    lynq_close_all_urc_socket_thread();

+    lynq_close_all_rc_socket_thread();    

     lynq_stop_call_list_loop();

     g_module_init_flag = MODULE_CLOSED;

     return 0;

@@ -1389,16 +1389,36 @@
 }

 /*audio end*/

 

+

+

+bool is_support_urc(int urc_id)

+{

+    switch(urc_id)

+    {

+        case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED:

+        case RIL_UNSOL_CALL_RING:

+        case RIL_UNSOL_RINGBACK_TONE:

+        case RIL_UNSOL_CALL_INFO_INDICATION:

+#ifdef ECALL_SUPPORT

+        case RIL_UNSOL_ECALL_INDICATIONS://9502        

+#endif

+            return true;                

+        default:

+            return false;

+    }    

+}

+

 void urc_msg_process(Parcel *p)

 { 

     int resp_type;

     int urcid;

     int slot_id;

-    

+

+    int size=p->dataSize();

     p->readInt32(&resp_type);

     p->readInt32(&urcid);

     p->readInt32(&slot_id);

-    LYINFLOG("urc id = %d, slot_id = %d",urcid,slot_id);

+    LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, urcid,slot_id,size,requestToString(urcid));

     switch (urcid)

     {

         case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED://1001