SMS 커넥터 프로토콜 및 설정

노트

page에서 Adobe Campaign Classic에 대한 SMS 커넥터 프로토콜 및 설정​을 찾을 수 있습니다.

이 문서를 통해 프로토콜, 필드 이름 및 값에 대한 세부 정보에 대한 모든 참조는 SMPP 3.4 사양을 참조하십시오.

개요

SMS는 형식이 없는 짧은 텍스트 메시지를 보내는 것으로 제한될 수 있지만, 간단한 기능을 통해 중요한 통신 채널로 사용할 수 있습니다.

SMS를 전송하는 방법에는 두 가지가 있습니다.

  • 휴대폰에서 수동으로 전송하여 사람들 간에 직접 통신할 수 있습니다.

  • Adobe Campaign이 메시지를 보내는 방식과 인터넷에서 전송합니다. 이를 위해서는 인터넷을 모바일 네트워크에 연결하는 SMS 서비스 공급자가 필요합니다.
    Adobe Campaign은 SMPP 프로토콜을 사용하여 SMS를 서비스 공급자에게 보냅니다.

이 문서에서는 Adobe Campaign과 SMPP 공급자 간 연결 설정 을 안내합니다.

SMPP 제공업체는 경우에 따라 공식 사양에서 벗어날 수 있지만 Adobe Campaign의 SMS 커넥터는 대부분의 제공자와 호환될 수 있도록 다양한 옵션을 제공합니다.

중요

새 공급자에 연결을 설정하려면 기술, TCP, 이진, 16진수 표현 및 텍스트 인코딩에 대한 지식, 기술 지식이 필요할 수 있습니다. 또한 이 업체와의 적극적인 협조도 필요할 것이다.

SMS 유형

SMS 공급자를 통해 대량 SMS를 전송할 때 다음과 같은 세 가지 종류의 SMS가 나타납니다.

  • SMS MT(모바일 종료됨): Adobe Campaign에서 SMPP 공급자를 통해 휴대폰에 내보내는 SMS입니다.

  • SMS MO(모바일이 시작됨): smpp 공급자를 통해 모바일에서 Adobe Campaign으로 전송되는 SMS입니다.

  • SMS SR(상태 보고서) 또는 DR 또는 DLR(배달 확인): sms를 성공적으로 수신했음을 나타내는 SMPP 공급자를 통해 모바일이 Adobe Campaign으로 보낸 반환 수신입니다. Adobe Campaign은 메시지를 배달할 수 없음을 나타내는 SR을 받을 수도 있으며, 이는 종종 오류에 대한 설명과 함께 제공됩니다.

SMPP 프로토콜의 일부인 승인(RESP PDU)과 SR을 구분해야 합니다. SR은 네트워크 종단간 을 통해 전송되는 SMS와 달리, 확인은 하나의 전송이 성공했음을 확인하는 것입니다.

승인 및 SR 모두 오류를 트리거할 수 있으며, 두 사항을 구분하는 것이 문제 해결에 도움이 됩니다.

SMS에서 전달하는 정보

SMS는 문자보다 더 많은 정보를 전달한다. 다음은 SMS에서 찾을 수 있는 사항 목록입니다.

  • 텍스트는 140바이트로 제한되어 있으며, 인코딩에 따라 70~160자 사이의 문자를 의미합니다. 자세한 내용 및 제한 사항은 아래의 SMS 텍스트 인코딩을 참조하십시오.

  • ADC 또는 MSISDN이라고도 하는 수신자 주소입니다. SMS를 수신할 모바일 수입니다.

  • oADC 또는 경우에 따라 sender id이라고 할 수 있는 발신자 주소입니다. 이는 하루 종일 사용할 수 있는 전화 번호이거나, 공급자 또는 이름을 통해 보낼 때 짧은 코드일 수 있습니다. 이름은 선택 사항이며, 이 경우 SMS에 회신할 수 없습니다.

  • 메시지가 플래시 메시지인지 나타내는 플래그입니다. 플래시 메시지는 메모리에 저장되지 않는 팝업입니다.

  • SR의 예상 여부를 나타내는 플래그입니다.

  • 네트워크 장비를 다시 시도할 수 없는 유효 날짜입니다.

  • 텍스트 인코딩을 나타내는 data_coding 필드.

SMPP 프로토콜

Adobe Campaign Standard은 SMPP 프로토콜 버전 3.4를 지원합니다. SMSC(공급자)로 SMS를 전송하고 SMS와 영수증을 받을 수 있는 광범위한 프로토콜입니다. 자세한 내용은 SMPP 설명서를 참조하십시오.

SMS 서비스 공급자 측의 네트워크 장비를 SMSC라고 합니다.

SMPP 연결

Adobe Campaign은 TCP를 통해 SMS 서비스 공급자의 네트워크 장비에 연결합니다. SMPP 프로토콜은 Adobe Campaign에서 공급자에 대한 영구 TCP 연결을 설정합니다. TCP 연결은 메시지를 받을 경우에도 항상 Adobe Campaign에서 시작됩니다.
SMPP는 모드에 따라 1개 또는 2개의 TCP 연결을 엽니다. 모든 연결은 항상 Adobe Campaign에서 시작됩니다.

SMPP 프로토콜은 다음 두 가지 모드에서 작동할 수 있습니다.

  • 송신기+수신기(또는 TX+RX): 메시지 송수신에 두 개의 별도의 TCP 연결이 사용됩니다.
  • 트랜시버(TRX 지원): 하나의 TCP 연결을 사용하여 메시지를 송수신합니다.
노트

TRX는 연결 수를 줄이고 실패 시 연결 복구를 간소화하므로 Adobe Campaign Standard에 선호됩니다.

SMPP PDU

SMPP 전송 장치("패킷")는 PDU라고 합니다. PDU​에는 명령, 상태, 시퀀스 번호 및 데이터가 포함되어 있습니다.

각 PDU는 SMPP RESP PDU(동기 응답)에 의해 인식되어야 합니다. 요청을 파이프할 수 있습니다. 발신자는 RESP 대기 없이 여러 명령을 전송할 수 있으며, 언제든지 파이프될 수 있는 요청 수를 창으로 부릅니다. RESP PDU 해당 이니시에이터 PDU의 순서와 관련 없는 순서에 상관없이 도착할 수 있습니다.

분리된 Transmitter+receiver 모드에서 사용되는 연결은 전송된 메시지의 종류에 따라 다릅니다. 상기 송신기 접속은 MT에 사용되고, 상기 수신기 접속은 MO 및 SR에 사용된다. 각 메시지의 요청 및 응답은 동일한 TCP 연결을 통해 전송됩니다.

예를 들어, MT를 전송할 때는 송신기 연결을 사용하고 MT를 인식하는 RESP도 송신채널을 통해 전송한다. MO(또는 SR)를 받으면, 수신자 연결은 MO를 수신하고 MO를 인식하는 RESP를 전송하는 데 사용됩니다.

Adobe Campaign Standard에서 MT 및 SR 조정은 MTA가 기본이므로 전용 SMS 프로세스가 없습니다.

성공한 SUBMIT_SM_RESP PDU은(는) 전송 로그에서 "sent" 메시지 상태를 트리거하고, 성공한 DELIVER_SM (SR) PDU은(는) "received" 메시지 상태를 트리거합니다.

보안 측면

프로토콜 자체는 암호화되지 않습니다. 대부분의 공급자는에서 IP허용 목록에 추가하다의 변형을 구현하므로 Adobe Campaign 서버 IP 주소를 공급자에게 선언해야 합니다.

Adobe Campaign에서는 바인딩 단계 동안 로그인 및 암호 전달을 지원합니다. 또한 TLS를 통한 SMPP를 지원합니다. 적절한 보안을 위해서는 인증서가 필요하다는 점을 명시해야 합니다. SMPP 커넥터에서 인증서 확인을 무시할 수 있지만 인증서가 없는 TLS는 훨씬 더 낮은 보안 수준을 제공하므로 테스트에만 사용해야 합니다.

커넥터는 시스템 openssl 라이브러리에서 제공하는 기본 인증서를 사용합니다. 일반적으로 Debian의 /etc/ssl/certs 디렉토리에서 제공됩니다. 이 디렉토리는 기본적으로 "ca-certificates" 패키지에서 제공되지만 사용자 지정할 수 있습니다.

각 PDU의 정보

각 종류의 PDU에는 서로 다른 정보를 전달하는 개별 필드가 있습니다. 이러한 PDU는 SMPP 3.4 사양에 자세히 설명되어 있습니다.

