Диагностика Caller ID (CLIP / CLIR): P-Asserted-Identity, Remote-Party-ID
- На экране вызываемого абонента отображается 'Неизвестный номер' или некорректный технический номер транка.
- При входящем вызове не определяется реальный городской номер клиента (CLIP failure).
- Оператор связи блокирует звонки из-за отсутствия верифицированного номера в заголовке
PAI. - Режим антиопределителя номера (CLIR) раскрывает реальный номер вызывающего абонента.
1. Иерархия заголовков идентификации абонента
- From: отображаемое имя (Display Name) и номер, который видит конечный абонент (User-visible CID).
- P-Asserted-Identity (PAI / RFC 3325): доверенный заголовок идентификации между сертифицированными узлами сети (Trust Domain).
- Remote-Party-ID (RPID): устаревший аналог PAI, поддерживаемый оборудованием Cisco и старыми софтсвичами.
- Privacy: директива сокрытия номера от конечного пользователя (
Privacy: idилиPrivacy: none).
2. Формирование PAI и Privacy для скрытого вызова (CLIR)
From: "Anonymous" <sip:anonymous@anonymous.invalid>;tag=1234
To: <sip:+79991234567@provider.com>
P-Asserted-Identity: "Billing Department" <sip:+74957654321@provider.com>
Privacy: idОператор получит реальный номер для биллинга и СОРМ из PAI, но скроет его от вызываемого абонента благодаря Privacy: id.
3. Настройка передачи Caller ID в Asterisk PJSIP
# pjsip.conf
[endpoint-trunk]
type=endpoint
send_pai=yes
send_rpid=no
trust_id_inbound=yes
trust_id_outbound=yes
# dialplan (extensions.conf)
exten => _X.,1,Set(CALLERID(name)=Company Name)
exten => _X.,n,Set(CALLERID(num)=+74951234567)
exten => _X.,n,Dial(PJSIP/${EXTEN}@endpoint-trunk) Частые вопросы (FAQ)
В чем разница между CLIP и CLIR?
CLIP (Calling Line Identification Presentation) — услуга отображения номера вызывающего абонента. CLIR (Calling Line Identification Restriction) — запрет отображения своего номера (антиопределитель).
Что такое Trust Domain (Доверенная зона) в RFC 3325?
Это периметр сети между серверами, доверяющими подлинности заголовка P-Asserted-Identity. При выходе пакета за пределы доверенной зоны (к абоненту) заголовок PAI должен быть удален пограничным SBC.
Почему FreePBX/Asterisk подставляет внутренний номер (например, 101) вместо городского?
Если на транке не включена опция 'CID Options: Force Trunk CID' или не настроен 'Outbound Route CID', система отправляет внутренний extension создателя канала.
Как передать переадресованный номер через заголовок Diversion?
При переадресации добавьте заголовок Diversion: <sip:original_number@domain.com>;reason=unconditional, чтобы оператор видел первоначальный номер переадресации.