Исходящий звонок через определенный номер транка

У нас есть транк Мегафона с двумя номерами - основной и дополнительный. Мегафон разрешает звонить с любого из них, но по-умолчанию звонок идёт с основного. Хотим звонить с дополнительного номера, поэтому решили проверить вот эту возможность: https://wiki.mikopbx.ru/faq:specific_aon

Сделали всё по этой инструкции, но номер не меняется на дополнительный. То, что номер меняет сам провайдер, а мы лишь должны ему об этом сообщить - это понятно. В логах видим, что указанный нами дополнительный номер передаётся в параметре CallerID, то есть кастомный диалплан работает, но в SIP-заголовках Инвайта - его нет. В SIP-заголовках видим основной номер транка во from и contact, дополнительных заголовков, в которых мог бы передаваться второй номер, не видим.

Ниже фрагмент лога, где видно, что устанавливается нужный нам CALLERID (дополнительный номер):

[2024-12-02 12:13:09] VERBOSE[30409][C-00000002] pbx.c: Executing [7927668XXXX@SIP-TRUNK-A5C33B42-outgoing-custom:2] ExecIf("PJSIP/102-00000002", "1?Set(CALLERID(num)=7499391XXXX)") in new stack

[2024-12-02 12:13:09] VERBOSE[30409][C-00000002] pbx.c: Executing [7927668XXXX@SIP-TRUNK-A5C33B42-outgoing-custom:3] ExecIf("PJSIP/102-00000002", "1?Set(CALLERID(name)=7499391XXXX)") in new stack

Но так как в SIP-заголовках Инвайта он не передается, провайдер (Мегафон) не получает информацию о том, с какого номера мы хотим звонить. Отсюда вопросы:

1. может нужно сделать что-то ещё помимо этой инструкции?

2. каким образом вообще MikoPBX должен сообщать провайдеру, что хочет звонить через определенный номер? Это должно быть через дополнительные заголовки, типа "p-asserted-identity", "Remote-Party-ID"?

В расширенных настройках провайдера попробуйте отключить использование поля fromuser.

Попробовал. Исходящий не совершается.

нужно снимать дамп

https://wiki.mikopbx.ru/faq:sngrep

анализировать его и лог verbose.

дамп можно отправить провайдеру с вопросом “что не так”