아래의 각 섹션에서는 PDU와 동기 응답(*_RESP PDU)을 모두 설명합니다. 모든 PDU는 해당 RESP에 의해 인식되어야 하며 이는 세부 항목의 필수 부분입니다.

PDU에는 선택적 필드가 있을 수 있습니다. 가장 일반적인 필드만 여기에 설명되어 있습니다. 자세한 내용은 SMPP 3.4 사양을 참조하십시오.

BIND_TRANSMITTER / BIND_RECEIVER / BIND_TRANSMISVER

이 PDU는 SMSC에 대한 연결을 시작하는 데 사용됩니다. 송신기, ​수신 및 ​송수신 모드는 이 연결을 통해 전송할 수 있는 SMS의 종류를 변경할 뿐입니다. 특히 다음과 같습니다.

모드 허용되는 SMS 종류
송신기 MT
받는 사람 MO + SR
트랜시버 MT + MO + SR

BIND_* PDU의 주목할 만한 필드:

  • system_id: 인증에 사용되는 로그인입니다. 외부 계정에서 설정합니다.

  • 암호: 인증에 사용되는 암호입니다. 외부 계정에서 설정합니다.

  • system_type: 일부 공급자에 대해 특정 값으로 설정해야 합니다. 모든 버전에서 사용할 수 있는 외부 계정에서 설정합니다. 종종 다양한 유형의 계약, 채널, 국가 등을 구별합니다.

  • addr_ tonand addr_npi: 일부 공급자가 필요로 합니다. 외부 계정의 Bind TONBind NPI 설정에 의해 설정됩니다.

  • address_range: 일부 공급자가 필요로 합니다. 대부분의 경우 이 연결에 허용된 바로 가기 코드 목록입니다. 외부 계정에서 설정합니다.

BIND_*_RESP 에는 특정 필드가 없으므로 연결이 성공했는지 확인합니다.

바인딩 해제

이 PDU는 연결을 끊기 전에 시스템에서 전송해야 합니다. 연결을 닫기 전에 일치하는 UNBIND_RESP PDU을 기다려야 합니다.

SMSC 적용 시 연결을 닫으면 안 됩니다. TCP 연결은 Adobe Campaign 커넥터에 의해 제어됩니다.

SUBMIT_SM

이 PDU는 SMSC에 MT를 보냅니다. 응답 PDU는 MT의 ID를 제공합니다.

SUBMIT_SM PDU의 주목할 만한 필드:

  • service_type: 일부 공급자가 필요로 합니다. 게재 속성에서 을 설정합니다.

  • source_addr_ tonand source_addr_npi: 전송된 소스 주소의 종류를 나타냅니다. 이러한 필드의 의미는 표준화되어 있지만, 일부 공급자가 이 필드를 다르게 사용하므로 공급자에게 올바른 값을 요청해야 합니다. 외부 계정에서 설정합니다.

  • source_addr: MT의 소스 주소/ADC입니다. 휴대전화에 표시될 예정입니다 외부 계정 및 게재에서 설정하면 게재 값이 외부 계정 값보다 우선합니다.

  • dest_addr_ tonand dest_addr_npi: 전송할 대상 주소 종류를 나타냅니다(예: 로컬 또는 국제 형식). 이러한 필드의 의미는 표준화되어 있지만, 일부 공급자가 이 필드를 다르게 사용하므로 공급자에게 올바른 값을 요청해야 합니다. 외부 계정에서 설정합니다.

  • destination_addr: 수신자 주소, 전화 번호 또는 MSISDN

  • esm_class: 텍스트 필드에 UGH가 사용되는지 여부를 확인하는 데 사용됩니다. message_payload 모드가 사용되지 않는 경우 SMS 분할을 위한 커넥터에서 자동으로 활성화합니다.

  • priority_flag: 다른 메시지보다 우선합니다. 게재 자체의 우선순위에 연결되어 있습니다.

  • validity_period: 다시 시도하지 않을 타임스탬프. 게재 자체에 를 설정합니다.

  • registered_delivery: 는 SR 요청 여부를 알려줍니다. Adobe Campaign은 자동 답글을 제외하고 항상 이 플래그를 설정합니다. 다중 부분 메시지의 경우 첫 번째 부품에 대해서만 플래그가 설정됩니다. 모든 버전은 동일한 동작이 있습니다.

  • data_coding: 텍스트 필드에 사용되는 인코딩을 나타냅니다. 자세한 내용은 SMS 텍스트 인코딩 섹션을 참조하십시오.

  • short_message: 메시지의 텍스트입니다. UHD를 사용하는 경우 UHD 헤더도 포함됩니다.

Adobe Campaign은 다음과 같은 옵션 필드를 지원합니다.

  • dest_addr_subunit: sms 대상을 지정하는 데 사용됩니다. flash, mobile 또는 SIM 카드. 게재 속성에서 을 설정합니다.

  • message_payload: 외부 계정에서 활성화되면 긴 메시지가 단일 PDU로 전송되고 short_message 필드 대신 이 필드에 텍스트가 전송됩니다.

SUBMIT_SM_RESP

이 PDU에는 MT의 ID가 포함됩니다. 이 기능은 수신 SR과 일치시키는 데 유용합니다.

중요

많은 공급자가 MT ID를 16진수로 전송합니다. 외부 계정에서 ID 형식을 MT acknowledgement 설정으로 올바로 설정했는지 확인하십시오.

일부 공급자는 SR을 보낸 후 SUBMIT_SM_RESP을 보냅니다. 이 동작을 설명하기 위해 Adobe Campaign은 알 수 없는 ID가 있는 SR에 잘못된 메시지 ID​를 응답하기 전에 30초 동안 기다립니다.

DELIVERY_SM

이 PDU는 SMSC에서 Adobe Campaign으로 전송됩니다. MO 또는 SR이 포함되어 있습니다.

대부분의 필드는 SUBMIT_SM 상대 필드와 같은 의미를 갖습니다. 다음은 유용한 필드 목록입니다.

  • source_addr: MO/SR의 소스 주소입니다. 보통 전화번호입니다

  • destination_addr: mo 또는 SR을 받은 짧은 코드입니다.

  • esm_class: PDU가 MO인지 SR인지 확인하는 데 사용됩니다.

  • short_message: 메시지의 텍스트입니다. SR의 경우, SMPP 프로토콜 사양의 부록 B에 설명된 데이터가 포함됩니다. 자세한 내용은 SR 오류 관리를 참조하십시오.

Adobe Campaign에서는 일부 구성 조정을 통해 receipted_message_id 옵션 필드에서 메시지 ID를 읽을 수 있습니다.

DELIVERY_SM_RESP

이 PDU는 Adobe Campaign에서 SR 및 MO를 승인하도록 전송됩니다.

Adobe Campaign Standard에서는 모든 처리 단계가 성공적으로 수행되면 DELIVER_SM_RESP만 보냅니다. 이렇게 하면 처리 오류가 발생할 위험이 있는 동안 SR 또는 MO가 확인되지 않을 수 있습니다.

이 PDU는 연결이 라이브 상태인지 확인하는 데만 사용됩니다. 공급자의 요구 사항에 따라 빈도를 설정해야 합니다.

기본 60초는 외부 계정에 설정된 대부분의 구성과 일치해야 합니다.

이 PDU는 연결이 정상 상태임을 인지합니다.

다중 부분 SMS(긴 SMS)

다중 부분 SMS 또는 긴 SMS는 여러 부분으로 전송되는 SMS입니다. 모바일 네트워크 프로토콜의 기술 제한 사항으로 인해 SMS는 140바이트보다 크지 않거나 분할해야 합니다. SMS에 맞는 문자 수에 대한 자세한 내용은 SMS 텍스트 인코딩 섹션을 참조하십시오.

긴 메시지의 각 부분은 개별 SMS입니다. 이러한 부품들은 네트워크상에서 독립적으로 이동하며 수신 휴대폰에 의해 조립된다. 다시 시도 및 연결 문제를 처리하기 위해 Adobe Campaign은 이러한 부품을 역방향 순서로 보내고 메시지의 첫 번째 부분인 마지막 전송된 SR만 요청합니다. 휴대폰은 첫 번째 부분을 받을 때만 메시지를 표시하므로 추가 부분에서 다시 시도해도 휴대폰에서 중복이 생성되지 않습니다.

게재 템플릿​에서 메시지당 최대 SMS 수 설정을 사용하여 메시지당 최대 SMS 수를 설정할 수 있습니다. SMS가 너무 긴 실패 이유로 이 제한을 초과하는 메시지는 보내는 동안 실패합니다.

