Есть ли способ добавить пользовательский заголовок в jain-sip? Добавление oc-параметров из RFC 7339.
Из описания ссылки здесь здесь я получил следующий пример, но не уверен, что он будет работать. Цитата из ссылки:
Этого можно легко достичь, добавив некоторый код в реализацию функции javax.sip.message.Message.addHeader(Header header).
void addHeader(Header header) {
if(!(header instanceof InternalHeaderObject)
&& header instanceof ExtensionHeader) {
ExtensionHeader extensionHeader = (ExtensionHeader) header;
header = headerFactory.createHeader(extensionHeader.getName(), extensionHeader.getValue());
}
...
}
Начну с того, что вы можете полностью обрабатывать пользовательские заголовки с точки зрения SIP, если это действительно SIP. Для этого RFC вам просто нужно использовать viaHeader.set/getParameter, если я чего-то не пропущу.
В сообщении в блоге рассказывается о создании собственных классов заголовков, что, насколько я могу себе представить, не имеет отношения к вашим потребностям. Пользовательские классы заголовков сложны и неэффективны. Например, JAIN SIP автоматически создаст собственный экземпляр ViaHeader для входящих сообщений при их разборе. Подключение пользовательского заголовка для переопределения значения по умолчанию через внутреннюю часть приведет к нарушению множества обещаний по проверке и возникновению накладных расходов.
Если у вас есть случай showstopper для пользовательских классов заголовков, я с удовольствием слушаю их.