Ignore:
Timestamp:
Jul 11, 2013 5:35:05 AM (11 years ago)
Author:
nanang
Message:

JNI project:

  • mapped pj_str_t and java String
  • cosmetics: tabs consistency
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/jni/pjsip-apps/src/jni/hello.java

    r4549 r4557  
    44import java.io.InputStreamReader; 
    55import java.io.IOException; 
     6 
     7import org.pjsip.pjsua.pj_pool_t; 
     8import org.pjsip.pjsua.pjsip_rx_data; 
     9import org.pjsip.pjsua.pjsip_transport_type_e; 
     10 
    611import org.pjsip.pjsua.pjsua; 
    712import org.pjsip.pjsua.pjsua_acc_config; 
     
    1116import org.pjsip.pjsua.pjsua_logging_config; 
    1217import org.pjsip.pjsua.pjsua_transport_config; 
    13 import org.pjsip.pjsua.pjsip_transport_type_e; 
    14 import org.pjsip.pjsua.pj_str_t; 
    1518import org.pjsip.pjsua.PjsuaCallback; 
    1619 
     
    1922        public void on_call_media_state(int call_id) 
    2023        { 
    21             System.out.println("======== Call media started (call id: " + call_id + ")"); 
    22             pjsua_call_info info = new pjsua_call_info(); 
    23             pjsua.call_get_info(call_id, info); 
    24             if (info.getMedia_status() == pjsua_call_media_status.PJSUA_CALL_MEDIA_ACTIVE) { 
    25                 pjsua.conf_connect(info.getConf_slot(), 0); 
    26                 pjsua.conf_connect(0, info.getConf_slot()); 
    27             } 
     24                System.out.println("======== Call media started (call id: " + call_id + ")"); 
     25                pjsua_call_info info = new pjsua_call_info(); 
     26                pjsua.call_get_info(call_id, info); 
     27                if (info.getMedia_status() == pjsua_call_media_status.PJSUA_CALL_MEDIA_ACTIVE) { 
     28                        pjsua.conf_connect(info.getConf_slot(), 0); 
     29                        pjsua.conf_connect(0, info.getConf_slot()); 
     30                } 
     31        } 
     32        @Override 
     33        public void on_pager(int call_id, String from, String to, String contact, String mime_type, String body) 
     34        { 
     35                System.out.println("======== Incoming pager (call id: " + call_id + ")"); 
     36                System.out.println("From     : " + from); 
     37                System.out.println("To       : " + to); 
     38                System.out.println("Contact  : " + contact); 
     39                System.out.println("Mimetype : " + mime_type); 
     40                System.out.println("Body     : " + body); 
     41        } 
     42        @Override 
     43        public void on_incoming_call(int acc_id, int call_id, pjsip_rx_data rdata) { 
     44                /* Auto answer */ 
     45                pjsua.call_answer(call_id, 200, null, null); 
    2846        } 
    2947} 
     
    4058        } 
    4159 
    42         protected static pj_str_t pj_str(String st) { 
    43                 pj_str_t st_ = new pj_str_t(); 
    44                 st_.setPtr(st); 
    45                 st_.setSlen(st.length()); 
    46                 return st_; 
    47         } 
    48          
    4960        public static void main(String[] args) { 
    5061                int[] tp_id = new int[1]; 
     
    105116                 
    106117                /* Make call to the URL. */ 
    107                 { 
    108                         pj_str_t call_target = pj_str("sip:localhost"); 
    109                         status = pjsua.call_make_call(acc_id[0], call_target, null, 0, null, call_id); 
     118                if (false) { 
     119                        status = pjsua.call_make_call(acc_id[0], "sip:localhost", null, 0, null, call_id); 
    110120                        if (status != pjsua.PJ_SUCCESS) { 
    111121                                pj_error_exit("Error making call", status); 
     
    117127                        String userInput; 
    118128                        BufferedReader inBuffReader = new BufferedReader(new InputStreamReader(System.in)); 
     129 
     130                        System.out.println("Press 'h' to hangup all calls, 'q' to quit"); 
     131 
    119132                        try { 
    120133                                userInput = inBuffReader.readLine(); 
     
    124137                        } 
    125138                         
    126                         System.out.println("Press 'h' to hangup all calls, 'q' to quit"); 
    127                          
    128                         if (userInput.equals("q")) 
     139                        if (userInput.equals("q")) { 
    129140                                break; 
    130  
    131                         if (userInput.equals("h")) 
     141                        } else if (userInput.equals("h")) { 
    132142                                pjsua.call_hangup_all(); 
     143                        } else if (userInput.equals("c")) { 
     144                                /* Test string as output param, it is wrapped as string array */ 
     145                                String[] contact = new String[1]; 
     146                                pj_pool_t my_pool = pjsua.pool_create("hello", 256, 256); 
     147                                 
     148                                pjsua.acc_create_uac_contact(my_pool, contact, 0, "sip:localhost"); 
     149                                System.out.println("Test create contact: " + contact[0]); 
     150                                 
     151                                pjsua.pj_pool_release(my_pool); 
     152                        } 
    133153                } 
    134154 
Note: See TracChangeset for help on using the changeset viewer.