Ignore:
Timestamp:
Feb 19, 2006 3:37:19 PM (19 years ago)
Author:
bennylp
Message:

SIMPLE test with FWD, and added more info in UI

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsua/main.c

    r197 r201  
    9999static void keystroke_help(void) 
    100100{ 
    101  
    102     printf(">>>>\nOnline status: %s\n",  
     101    char reg_status[128]; 
     102 
     103    if (pjsua.regc == NULL) { 
     104        pj_ansi_strcpy(reg_status, " -not registered to server-"); 
     105    } else if (pjsua.regc_last_err != PJ_SUCCESS) { 
     106        pj_strerror(pjsua.regc_last_err, reg_status, sizeof(reg_status)); 
     107    } else if (pjsua.regc_last_code>=200 && pjsua.regc_last_code<=699) { 
     108 
     109        pjsip_regc_info info; 
     110 
     111        pjsip_regc_get_info(pjsua.regc, &info); 
     112 
     113        pj_snprintf(reg_status, sizeof(reg_status), 
     114                    "%s (%.*s;expires=%d)", 
     115                    pjsip_get_status_text(pjsua.regc_last_code)->ptr, 
     116                    (int)info.server_uri.slen, 
     117                    info.server_uri.ptr, 
     118                    info.next_reg); 
     119 
     120    } else { 
     121        pj_sprintf(reg_status, "in progress (%d)", pjsua.regc_last_code); 
     122    } 
     123 
     124    printf(">>>>\nRegistration status: %s\n", reg_status); 
     125    printf("Online status: %s\n",  
    103126           (pjsua.online_status ? "Online" : "Invisible")); 
    104127    print_buddy_list(); 
     
    109132    puts("|                              |                          |                   |"); 
    110133    puts("|  m  Make new call            |  i  Send IM              |  o  Send OPTIONS  |"); 
    111     puts("|  a  Answer call              |  s  Subscribe presence   |  d  Dump status  |"); 
    112     puts("|  h  Hangup call              |  u  Unsubscribe presence |  d1 Dump detailed |"); 
    113     puts("|  ]  Select next dialog       |  t  Toggle Online status |                   |"); 
     134    puts("|  a  Answer call              |  s  Subscribe presence   |  R  (Re-)register |"); 
     135    puts("|  h  Hangup call              |  u  Unsubscribe presence |  r  Unregister    |"); 
     136    puts("|  ]  Select next dialog       |  t  Toggle Online status |  d  Dump status   |"); 
    114137    puts("|  [  Select previous dialog   |                          |                   |"); 
    115138    puts("+-----------------------------------------------------------------------------+"); 
     
    224247 
    225248        if ((status=pjsua_verify_sip_url(buf)) != PJ_SUCCESS) { 
    226             pjsua_perror("Invalid URL", status); 
     249            pjsua_perror(THIS_FILE, "Invalid URL", status); 
    227250            return; 
    228251        } 
     
    291314 
    292315                if (status != PJ_SUCCESS) 
    293                     pjsua_perror("Unable to create/send response", status); 
     316                    pjsua_perror(THIS_FILE, "Unable to create/send response",  
     317                                 status); 
    294318            } 
    295319 
     
    311335                                               PJSIP_SC_DECLINE, NULL, &tdata); 
    312336                if (status != PJ_SUCCESS) { 
    313                     pjsua_perror("Failed to create end session message", status); 
     337                    pjsua_perror(THIS_FILE,  
     338                                 "Failed to create end session message",  
     339                                 status); 
    314340                    continue; 
    315341                } 
     
    317343                status = pjsip_inv_send_msg(inv_session->inv, tdata, NULL); 
    318344                if (status != PJ_SUCCESS) { 
    319                     pjsua_perror("Failed to send end session message", status); 
     345                    pjsua_perror(THIS_FILE,  
     346                                 "Failed to send end session message",  
     347                                 status); 
    320348                    continue; 
    321349                } 
     
    353381            } 
    354382 
     383            break; 
     384 
     385        case 'R': 
     386            pjsua_regc_update(PJ_TRUE); 
     387            break; 
     388             
     389        case 'r': 
     390            pjsua_regc_update(PJ_FALSE); 
    355391            break; 
    356392 
     
    501537 * Display error message for the specified error code. 
    502538 */ 
    503 void pjsua_perror(const char *title, pj_status_t status) 
     539void pjsua_perror(const char *sender, const char *title,  
     540                  pj_status_t status) 
    504541{ 
    505542    char errmsg[PJ_ERR_MSG_SIZE]; 
     
    507544    pj_strerror(status, errmsg, sizeof(errmsg)); 
    508545 
    509     PJ_LOG(1,(THIS_FILE, "%s: %s [code=%d]", title, errmsg, status)); 
     546    PJ_LOG(1,(sender, "%s: %s [code=%d]", title, errmsg, status)); 
    510547} 
    511548 
Note: See TracChangeset for help on using the changeset viewer.