긴 SMS를 전송하는 방법에는 두 가지가 있습니다.

  • UGH: 긴 메시지를 보내는 기본 및 권장 방법입니다. 이 모드에서는 커넥터가 메시지를 UGH 정보와 함께 여러 SUBMIT_SM PDU로 분할합니다. 이 프로토콜은 휴대폰 자체에서 사용하는 것입니다. 즉, Adobe Campaign은 메시지 생성을 가장 많이 제어하므로 전송된 부분 수와 분할된 방법을 정확히 계산할 수 있습니다.

  • message_payload: 전체 긴 메시지를 단일 SUBMIT_SM PDU로 전송하는 방법 공급자가 분할해야 하므로 Adobe Campaign에서 얼마나 많은 부품을 전송했는지 정확히 알 수 없습니다. 일부 공급자는 이 모드를 필요로 하지만 UGH를 지원하지 않는 경우에만 사용하는 것이 좋습니다.

프로토콜 및 형식에 대한 자세한 내용은 SUBMIT_SM PDUesm_class, short_messagemessage_payload 필드에 대한 설명을 참조하십시오.

처리량 최대 가용량 및 창

대부분의 공급자는 각 SMPP 연결에 대해 처리량 제한이 필요합니다. 외부 계정에서 많은 SMS를 설정하여 이를 수행할 수 있습니다. 연결당 처리량 조절이 수행되며 총 유효 처리량은 연결당 제한과 총 연결 수를 곱한 것입니다. 이 내용은 동시 연결 섹션에 자세히 설명되어 있습니다.

가능한 최대 처리량에 도달하려면 최대 전송 기간을 미세 조정해야 합니다. 전송 창은 SUBMIT_SM_RESP을(를) 기다리지 않고 보낼 수 있는 SUBMIT_SM PDU의 수입니다. 자세한 내용은 창 보내기 설정 섹션을 참조하십시오.

SR 및 오류 관리("부록 B")

SMPP 프로토콜은 RESP PDU에서 표준 동기 오류를 정의하지만 SR에 대한 오류 코드는 정의하지 않습니다. 각 공급자는 자체 오류 코드를 의미와 함께 사용합니다.

SMPP 프로토콜 사양(167페이지)의 부록 B 섹션에 권장 사항이 있지만, 실제 오류 코드나 그 의미를 나열하지는 않습니다.

오류 관리에 맞게 Adobe Campaign의 브로드로그 메시지 시스템을 활용하여 오류 및 심각도(하드, 소프트 등)를 적절하게 프로비저닝했습니다.

위에서 언급했듯이, 두 가지 다른 종류의 오류가 있습니다.

  • 메시지가 SMSC에 전송된 직후 발생하는 SUBMIT_SM_RESP의 동기 회신
  • 휴대폰에서 메시지를 받거나 메시지 시간이 초과되었을 때 훨씬 나중에 발생할 수 있는 영수증. 이 경우 SR에 오류가 있습니다.

SR을 받으면 해당 short_message 필드에서 상태 및 오류를 찾을 수 있습니다(예: 부록 B 준수 구현). PDU의 short_message 필드는 MT의 텍스트를 포함하므로 종종 텍스트 필드​라고 합니다. SR의 경우 기술 정보와 Text​라는 하위 필드가 포함됩니다. 이 두 필드는 다르며 short_message은 실제로 Text 필드 및 기타 정보를 포함합니다.

SR 텍스트 필드 형식

SR 텍스트 필드에 이 형식을 사용하는 것이 좋습니다. 필드 이름과 해당 값을 구분하기 위해 콜론으로 구분하여 하위 필드 목록입니다. 필드 이름은 대/소문자를 구분하지 않습니다.

부록 B 추천과 일치하는 SR 텍스트 필드의 예:

id:1234567890 sub:001 dlvrd:001 submit date:1608011415 done date:1608011417 stat:DELIVRD err:000 Text:Hello Adobe world

ID 필드는 MT를 인정하는 SUBMIT_SM_RESP PDU에서 받은 ID입니다.

sub 또한 dlvrd 는 전달된 부분 및 게재된 메시지의 양을 계산해야 하지만, 브로드로그 시스템에서 더 나은 통합 정보를 제공하므로 Adobe Campaign에서 사용하지 않습니다.

submit datedone date 필드는 MT가 전송된 시점과 모바일에서 SR을 보낸 시점을 나타내는 타임스탬프입니다. 표준 시간대 또는 잘못된 날짜 세트가 있는 모바일에서 제공하는 잘못된 타임스탬프에 일부 문제가 있을 것으로 예상됩니다.

통계 필드는 메시지의 상태를 알려주기 때문에 중요합니다. 유일한 중요한 상태는 DELIVRD, UNDELIVREJECTD입니다. DELIVRD 상태는 성공을 나타내고 다른 두 상태는 오류를 나타냅니다. 다른 값을 사용할 수 있지만 일반적으로 중간 알림입니다(예: MT가 이동통신사에 도달했지만 휴대전화에는 도달하지 않음). Adobe Campaign에서는 이러한 중간 알림을 무시합니다.

오류 필드에 공급자별 오류 코드가 포함되어 있습니다. 공급자가 이 값을 해석하려면 가능한 오류 코드 테이블과 해당 의미를 함께 지정해야 합니다.

마지막으로 텍스트 필드에는 일반적으로 MT의 텍스트 시작 부분이 포함됩니다. 이는 Adobe Campaign에서 무시되며, 일부 공급업체는 PII 누출 및 네트워크 대역폭 사용을 방지하기 위해 이 값을 전송하지 않습니다. 문제 해결 중에 이 필드를 읽으면 테스트 MT와 일치하는 SR을 더 쉽게 찾을 수 있습니다.

Adobe Campaign Standard 확장 일반 SMPP의 SR 처리 예

이 예는 부록 B 권장 사항, 외부 계정의 기본값 및 성공적인 SMS MT에 따른 구현 사례를 보여줍니다.

id:1234567890 sub:001 dlvrd:001 submit date:1608011415 done date:1608011417 stat:DELIVRD err:000 Text:Hello Adobe world

먼저 id extraction regex가 적용되어 ID를 추출하고 해당 MT와 조정합니다.

그런 다음 status extraction regex 및 error code extraction regex가 적용되어 이러한 필드를 추출하고 문자열에 추가됩니다.

브로드로그 메시지는 이 정보로 구성되며 참조용으로 원래 변경되지 않은 문자열이 추가됩니다.

SR ExampleProvider DELIVRD 000|MESSAGE=id:1234567890 sub:001 dlvrd:001 submit date:1608011415 done date:1608011417 stat:DELIVRD err:000 Text:Hello Adobe world

그런 다음 메시지가 표준화되어 여러 메시지를 동일한 상태 및 오류 코드와 일치시킬 수 있도록 메시지 부분을 제거합니다.

SR ExampleProvider DELIVRD 000|#MESSAGE#

메시지가 브로드로그 메시지 테이블에 아직 제공되지 않으면 전체 메시지를 firstText 및 정규화된 메시지로 사용하여 새 항목이 만들어집니다. 그런 다음 커넥터는 성공 및 error regex를 사용하여 성공인지 실패인지를 확인합니다.

  • success regex와 일치하면 성공으로 간주됩니다.

  • 이 값이 error regex와 일치하면 메시지가 오류로 검증됩니다.

  • 이 두 regex 중 어느 것도 일치하지 않으면 SR이 무시됩니다. Adobe Campaign에서 처리하지 않는 중간 알림일 수 있습니다.

기본적으로 모든 오류는 소프트 오류로 제공됩니다. 이는 하드 오류를 직접 제공해야 함을 의미합니다.

SMS 텍스트 인코딩

인코딩 문제가 발생하면 항상 SMSC 공급자에게 문의해야 합니다. SMSC 공급자만 지원하는 인코딩과 기술 플랫폼의 제한 사항으로 인해 적용될 수 있는 특수 규칙에 대해 정확하게 알고 있습니다.

SMS 메시지는 GSM7 인코딩이라고 하는 특수 7비트 인코딩을 사용합니다.

SMPP 프로토콜에서 GSM7 텍스트가 문자당 8비트로 확장되어 문제를 더 쉽게 해결할 수 있습니다. SMSC는 모바일로 전송되기 전에 문자당 7비트로 묶습니다. 즉, SMS의 short_message 필드는 SMPP 프레임에서 최대 160바이트의 길이가 될 수 있지만 모바일 네트워크에서 전송할 때는 140바이트로 제한됩니다.

