Заголовок пользовательской регистрации PJSIP

Я пытаюсь настроить SIP- связь с внутренним сервером (используя библиотеку PJSIP), однако для этого сервера требуется настраиваемое поле заголовка с указанным значением заголовка для вызова REGISTRATION . Например, мы будем называть этот обязательный заголовок MyHeader .

Из того, что я нашел, pjsua_acc_add() добавит учетную запись и зарегистрирует ее на сервере, используя конфигурационную структуру.

Параметр reg_hdr_list конфигурации config имеет описание:

Дополнительные пользовательские заголовки SIP должны быть помещены в запрос на регистрацию.

Кажется, что это то, что мне нужно, однако, похоже, не влияет на сам вызов.

Вот что я до сих пор:

  pjsua_acc_config cfg; pjsua_acc_config_default(&cfg); //...Some other config stuff related to the server... pjsip_hdr test; test.name = pj_str("MyHeader"); test.sname = pj_str("MyHdr"); test.type = PJSIP_H_OTHER; test.prev = cfg.reg_hdr_list.prev; test.next = cfg.reg_hdr_list.next; cfg.reg_hdr_list = test; pj_status_t status; status = pjsua_acc_add(&cfg, PJ_TRUE, &acc_id); 

На стороне сервера нет дополнительных полей заголовка или чего-либо еще. И структура, которая используется для определения заголовка ( pjsua_hdr ), не имеет value или эквивалентного поля, поэтому, даже если он создал заголовок, как он устанавливает значение?

Вот ссылка на определение списка заголовков и ссылку для структуры заголовка.

Редактировать: я нашел решение благодаря сотруднику:

  struct pjsip_generic_string_hdr CustomHeader; pj_str_t name = pj_str("MyHeader"); pj_str_t value = pj_str("HeaderValue"); pjsip_generic_string_hdr_init2(&CustomHeader, &name, &value); pj_list_push_back(&cfg.reg_hdr_list, &CustomHeader); 

Кажется, это работает так, как ожидалось.

Просто цитируя OP, когда он нашел решение , но забыл добавить его в качестве ответа:

Редактировать: я нашел решение благодаря сотруднику:

 struct pjsip_generic_string_hdr CustomHeader; pj_str_t name = pj_str("MyHeader"); pj_str_t value = pj_str("HeaderValue"); pjsip_generic_string_hdr_init2(&CustomHeader, &name, &value); pj_list_push_back(&cfg.reg_hdr_list, &CustomHeader); 

Кажется, это работает так, как ожидалось.

  • Связь IOS9 voip
  • Как скомпилировать PJSip iPhone для устройства и симулятора для работы с сифоном на iOS 3 и iOS 4?
  • Как интегрировать Linphone в существующий проект (SIP в IOS)
  • pjsip vs linphone для iOS
  • Одноранговый вызов с использованием PJSIP и PJSUA
  • Есть ли способ отправки тонов DTMF во время разговора с помощью linphone?
  • pjsip отправить смс как
  • Как сделать несколько звонков с одной учетной записи sip на несколько учетных записей sip?
  • Что такое трюк, используемый некоторыми приложениями для iphone sip для взаимодействия с UDP только sip-серверами?
  • SIP-сообщение с открытым исходным кодом
  • Как изменить учетную запись реестра pjsip во время перерегистрации?
  • Давайте будем гением компьютера.