CNAM 연동

SIP를 통한 CNAM

SIP 소스를 승인하고, 조회 트랜잭션을 보내고, 반환된 발신자 신원을 읽으세요.

조회 방식 선택

등급쿼리당 공개 요금동작
StarterUS$0.0026자체 보유 정보와 캐시된 발신자 이름 정보를 사용합니다.
StandardUS$0.0037각 쿼리마다 실시간 네트워크 조회를 수행합니다.
MixedUS$0.004먼저 실시간 조회를 시도하고, 이름을 찾지 못하면 Starter 데이터로 대체합니다.

조회 방식은 선택한 서비스에 따라 결정되며, Mixed는 캐시 우선 조회가 아닙니다. 운영 환경에서 사용하기 전에 계정에 적용된 요금을 확인하세요. 발신자 이름은 신원이나 소유권의 증거가 아닙니다.

소스 승인

  1. CNAM IP 설정에서 SBC 또는 애플리케이션이 사용하는 공인 소스 IP를 추가하고 사용하려는 서비스를 연결하세요.
  2. 전체 전화번호를 request-URI의 사용자 부분으로 사용하여 cnam.multitel.net으로 SIP INVITE를 보내세요. 공개된 전송 방식은 UDP이며 대상 포트는 5060입니다.
  3. SIP 스택을 사용하여 Via, From, To, Contact, Call-ID, CSeq 및 그 외 필요한 트랜잭션 헤더를 생성하세요. 아래의 요청 라인만 보내서는 안 됩니다.
  4. SIP 트랜잭션을 올바르게 완료하고, 사용 가능한 결과가 있을 때만 반환된 이름을 사용하세요.
INVITE sip:12025550123@cnam.multitel.net SIP/2.0

이 조회 서비스는 SIP 등록을 허용하지 않습니다. 승인은 구성된 소스 주소를 기준으로 하며, 이는 NAT 게이트웨이의 공인 주소일 수 있습니다.

SIP 조회 결과 읽기

서비스는 P-Asserted-Identity 헤더가 포함된 380 SIP 응답으로 결과를 반환합니다. 이것은 조회 결과 트랜잭션이며, 응답된 전화 통화가 아닙니다. 사유 문구(reason phrase)에 반환된 이름이 포함될 수 있으므로, 고정된 문구에 의존하지 말고 identity 헤더를 파싱하세요.

SIP/2.0 380 EXAMPLE CALLER
P-Asserted-Identity: "EXAMPLE CALLER" <sip:12025550123@192.0.2.10>
Content-Length: 0

이 발췌문에는 트랜잭션 헤더가 생략되어 있습니다. 192.0.2.10는 예시에서 요청을 보내는 시스템을 나타냅니다. 실제 응답은 SIP 스택의 Call-ID 및 CSeq와 일치시켜야 합니다.

사용 가능한 이름이 포함된 380
P-Asserted-Identity에서 표시 이름을 읽고, SIP 스택을 통해 최종 INVITE 응답에 대해 확인 응답을 보낸 다음, 통화 워크플로를 계속 진행하세요.
사용 가능한 이름 없음
오류 메시지, 빈 값 또는 조회한 번호를 확인된 발신자 이름으로 대체하지 마세요. 평소의 이름 미확인 처리 방식으로 통화가 계속 동작하도록 하세요.
403 또는 기타 거부
요청 메서드, 대상 도메인, 소스 IP 승인, 계정/서비스 상태를 확인하세요. 승인 오류를 짧은 간격으로 반복해서 재시도하지 마세요.
시간 초과
SIP 트랜잭션 재전송과 새로운 조회를 구분하세요. 새로운 시도는 추가 쿼리 요금이 발생할 수 있으므로 횟수를 제한하세요.

청구, 재시도 및 발신자 ID 업데이트와의 차이

새로운 조회에는 쿼리 요금이 발생할 수 있습니다. 이러한 조회 인터페이스는 멱등성 키(idempotency key)를 문서화하지 않으므로, 새로 재시도하면 청구 대상 쿼리가 한 번 더 발생할 수 있습니다. 전송/서비스 장애에는 제한된 백오프를 사용하고, 계정 오류를 먼저 해결하며, 보고된 쿼리 요금을 대조하세요. 캐시는 애플리케이션에 적합한 기간 동안만 사용하세요. 발신자 이름 데이터는 변경될 수 있습니다.

CNAM 조회는 이름을 읽기만 합니다. 발신 통화에 표시되는 이름은 변경되지 않습니다. LIDB 발신자 이름 업데이트는 고유한 필드, 승인, 요금 및 처리 절차를 갖는 별도의 작업입니다.