인코딩 문제가 발생하면 확인할 몇 가지 중요한 사항이 있습니다.

  • 어떤 문자가 인코딩에 속하는지 확인하십시오. GSM7은 분음 부호(악센트)를 완전히 지원하지 않습니다. 특히 프랑스어로, é와 는 GSM7의 일부이지만, 혹은 그렇지 않습니다. 스페인어도 마찬가지다.

  • GSM7 알파벳의 경우 C(cedilla)가 있는 경우에는 대문자만 표시되지만, 일부 휴대폰은 소문자 또는 "smart" 케이스에서 렌더링됩니다. 일반적으로 이러한 기능을 완전히 제거하고 UCS-2로 전환하거나 절차를 제거하는 것이 좋습니다.

  • SMSC 공급자가 명시적으로 요청하지 않는 한 SMS에서 ASCII를 사용하지 마십시오. 이 인코딩은 GSM7보다 8비트 문자를 사용하고 적용 범위가 적으므로 공간을 낭비합니다. 이 인코딩은 북미에서 사용되는 CDMA 네트워크에 필요할 수 있습니다.

  • Latin-1이 항상 지원되는 것은 아닙니다. Latin-1을 사용하기 전에 SMSC 공급자와의 호환성을 확인하십시오.

  • 국가 언어 이동 표는 Adobe Campaign 커넥터에서 지원하지 않습니다. 대신 UCS-2 또는 다른 data_coding를 사용해야 합니다.

  • UCS-2와 UTF-16이 종종 휴대폰에 의해 혼합됩니다. UCS-2에 없는 이모지와 다른 문자를 사용할 때 문제가 발생합니다.

  • 대부분의 휴대폰에는 모든 UCS-2 문자의 글꼴 글리프가 없습니다. 일반 휴대전화의 경우 좀 보기 드문 용품의 출시를 쉽게 할 수 있지만 상용화형은 대부분 국산 모국어로 유용한 것에 대한 지원이 제한적이다. 이모지나 ASCII-art를 사용하려면 전송 전에 다양한 휴대폰에서 테스트해 보십시오. Adobe Campaign 미리 보기는 누락된 글리프를 시뮬레이션하지 않으며 웹 브라우저에서 사용할 수 있는 기호를 표시합니다.

data_coding 필드는 사용할 인코딩을 알려줍니다. 가장 큰 문제는 값 0이 일반적으로 GSM7을 참조하는 사양에서 기본 SMSC 인코딩을 의미한다는 것입니다. Adobe Campaign에서 지원하는 data_coding = 0과 인코딩이 연결된 SMSC 파트너에게 문의하십시오. 다른 data_coding 값은 사양을 따르는 경향이 있지만 SMSC 공급자와 확인하는 유일한 방법은 입니다.

메시지의 최대 크기는 인코딩에 따라 다릅니다. 이 표에서는 모든 관련 정보를 요약합니다.

인코딩 일반적인 data_coding 메시지 크기(문자) 다중 부분 SMS의 부품 크기 사용 가능한 문자
GSM7 0 160년 152년 GSM7 기본 문자 세트 + 확장(확장 문자는 2자로 사용)
라틴-1 3 140년 134년 ISO-8859-1
UCS-2
UTF-16
8 70 67 유니코드(전화마다 다름)

SMPP 외부 계정 매개 변수

SMPP 프로토콜의 각 구현에는 다양한 변형이 있습니다. 호환성 및 적응성을 향상시키기 위해 SMPP 커넥터의 동작을 변경하는 데 많은 설정을 사용할 수 있습니다. 이 섹션에서는 모든 매개 변수와 커넥터에 미치는 영향에 대해 설명합니다.

일반 매개변수 및 공정순서

이 계정에 대한 MTA 인스턴스 제한

SMPP 공급자에 연결할 수 있는 MTA 인스턴스 수로 제한을 설정할 수 있습니다. 이 필드를 선택하면 최대 사용 가능한 MTA 수를 지정할 수 있습니다.

이 옵션을 사용하면 연결 수를 보다 세밀하게 제어할 수 있습니다. 동시 연결을 참조하십시오.

실행 중인 MTA 수보다 큰 값을 설정하면 모든 MTA가 정상적으로 실행됩니다. 이 옵션은 제한일 뿐이며 추가 MTA를 생성할 수 없습니다.

연결 수를 정확히 제어해야 하는 경우(예: 공급자 요구 사항) 현재 배포에 실행 중인 MTA 수가 올바른 경우에도 항상 이 옵션을 설정하는 것이 좋습니다. 이후에 추가 MTA를 추가하는 경우 연결 제한은 계속 적용됩니다.

연결 설정

SMPP 연결 모드

송수신 장치 모드 또는 분리된 송신기+수신기 모드로 연결을 설정합니다. 분리된 송신기+수신기 모드로 전환하는 경우 SMPP 연결 모드 섹션의 설정이 송신기에 적용되며 수신기 연결 설정 섹션의 설정은 수신기에 다른 매개 변수 사용 확인란을 선택한 경우에만 수신기 연결에 적용됩니다.

SMSC 구현 이름

SMSC 구현의 이름을 설정합니다. 공급자의 이름으로 설정해야 합니다. 이 필드에 추가할 내용을 알려면 관리자 또는 게재 가능성 팀에 문의하십시오. 이 필드의 역할은 SR 오류 관리 섹션에 설명되어 있습니다.

서버

연결할 서버의 DNS 이름 또는 IP 주소입니다.

포트

연결할 TCP 포트입니다.

계정

연결의 로그인입니다. BIND PDU의 system_id 필드에 전달됩니다.

암호

SMPP 연결의 암호입니다. BIND PDU의 암호 필드에 전달됩니다.

시스템 유형

BIND PDU의 system_id 필드에 전달된 값입니다. 일부 공급자는 여기에서 특정 값이 필요합니다.

동시 연결

Adobe Campaign Standard에서는 SMS 스레드 및 MTA 프로세스당 연결 수를 정의합니다.
MTA 프로세스 수는 배포에 의해 결정됩니다. 일반적으로 2개의 MTA와 1개의 스레드가 있습니다. smppConnectorThreads 설정을 사용하여 config-instance.xml 파일에서 스레드 수를 변경할 수 있습니다. 일반적으로 컨테이너당 MTA 프로세스가 1개 있고 MTA 프로세스당 스레드가 1개 있습니다.

Adobe Campaign Standard에 대한 총 연결 공식:

  • 총 연결 = 동시 연결 * 스레드 수 * MTA 수

외부 계정에서 동시 연결이 설정되고 config-instance.xml 파일(smppConnectorThreads)에 스레드 수가 설정되며 외부 계정에서 MTA 수를 제한할 수 있습니다.

분리된 transmitter/receiver 모드에서 위의 연결 수는 transmitter/receiver 쌍의 수를 나타냅니다. 이것은 총 연결 수의 두 배가 됨을 의미합니다.

SMPP를 통해 TLS 활성화

TLS를 사용하여 공급자에 연결합니다. 연결이 암호화됩니다. TLS 연결은 OpenSSL 라이브러리에서 관리합니다. OpenSSL에 적용할 수 있는 모든 것은 이 연결에 대해 true입니다.

로그 파일에서 자세한 SMPP 추적을 활성화합니다

이 설정은 모든 SMPP 트래픽을 로그 파일에 덤프합니다. 초기 설정 중에 매개 변수를 조정하는 데 종종 필요합니다. 커넥터를 문제 해결할 때 활성화되고 공급자가 보는 트래픽과 비교해야 합니다.

받는 사람 연결 설정

이 섹션은 분리된 송신기+수신기 모드에서만 볼 수 있습니다.

수신기에 대해 다른 매개 변수 사용

상자를 선택 취소하면 동일한 설정이 전송자와 수신자에 사용됩니다.

상자를 선택하면 연결 설정 섹션의 설정이 전송기에 적용되고 수신기 연결 설정의 설정이 수신기에 적용됩니다.

받는 사람 서버, 포트, 계정, 암호, 시스템 유형

이러한 설정은 송신기+수신기 모드에 있는 경우 수신기에 적용됩니다. 자세한 내용은 위의 내용을 참조하십시오.

SMPP 채널 설정

문자 변환 허용

음역은 누락된 문자와 동등한 문자를 찾는 프로세스입니다. 예를 들어, 프랑스어 "려 강조가 있는 경우) 문자는 GSM 인코딩에서 누락되지만 가독성을 부여하지 않고 "e"로 대체할 수 있습니다.

이 상자를 선택 취소하면 문자열을 그대로 인코딩할 수 없으면 텍스트 인코딩이 실패합니다.

이 상자를 선택하면 텍스트 인코딩이 실패하지 않고 문자열을 대략적인 버전으로 변환하려고 합니다. 일부 문자가 대상 인코딩에 상응하는 문자가 없으면 텍스트 인코딩이 실패합니다.

