309장. SMPP 구성 요소

Camel 버전 2.2에서 사용 가능

이 구성 요소는 SMPP 프로토콜을 통해 SMSC(Short Message Service Center)에 액세스하여 SMS를 보내고 받을 수 있습니다. JSMPP 라이브러리는 프로토콜 구현에 사용됩니다.

Camel 구성 요소는 현재 SMSC 자체가 아닌 ESME (External Short Messaging Entity)로 작동합니다.

*Camel 2.9*부터 ReplaceSm, QuerySm, SubmitMulti, CancelSm 및 DataSm을 실행할 수도 있습니다.

Maven 사용자는 이 구성 요소를 위해 다음 종속성을 pom.xml 에 추가해야 합니다.

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-smpp</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

309.1. SMS 제한

SMS는 신뢰할 수 없거나 안전하지 않습니다.  안정적이고 안전한 배달이 필요한 사용자는 XMPP 또는 SIP 구성 요소를 선택한 프로토콜을 지원하는 스마트 폰 앱과 함께 사용하는 것을 고려할 수 있습니다.

  • 신뢰성: SMPP 표준은 오류를 나타내는 다양한 피드백 메커니즘을 제공하지만 모바일 네트워크가 이러한 응답을 숨기거나 시뮬레이션하는 것은 허용되지 않습니다.  예를 들어 일부 네트워크는 대상 번호가 유효하지 않거나 전환되지 않은 경우에도 모든 메시지에 대해 전달 확인을 자동으로 보냅니다.  일부 네트워크는 스팸이라고 생각하는 경우 자동으로 메시지를 삭제합니다.  네트워크에서 스팸 탐지 규칙은 매우 잔인할 수 있으며 때로는 한 발신자의 하루에 100개 이상의 메시지가 스팸으로 간주될 수 있습니다.
  • 보안: 라디오 타워에서 수신자 핸드셋까지 마지막 홉에 대한 기본 암호화가 있습니다.  SMS 메시지는 네트워크의 다른 부분에서 암호화되거나 인증되지 않습니다.  일부 운영자는 소매 업체 또는 콜센터의 직원이 고객의 SMS 메시지 기록을 통해 검색할 수 있습니다.  메시지 발신자 ID를 쉽게 위조할 수 있습니다.  규제 기관 및 모바일 전화 업계 자체는 이중 인증 체계 및 보안이 중요한 다른 목적으로 SMS의 사용에 대해 경고했습니다.

Camel 구성 요소를 사용하면 SMS 네트워크에 메시지를 가능한 한 쉽게 보낼 수 있지만 이러한 문제에 대한 쉬운 솔루션을 제공할 수 없습니다.