добавление callid в sip-сервлеты

Я использую sip servlets api для совершения sip-вызовов,

Мое требование состоит в том, чтобы соединить два вызова в конференции, для этого мне нужно изменить идентификатор вызова для одного из запросов на приглашение, но это не позволяет мне изменить идентификатор вызова в части заголовка, и мой код выглядит следующим образом:

SipServletRequest forkedRequest = linkedSession.createRequest("INVITE");
ipFactory sipFactory = (SipFactory)getServletContext().getAttribute("javax.servlet.sip.SipFactory");
SipURI sipUri = (SipURI)sipFactory.createURI("sip:[email protected]");
forkedRequest.setRequestURI(sipUri);
forkedRequest.setContent(secondSdp,"application/sdp");
forkedRequest.addHeader("Call-ID",sipServletResponse.getCallId());

и я получил следующую ошибку:

Заголовок[Call-ID] является системным заголовком, его нельзя ни добавить, ни изменить!!!

Может ли кто-нибудь предложить по этому поводу? убедитесь, как изменить call-id


person user2582281    schedule 03.06.2015    source источник


Ответы (1)


Спецификация сервлетов SIP специально запрещает изменять заголовок Call-ID, который является системным заголовком. Пожалуйста, прочитайте спецификацию по адресу https://jcp.org/en/jsr/detail?id= 289

Какой провайдер конференц-связи принуждает вас использовать один и тот же Call-ID для двух разных вызовов, чтобы иметь возможность присоединиться к одной и той же конференции? Это кажется очень плохим дизайном и противоречит самому SIP RFC https://tools.ietf.org/html/rfc3261#section-8.1.1.4

person jeand    schedule 05.06.2015
comment
какие у нас есть лучшие и простые в реализации провайдеры конференций? У меня примерно похожая проблема, у меня есть настройка одного вызова, реализованная с использованием SipServlets. Как я могу реализовать конференцию? - person Farhan; 25.06.2018
comment
@Farhan Я бы выбрал что-то вроде Restcomm для реализации конференции, посмотрите, насколько это просто, на restcomm.com/docs/connect/rcml/conference-rcml.html#conference. Вы даже можете сделать это с помощью Restcomm Visual Designer без программирования менее чем за 5 минут restcomm.com/docs/restcommone_cloud/ - person jeand; 26.06.2018