인코딩 프로세스에 대한 일반적인 설명은 인코딩 설정에 대한 특정 매핑 정의를 참조하십시오.

데이터베이스에 들어오는 MO 저장

활성화되면 수신 MO가 데이터베이스의 inSMS 테이블에 저장됩니다. 모든 워크플로우의 쿼리 활동을 사용하여 이 테이블을 쿼리할 수 있습니다.

SR 처리 중 실시간 KPI 업데이트 활성화

이 옵션이 활성화되면 오류 SR을 받을 때 기본 게재 페이지에서 KPI가 실시간으로 업데이트됩니다.

이러한 단점은 데이터베이스 경합 때문에 성능이 저하될 수 있습니다. 비활성화하면 20분마다 실행되는 syncfromexec 워크플로우에 의해 통계가 업데이트됩니다.

소스 번호

메시지의 기본 소스 주소를 정의합니다. 이 설정은 소스 번호가 게재에서 비어 있는 경우에만 적용됩니다.

기본적으로 소스 번호 필드가 전달되지 않으므로 공급자가 짧은 코드를 대신하여 이 필드를 대체합니다.

이렇게 하면 보낸 사람 주소/ADC 무시 기능이 활성화됩니다.

짧은 코드

계정의 기본 짧은 코드를 나타냅니다. 이 계정에 여러 개의 짧은 코드를 사용하거나 짧은 코드를 알 수 없는 경우 이 필드를 비워 둡니다.

짧은 코드를 지정하는 것은 두 가지 기능에 유용합니다.

  • 소스 번호가 제공되지 않으면 미리 보기에 짧은 코드가 표시됩니다. 휴대전화의 실제 동작을 반영합니다.

  • 자동 차단 목록 회신 기능의 설정은 특정 짧은 코드에 대해서만 사용자를 격리하도록 보냅니다.

소스 톤/NPI, 대상 톤/NPI

TON(Type Of Number) 및 NPI(Numbering Plan Indicator)는 SMPP 3.4 specification (page 117)의 섹션 5.2.5에 설명되어 있습니다. 이러한 값은 공급자의 필요에 따라 설정해야 합니다.

이 매개 변수는 SUBMIT_SM PDU, source_addr_npi, dest_addr_tondest_addr_npi 필드에 있는 그대로 전송됩니다.source_addr_ton

서비스 유형

이 필드는 SUBMIT_SM PDUservice_type 필드에 있는 그대로 전송됩니다. 공급자의 필요에 따라 설정합니다.

처리량 및 시간 초과

이러한 설정은 SMPP 채널의 모든 시간 측면을 제어합니다. 일부 공급자는 메시지 비율, 창 및 다시 시도 시간을 매우 정확하게 제어해야 합니다. 이러한 설정은 공급자의 용량과 해당 계약에 표시된 조건과 일치하는 값으로 설정되어야 합니다.

보내는 창

창은 일치하는 SUBMIT_SM_RESP을(를) 기다리지 않고 보낼 수 있는 SUBMIT_SM PDU의 수입니다.

최대 창이 4인 전송 예:

이 창은 네트워크 링크가 지연 시간이 높을 때 처리량을 늘리는 데 도움이 됩니다. 다음 메시지를 보내기 전에 커넥터가 SUBMIT_SM_RESP을(를) 기다리지 않도록 창 값은 SMS 수와 링크 지연 시간(초)을 곱한 값 이상이어야 합니다.
창이 너무 크면 연결 문제가 발생할 경우 중복 메시지를 보낼 수 있습니다. 또한, 대부분의 제공업체는 윈도우에 매우 엄격한 제한을 두고 한도를 초과하는 메시지를 거절한다.

최적의 전송 창 공식을 계산하는 방법:

  • SUBMIT_SMSUBMIT_SM_RESP 사이의 최대 지연 시간을 측정합니다.

  • 이 값을 최대 MT 처리량에 초 단위로 곱합니다. 이를 통해 최적의 전송 창 값이 제공됩니다.

예: 최대 MT 처리량에 300개의 SMS/s가 설정되어 있고 평균 SUBMIT_SMSUBMIT_SM_RESP 사이에 100ms 지연이 있는 경우, 최적의 값은 300×0.1 = 30입니다.

최대 MT 처리량

연결당 초당 최대 MT 수입니다. 이 설정은 엄격히 적용되며, MTA는 이 제한보다 빠르게 메시지를 푸시하지 않습니다. 이 기능은 정밀한 조절이 필요한 공급자에 유용합니다.

총 처리량 제한을 확인하려면 위 공식에 자세히 나와 있는 대로 이 숫자를 총 연결 수에 곱하십시오.

0은 제한이 없음을 의미하며, MTA는 가능한 빨리 MT를 전송할 것입니다.

최종 아키텍처에서 적절히 벤치마킹하지 않는 한 이 수보다 정확한 처리량을 보장할 수 없으므로 이 설정을 1000으로 유지하는 것이 일반적으로 좋습니다. 1000보다 높은 처리량이 필요한 경우 공급자에게 문의하십시오. 1000MT/s 이상으로 연결되는 연결 수를 늘리는 것이 더 좋을 것입니다.

재연결 전 시간

TCP 연결이 끊기면 커넥터가 이 시간(초)을 기다린 후에 연결을 시도합니다.

MT의 만료 기간

SUBMIT_SM 과 일치하는 SUBMIT_SM_RESP 사이의 시간 제한. RESP을(를) 제 시간에 받지 못하면 메시지가 실패로 간주되고 MTA의 글로벌 다시 시도 정책이 적용됩니다.

바인딩 시간 제한

TCP 연결 시도와 BIND_*_RESP 응답 사이의 시간 제한. 연결이 시간 초과되면 Adobe Campaign 커넥터에 의해 연결이 닫히고 다시 시도하기 전에 다시 연결하기 전에 시간이 대기합니다.

enquire_link 은 연결을 유지하기 위해 전송되는 특별한 종류의 PDU입니다. 이 기간은 초 단위입니다. Campaign 커넥터는 대역폭을 절약하기 위해 연결이 유휴 상태일 때만 enquire_link을 보냅니다. 이 기간 후 RESP를 두 번 받지 못하면 연결이 끊어진 것으로 간주되고 다시 연결 프로세스가 트리거됩니다.

SMSC 세부 사항

이러한 설정은 Adobe Campaign 커넥터를 대부분의 SMPP 구현 특성에 맞게 조정하는 고급 설정입니다.

인코딩의 특정 매핑 정의

텍스트 인코딩에 대한 자세한 내용은 SMS 텍스트 인코딩 섹션을 참조하십시오.

이 설정을 사용하면 지정과 다른 사용자 지정 인코딩 매핑을 정의할 수 있습니다. 인코딩 목록과 해당 data_coding 값을 선언할 수 있습니다.

MTA는 목록의 첫 번째 인코딩을 사용하여 인코딩을 시도합니다. 실패하면 목록의 다음 인코딩을 사용하려고 합니다. 메시지를 인코딩하는 데 인코딩할 수 없는 경우 오류가 발생합니다. 인코딩이 발견되면 MTA는 인코딩된 텍스트와 표에 지정된 값으로 설정된 SUBMIT_SM PDU 필드를 만듭니다.data_coding

표의 항목 순서는 중요합니다. 인코딩은 위쪽에서 아래쪽으로 시도됩니다. 가장 저렴하거나 가장 권장되는 인코딩을 목록 맨 위에 놓은 다음, 더 많은 비싼 인코딩을 추가해야 합니다.

UCS-2는 Adobe Campaign에서 지원되는 모든 문자를 인코딩할 수 있고 UCS-2 SMS의 최대 길이가 훨씬 작으므로 실패하지 않습니다. 70자만

이 설정을 사용하여 매핑 테이블에서 한 줄만 선언하여 특정 인코딩을 항상 사용하도록 할 수도 있습니다.

확인란을 선택하지 않을 때 사용되는 기본 매핑은 다음 테이블과 같습니다.

data_coding 인코딩
0 GSM
9 UCS-2

이는 MTA가 GSM에서 메시지를 인코딩하려고 함을 의미합니다. 성공하면 data_coding 이 0으로 설정된 상태로 보냅니다.

메시지를 GSM으로 인코딩할 수 없는 경우 UCS-2로 인코딩되고 data_coding을 8로 설정합니다.

message_payload 활성화

선택 취소하면 긴 SMS가 MTA로 분할되고 UGH를 사용하여 여러 SUBMIT_SM PDU로 전송됩니다. 이 메시지는 UGH 데이터에 따라 휴대폰에 의해 다시 작성됩니다.

