1

pjsip を sip スタックとして使用して I-phone 用の voip アプリを開発しています。追加できるカスタム ヘッダーを追加したいのですが、追加できるのは 1 つだけです。

pj_status_t status = PJ_SUCCESS;
    pj_str_t pj_uri;

    pjsua_msg_data msg_data;
    pjsip_generic_string_hdr subject;
    pj_str_t hvalue, hname;

    pj_uri = pj_str((char *)uri);


    for(NSString *key in [headers allKeys]){

        NSLog(@"Call.m key value in call %@,%@",key,[headers objectForKey:key] );

        pjsua_msg_data_init(&msg_data);

        hname = pj_str((char *)[key UTF8String]);

        char * headerValue=(char *)[(NSString *)[headers objectForKey:key] UTF8String];

        hvalue = pj_str(headerValue);


        pjsip_generic_string_hdr_init2 (&subject, &hname, &hvalue);
        pj_list_push_back(&msg_data.hdr_list, &subject);

    }


    status = pjsua_call_make_call(acc_id, &pj_uri, 0, NULL, &msg_data, call_id);
4

2 に答える 2

0

Objective-C の専門家ではありません。いくつかの基本

pjsua_msg_data_init(&msg_data);ループ内ではなく for ループの前に常に初期化する

pjsip_generic_string_hdr subject;オブジェクトの配列に変更

于 2013-09-17T21:12:20.487 に答える