이 옵션을 선택하면 긴 SMS가 하나의 SUBMIT_SM PDU에 전송되고 message_payload 옵션 필드에 텍스트가 표시됩니다. 자세한 내용은 SMPP 사양을 참조하십시오.

이 기능이 활성화되어 있으면 Adobe Campaign에서 SMS 부분을 개별적으로 카운트할 수 없습니다. 모든 메시지는 한 부분으로 전송됩니다.

전체 전화 번호 보내기

이 확인란을 선택하지 않으면 전화 번호의 자릿수만 공급자에게 전송됩니다( SUBMIT_SM 필드의 destination_addr 필드). SMPP의 TON 및 NPI 필드로 대체되는 국제 번호 지표(일반적으로 + 접두어)가 대체되므로 이 동작은 기본 동작입니다.

확인란을 선택하면 전화 번호가 사전 처리 및 잠재적 공백 없이 그대로 전송됩니다. + 접두사 또는 파운드/해시/별 기호는 + 기호로 전송됩니다.

이 기능은 자동 회신 기능 동작에도 차단 목록 영향을 줍니다. 확인란을 선택하지 않으면 SMPP 프로토콜 자체에 의해 전화 번호에서 제거되는 + 접두사를 보완하기 위해 격리 테이블에 삽입되는 전화 번호에 + 접두사가 추가됩니다.

TLS 인증서 확인 건너뛰기

TLS가 활성화되어 있으면 모든 인증서 검사를 건너뜁니다.

이 옵션을 선택하면 연결이 더 이상 안전하지 않으므로 프로덕션에서 활성화되지 않습니다.

이 메서드는 디버깅이나 테스트 목적으로 유용할 수 있습니다.

바인딩 톤/NPI

SMPP 3.4 사양 (117페이지)의 섹션 5.2.5에 설명된 TON(번호 유형) 및 NPI(번호 지정 계획 표시기) 이러한 값은 공급자가 필요로 하는 대로 설정해야 합니다.

BIND PDU의 addr_tonaddr_npi 필드에 있는 그대로 전송됩니다.

주소 범위

BIND PDU의 address_range 필드에 있는 그대로 전송됩니다. 이 값은 공급자가 필요한 대로 설정해야 합니다.

잘못된 ID 승인 수입니다.

단일 SR에 대해 보낼 수 있는 메시지 ID가 잘못된 DELIVER_SM_RESP 수를 제한합니다.

이 옵션은 문제 해결 목적으로만 작업 영역으로 사용하고 일반 조건에서 0으로 설정해야 합니다.

Fox 예: 를 2로 설정할 때

  • 공급자가 ID가 "1234"인 SR(DELIVER_SM)을 보냅니다.

  • 데이터베이스에서 ID "1234"를 찾을 수 없습니다.

  • 커넥터는 해당 ID에 대해 1개의 잘못된 ID 오류를 계산하므로 "메시지 ID가 잘못되었습니다" 오류 코드(일반 동작)와 함께 DELIVER_SM_RESP를 보냅니다.

  • 공급자가 ID가 "1234"인 동일한 SR을 다시 시도합니다.

  • 데이터베이스에서 ID "1234"를 찾을 수 없습니다.

  • 커넥터는 해당 ID에 대해 2 잘못된 ID 오류를 계산하므로 올바르게 처리되지 않았더라도 DELIVER_SM_RESP "OK"를 보냅니다.

  • 이 기능은 잘못된 SR 블록이 메시지를 처리할 수 없는 경우 공급자 측에서 SR 버퍼를 플러시하기 위한 것입니다.

이 필드를 0으로 설정하면 메시지 ID가 잘못된​이 항상 반환되는 메커니즘이 비활성화되며, 이는 일반적인 동작입니다.

이 필드를 1로 설정하면 ID가 유효하지 않은 경우에도 커넥터가 항상 "확인"에 응답합니다. 문제 해결을 위해 감독 하에 1로 설정해야 하며, 예를 들어 공급자 측 문제로부터 복구하려면 최소 시간 동안 설정해야 합니다.

SR에서 ID의 추출 ex

SR 형식은 SMPP 프로토콜 사양에서 엄격하게 적용되지 않습니다. 이는 사양의 부록 B(167페이지)에 설명된 권장 사항일 뿐입니다. 일부 SMPP 구현자는 이 필드의 형식을 다르게 지정하므로 Adobe Campaign에서 올바른 필드를 추출하는 방법이 필요합니다.

기본적으로 id: 뒤에 최대 10자의 영숫자를 캡처합니다.

regex에는 괄호 안에 포함된 부분이 있는 정확히 하나의 캡처 그룹이 있어야 합니다. 괄호는 ID 부분을 둘러싸야 합니다. regex 형식은 PCRE입니다.

이 설정을 조정할 때에는 잘못된 트리거를 방지하기 위해 가능한 한 많은 컨텍스트를 포함해야 합니다. 표준에 id: 같은 특정 접두사가 있는 경우 regex에 포함하십시오. 단어 구분 기호(\b)도 단어 중간에 텍스트를 캡처하지 않도록 가능한 한 많이 사용합니다.

regex에 충분한 컨텍스트를 포함하지 않으면 다음과 같은 작은 보안 결함이 발생할 수 있습니다. 메시지의 실제 내용은 SR에 포함될 수 있습니다. 컨텍스트(예: UUID)가 없는 특정 ID 형식만 일치시키면 실제 텍스트 컨텐츠를 구문 분석하는 것일 수 있습니다(예: ID 대신 텍스트 필드에 포함된 UUID).

성공/오류 상태를 확인하기 위해 적용된 Regex

알 수 없는 상태/오류 필드 조합이 있는 메시지가 발생하면 시작 필드에 이러한 regex가 적용되어 SR이 성공인지 오류인지를 확인합니다. 이러한 레지스트리 값과 일치하지 않는 시작 값이 있는 SR은 무시됩니다.

기본적으로 DELIV(으)로 시작하는 시작 값(예: 부록 BDELIVRD은 성공적으로 배달된 것으로 간주되며 오류와 일치하는 모든 상태 값으로 간주됩니다(예: ). REJECTED, UNDELIV 는 오류로 간주됩니다.

MT 확인의 ID 형식

이는 SUBMIT_SM_RESP PDUmessage_id 필드에 반환되는 ID의 형식을 나타냅니다.

  • 수정 안 함: ID는 데이터베이스에 ASCII 인코딩된 텍스트로 그대로 저장됩니다. 사전 처리 또는 필터링이 발생하지 않습니다.

  • 십진수: ID는 ASCII 형식의 십진수여야 합니다. 이 설정을 사용하면 선행 및 후행 공백 및 선행 0이 제거됩니다.

  • 16진수: ID는 선행 0x와 후행 h가 없는 ASCII 형식의 16진수 숫자여야 합니다. 그런 다음 ID가 데이터베이스에 저장되기 전에 십진수로 변환됩니다.

  • 16진수 문자열: ID는 16진수로 인코딩된 바이트 문자열인 ASCII 인코딩된 텍스트여야 합니다. 예를 들어 PDU에서 0x34 0x31 0x34 0x32 0x34 0x33을 찾을 수 있습니다. 이 값은 ASCII "414243"으로 변환됩니다. 이 문자열은 16진수 바이트 문자열로 디코딩되고 결과적으로 "ABC"를 가져옵니다. ID "ABC"를 데이터베이스에 저장합니다.

SR의 ID 형식

이는 SR에서 ID의 Extraction regex에 의해 캡처된 ID의 형식을 나타냅니다. 값은 위의 MT의 형식과 같은 의미와 동작이 같습니다.

선택적 필드에 SR ID 또는 오류 코드가 있습니다.

이 확인란을 선택하면 선택적 필드의 콘텐츠가 위의 레지스트리에서 처리한 텍스트에 추가됩니다. 텍스트에는 0xTAG:VALUE 형식, 0xTAG 형식이 태그의 4자리 16진수 값(예: )이 있습니다. 0x002E

예를 들어 receipted_message_id 필드에서 ID를 캡처할 수 있습니다. 이 경우 이 확인란을 활성화하면 다음 텍스트가 해당 상태에 추가됩니다.

0x001E:05e3299e-8d37-49d0-97c6-8e4fe60c7739

이 예에서 0x001E는 선택적 필드의 태그이고 UUID는 필드의 값입니다.

이제 이 값을 캡처하기 위해 SR 필드에서 ID의 추출 식에서 다음 regex를 설정할 수 있습니다.

\b0x001E:([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\b
중요

텍스트(ASCII/UTF-8) 값이 있는 선택적 필드만 캡처할 수 있습니다. 특히 현재 regex 시스템에서는 이진 필드를 안정적으로 캡처할 수 없습니다.

텍스트 필드의 SR ID 또는 오류 코드

이 옵션을 선택하면 SR의 상태 텍스트를 처리하는 동안 텍스트 필드가 유지됩니다.

이 기능은 공급자가 ID 또는 상태와 같은 중요한 데이터를 이 필드에 배치하는 경우에 유용합니다. 일반적으로 이 필드는 ASCII가 아닌 인코딩이 포함된 텍스트를 포함할 수 있으며 정규 처리를 방해할 수 있으므로 안전하게 삭제할 수 있습니다.

이 옵션을 활성화하면 SR 필드에 있는 ID의 Extraction 정규식이 충분하지 않은 경우 매우 작은 보안 결함이 발생할 수 있습니다. Text 필드의 컨텐츠는 ID로 구문 분석될 수 있으며, 공격자는 이 컨텐츠를 사용하여 위조 ID를 주입할 수 있으며, 이로 인해 서비스 거부 상황이 일부 발생할 수 있습니다.

서비스 ID 태그

사용자 지정 TLV를 추가할 수 있습니다. 이 필드는 태그 부분을 설정합니다. 이 값은 게재의 고급 매개 변수에서 서비스 또는 프로그램 ID 값에서 게재당 사용자 지정할 수 있습니다.

이 설정은 메시지당 하나의 TLV 옵션만 추가할 수 있습니다.

노트

21.1 릴리스부터 두 개 이상의 선택적 매개 변수를 추가할 수 있습니다. 자세한 정보는 이 섹션을 참조하십시오.

MO에 자동 답장 보내기

이 기능을 사용하면 MO에 빠르게 텍스트를 회신하고 단문 코드마다로 전송하는 것을 처리할 수 차단 목록 있습니다.

키워드짧은 코드 열은 자동 답장을 트리거하는 조건을 정의합니다. 두 필드가 모두 일치하면 MO가 전송되고 추가 작업이 트리거됩니다. 와일드카드를 지정하려면 필드를 비워 두어야 합니다. 키워드는 MO 텍스트의 첫 번째 영숫자 단어와 일치하고 구두점과 선행 공백을 무시합니다. 즉, 키워드 필드는 공백을 포함할 수 없으며 단일 단어여야 합니다.

키워드 설정은 접두사입니다. 예를 들어 "AD"를 지정하는 경우 "AD", "ADAPT" 및 "ADOBE"과 일치합니다. 공통 접두사가 있는 키워드가 여러 개 있는 경우 키워드가 위에서 아래로 처리되므로 순서에 주의를 기울여야 합니다.

회신 열은 응답할 텍스트입니다. 이 필드에는 개인화를 사용할 수 없습니다. 이 필드를 비워 두면 메시지가 회신되지 않지만 추가 작업이 트리거됩니다.

추가 작업 열은 키워드짧은 코드​가 모두 일치하는 경우 빈 짧은 코드가 모든 짧은 코드와 일치하는 경우 추가 작업을 제공합니다. 격리에 보내거나 격리에서 제거할 수 있습니다. 텍스트에 회신하지 않는 값을 지정합니다. 추가 작업​을 지정하지만 회신 필드를 비워 두면 작업이 실행되지만 응답이 전송되지 않습니다. 격리는 지정된 짧은 코드에만 적용되거나, 필드가 비어 있는 경우 모든 짧은 코드에만 적용됩니다.

중요

전체 전화 번호 보내기 설정은 자동 회신 격리 메커니즘의 동작에 영향을 줍니다. 전체 전화 번호 전송을 선택하지 않으면 격리된 전화 번호에 더하기 기호("+")가 접두사로 추가되어 국제 전화 번호 형식과 호환됩니다.

테이블의 모든 항목은 하나의 규칙이 일치할 때까지 지정된 순서로 처리됩니다. 여러 규칙이 MO와 일치하면 가장 높은 규칙만 적용됩니다.

자동 회신 선택적 매개 변수(TLV)

21.1 릴리스부터 자동 회신 MT에 선택적 매개 변수를 추가할 수 있습니다. SMPP 사양(페이지 131)의 섹션 5.3에 설명된 대로 응답 SUBMIT_SM PDU에 선택적 TLV 매개 변수로 추가됩니다.

선택적 매개 변수에 대한 자세한 내용은 이 섹션을 참조하십시오.

SMS 게재 템플릿 매개 변수

일부 매개 변수는 게재 템플릿별로 설정할 수 있습니다.

From 필드

이 필드는 선택 사항입니다. ADC(발신자 주소)를 재정의할 수 있습니다. 이 필드의 콘텐츠는 SUBMIT_SM PDUsource_addr 필드에 배치됩니다.

필드는 SMPP 사양에 따라 21자로 제한되지만 일부 공급자는 더 긴 값을 허용할 수 있습니다. 또한 길이, 콘텐츠, 허용되는 문자 등 일부 국가에서는 매우 엄격한 제한이 적용될 수 있습니다.

게재 매개 변수

메시지당 최대 SMS 수

이 설정은 메시지 페이로드 설정이 비활성화된 경우에만 작동합니다. 자세한 내용은 이 페이지를 참조하십시오. 메시지에 이 값보다 SMS가 더 많은 경우 오류가 트리거됩니다.

SMS 프로토콜은 SMS를 255부분으로 제한하지만 일부 휴대폰은 10개 이상의 부분과 함께 긴 메시지를 만드는 데 어려움을 겪고 있으며, 그 제한은 정확한 모델에 따라 다릅니다. 메시지 한 장당 5개 이상을 넘지 않는 것이 좋습니다.

Adobe Campaign에서 개인화된 메시지가 작동하는 방식으로 인해 메시지의 크기가 달라질 수 있습니다. 많은 양의 긴 메시지가 있으면 전송 비용이 늘어날 수 있습니다.

전송 모드

이 필드는 전송할 SMS 종류를 나타냅니다. 일반 또는 플래시 메시지로, 모바일 또는 SIM 카드에 저장됩니다.

이 설정은 SUBMIT_SM PDUdest_addr_subunit 선택적 필드에서 전송됩니다.

  • ​지정되지 않음이 PDU에 옵션 필드를 전송하지 않습니다.

  • ​값을 1로 설정합니다. 이 플러그인은 모바일에서 튀어나오고 메모리에 저장되지 않는 플래시 메시지를 보냅니다.

  • ​값은 0으로 설정됩니다. 일반 메시지를 보냅니다.

  • 모바일 집합에 저장 값을 2로 설정합니다. 휴대폰에 SMS를 내부 메모리에 저장하라고 지시합니다.

  • 종료에 저장하면 값이 3으로 설정됩니다. 휴대전화에 SMS를 심카드에 저장하도록 되어 있다.

유효 기간

유효 기간은 SUBMIT_SM PDUvalidity_period 필드에 전송됩니다. 날짜는 항상 절대 UTC 시간 형식으로 지정됩니다(날짜 필드는 "00+"로 끝남).

SMPP 선택적 매개 변수(TLV)

21.1 릴리스부터 이 게재에 대해 전송되는 모든 MT에 여러 선택적 매개 변수를 추가할 수 있습니다. 이러한 선택적 매개 변수는 SMPP 사양(페이지 131)의 섹션 5.3에 설명된 대로 응답의 SUBMIT_SM PDU에 추가됩니다.

테이블의 각 행은 선택적 매개 변수를 나타냅니다.

  • 매개 변수: 매개 변수에 대한 설명입니다. 공급자에게 전송되지 않았습니다.
  • 태그 Id: 선택적 매개 변수의 태그입니다. 0x1234 형식을 사용하여 올바른 16진수여야 합니다. 값이 올바르지 않으면 게재 준비 오류가 발생합니다.
  • : 선택적 필드의 값입니다. 공급자가 공급자에게 전송될 때 UTF-8로 인코딩됩니다. 인코딩 형식은 변경할 수 없으며 이진 값을 전송하거나 UTF-16 또는 GSM7과 같은 다른 인코딩을 사용할 수 없습니다.

선택 사항 매개 변수의 외부 계정에 정의된 서비스 태그 Id​와 동일한 태그 Id​가 있는 경우 이 표에 정의된 값이 우선합니다.

SMPP 커넥터

화살표는 데이터 흐름을 나타냅니다.

여기서 가장 중요한 것은 여러 SMPP 커넥터 스레드가 있다는 것입니다. 이러한 스레드는 모두 동일하며 동일한 구성을 공유합니다. 따라서 연결 수에 스레드 수가 항상 곱해집니다.

구성 파일을 변경해야 하므로 고객이 스레드 수를 변경할 수 없습니다.

SMPP 커넥터의 동작 설명

일치하는 MT, SR 및 브로드로그 항목

Adobe Campaign에서 메시지는 브로드로그 항목입니다. Adobe Campaign Standard에서 외부 커넥터는 작업 브로드로그 테이블에 대해서만 알고 있어야 합니다. nmsBroadLogExec 워크플로우는 브로드로그 항목을 특정 타겟팅 차원(nmsBroadLogXXX)에 다시 복사해야 합니다.

안타깝게도 SMPP에서는 메시지와 함께 ID를 보낼 수 없습니다. 공급자는 각 MT에 MT ID를 제공한 다음 동일한 ID를 하나 이상의 SR에 제공합니다.

공급자가 제공한 ID는 nmsBroadLogExec 테이블의 sProviderId 열에 저장됩니다. SR은 MT가 성공적으로 전송되고 인식되면 항상 도착하지만, Adobe Campaign에서 뛰어난 SR로 알려져 있으며, 때때로 순서가 잘못될 수 있습니다. 처리 스레드는 전체 정보가 도착할 때까지 이러한 SR을 일시적으로 RAM에 저장합니다.

MT가 확인되면(SUBMIT_SM_RESP) 데이터베이스에서 sProviderId이 즉시 업데이트됩니다.

각 SR은 SMPP 처리 스레드에 의해 개별적으로 처리됩니다. 이 프로세스는 의사 동기입니다. 외부에서는 동기식으로 보이지만 이벤트 기반 구현을 통해 내부적으로 구현됩니다. 브로드로그가 성공적으로 업데이트된 경우에만 SR이 인식되며 오류가 발생하면 SR이 거부됩니다.

각 SR에 적용되는 프로세스는 다음과 같습니다.

  • Regex를 사용하여 SR의 ID가 추출됩니다.
  • ID가 nmsBroadLogExec:sProviderId에서 검색됩니다.
  • 상태 + 오류 코드는 레지엑스를 사용하여 SR에서 추출됩니다.
  • 브로드로그 메시지 메커니즘은 오류를 식별하고 브로드로그 메시지 ID를 찾는 데 사용됩니다.
  • 브로드로그는 위의 모든 정보로 업데이트됩니다.
  • SR이 인식됩니다.

위의 단계를 검사하려면 자세한 SMPP 추적 활성화​가 있어야 모든 단계가 올바르게 적용되었는지 수동으로 확인할 수 있습니다. Adobe Campaign이 새 SMPP 공급자에 연결할 때마다 필요합니다.

라이브로 전환하기 전에

이 검사 목록은 라이브로 전환하기 전에 확인해야 하는 항목의 목록을 제공합니다. 설정이 완료되지 않으면 많은 문제가 발생할 수 있습니다.

외부 계정 충돌 확인

이전 SMS 외부 계정이 없는지 확인합니다. 테스트 계정을 비활성화한 상태로 두면 운영 시스템에서 다시 활성화되고 잠재적인 충돌이 발생할 위험이 있습니다.

이 계정에 연결된 다른 인스턴스가 없는지 확인합니다. 특히 스테이지 환경이 계정에 연결되지 않았는지 확인합니다. 일부 공급자는 이 기능을 지원하지만, Adobe Campaign 측뿐만 아니라 공급자 플랫폼 모두에서 매우 구체적인 구성이 필요합니다.

동일한 Adobe Campaign 인스턴스에 동일한 공급자에 연결하는 여러 계정이 있어야 하는 경우 공급자에 문의하여 해당 계정이 이러한 계정 간에 실제로 연결을 구분하는지 확인하십시오. 동일한 로그인을 사용하는 여러 계정이 있는 경우 추가 구성이 필요합니다.

확인하는 동안 자세한 SMPP 추적을 활성화합니다

확인하는 동안 항상 자세한 SMPP 추적을 활성화해야 합니다.
로그를 직접 확인할 수 없어도 지원 센터에서 도움을 요청할 수 있습니다.

SMS 테스트

  • 모든 종류의 문자로 SMS를
    보내기GSM이 아닌 문자 또는 ASCII가 아닌 문자로 SMS를 보내야 하는 경우 다양한 문자가 포함된 메시지를 가능한 한 많이 보내십시오. 사용자 지정 문자 매핑 테이블을 설정하는 경우 가능한 모든 항목에 대해 하나 이상의 SMS를 전송하십시오
    data_coding values.

  • SR이 제대로
    처리되었는지 확인SMS는 게재 로그에서 수신됨으로 표시되어야 합니다. 게재 로그는 성공적이며 다음과 같습니다.

게재 공급자 이름을 변경했는지 확인합니다. 게재 로그에는 다음을 포함하지 않아야 합니다 SR yourProvider stat=DELIVRD err=000|#MESSAGE
게재 공급자 이름을 변경했는지 확인합니다. 게재 로그는 프로덕션 환경에서 SR 일반​을 포함하지 않아야 합니다.

  • MO가
    처리되었는지 확인MO(자동 회신, 데이터베이스에 MO 저장 등)를 처리해야 하는 경우 몇 가지 테스트를 해 보세요. 모든 자동 회신 키워드에 대해 몇 개의 SMS를 보내고, 몇 초 이내에 회신이 충분한지 확인합니다.
    로그에서 Adobe Campaign이 성공적으로 답장하는지 확인
    DELIVER_SM_RESP (command_status=0).

PDU 확인

메시지가 성공적일 경우에도 PDU 형식이 제대로 지정되었는지 확인하는 것이 중요합니다.

이 단계는 이전에 Adobe Campaign에 연결되어 있지 않은 공급자에 연결할 때 필요합니다.

바인딩

BIND_* PDUs이(가) 올바르게 전송되었는지 확인합니다. 확인해야 할 가장 중요한 사항은 공급자가 항상 성공한 BIND_*_RESP PDUs(command_status = 0)을 반환한다는 것입니다.

BIND_* PDU이 너무 많지 않은지 확인하십시오. 너무 많은 경우 연결이 불안정하다는 것을 나타낼 수 있습니다. 자세한 내용은 불안정한 연결 문제 섹션을 참조하십시오.

연결이 유휴 상태일 때 ENQUIRE_LINK PDUs가 정기적으로 교환되는지 확인합니다.

SUBMIT_SM / DELIVERY_SM

메시지를 보낸 다음 로그에서 해당 SUBMIT_SM, SUBMIT_SM_RESP, DELIVER_SMDELIVER_SM_RESP PDU를 검색합니다.

SUBMIT_SM PDU 사용:

  • data_coding 이 올바른지, 기본적으로 0인지 확인하십시오.
  • short_message이(가) 올바르게 인코딩되어 있는지 확인하십시오. 여러 인코딩을 지원하는 16진수 변환기를 사용하여 디코딩해 보십시오.

SUBMIT_SM_RESP PDU 사용:

  • 성공, command_status = 0인지 확인합니다.
  • 본문에는 올바른 형식의 ID와 '0'바이트가 뒤따르는지 확인하십시오.

DELIVER_SM PDU 사용:

  • 16진수 short_message 필드를 디코딩합니다.
  • SR에서 ID의 Extraction regex에 정의된 regex가 정확히 하나의 캡처 그룹을 반환하고 메시지에 전체 ID를 캡처하는지 regex 확인 도구를 확인합니다.
  • 추출된 ID가 SUBMIT_SM_RESP의 ID와 일치하는지 확인합니다.
  • SR에서 상태의 Extraction regex에 정의된 regex가 stat 필드의 내용을 반환하는지 확인합니다.
  • SR에서 오류의 Extraction regex에 정의된 regex가 오류 필드의 내용을 반환하는지 확인합니다.

DELIVER_SM_RESP PDU 사용:

  • DELIVER_SM PDU 을 받은 후(일반적으로 1초 미만) 빠르게 전송되었는지 확인합니다.
  • 성공, command_status = 0인지 확인합니다.

모든 것이 정상인지 공급자에게 문의하십시오

SMS가 성공하더라도 공급자에게 문의하여 모든 것이 제대로 작동하는지 확인하십시오.

자세한 SMPP 추적 비활성화

모든 검사가 완료되면 마지막 작업은 너무 많은 로그를 생성하지 않도록 자세한 SMPP 추적 비활성화​입니다. 프로덕션 시스템에서도 문제 해결 목적으로 다시 활성화할 수 있습니다.

이 페이지에서는