Amazon Pinpoint의 SMS 이벤트 데이터 스트림
프로젝트에 SMS 채널을 활성화한 경우, Amazon Pinpoint는 프로젝트의 SMS 메시지 전송에 대한 이벤트 데이터를 스트리밍할 수 있습니다. 이벤트 스트리밍을 설정한 후 Amazon Pinpoint는 설정 중에 지정한 대상에서 이벤트 데이터를 검색하여 볼 수 있도록 합니다. 이벤트 스트리밍 설정 방법에 대한 자세한 내용은 Amazon Kinesis 또는 Amazon Data Firehose를 통해 앱 이벤트 데이터를 스트리밍하도록 Amazon Pinpoint 설정 섹션을 참조하세요.
참고
통신사에서 생성한 SMS 이벤트는 수신될 때까지 최대 72시간이 걸릴 수 있으며, 아웃바운드 메시지 배달의 지연 여부를 판단하는 데 사용해서는 안 됩니다. 72시간이 지난 후에도 Amazon Pinpoint가 통신사로부터 최종 이벤트를 수신하지 않은 경우, 해당 메시지가 어떻게 되었는지 알 수 없으므로 서비스는 자동으로 UNKNOWN record_status를 반환합니다.
SMS 이벤트 예
SMS 이벤트에 대한 JSON 객체에는 다음 예제의 데이터가 포함되어 있습니다.
{ "event_type": "_SMS.SUCCESS", "event_timestamp": 1553104954322, "arrival_timestamp": 1553104954064, "event_version": "3.1", "application": { "app_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6", "sdk": {} }, "client": { "client_id": "123456789012" }, "device": { "platform": {} }, "session": {}, "attributes": { "sender_request_id": "565d4425-4b3a-11e9-b0a5-example", "campaign_activity_id": "cbcfc3c5e3bd48a8ae2b9cb41example", "origination_phone_number": "+12065550142", "destination_phone_number": "+14255550199", "record_status": "DELIVERED", "iso_country_code": "US", "treatment_id": "0", "number_of_message_parts": "1", "message_id": "1111-2222-3333", "message_type": "Transactional", "campaign_id": "52dc44b35c4742c98c5935269example" }, "metrics": { "price_in_millicents_usd": 645.0 }, "awsAccountId": "123456789012" }
SMS 이벤트 속성
이 섹션에서는 SMS 메시지를 보낼 때 Amazon Pinpoint에서 생성하는 이벤트 스트림 데이터의 이전 예제에 포함된 속성을 정의합니다.
속성 | 설명 |
---|---|
event_type |
이벤트의 유형입니다. 가능한 값은 다음과 같습니다.
|
event_timestamp |
이벤트가 보고된 시간입니다(밀리초 단위 Unix 시간). |
arrival_timestamp |
Amazon Pinpoint에서 이벤트가 수신된 시간입니다(밀리초 단위 Unix 시간). |
event_version |
이벤트 JSON 스키마의 버전입니다. 작은 정보스키마 업데이트에 대응하여 언제 애플리케이션을 업데이트해야 하는지 알 수 있도록 이벤트 처리 애플리케이션에서 이 버전을 확인합니다. |
application |
이벤트와 관련된 Amazon Pinpoint 프로젝트에 대한 정보입니다. 자세한 내용은 애플리케이션 표를 참조하십시오. |
client |
이벤트를 보고한 디바이스에 설치된 앱 클라이언트에 대한 정보입니다. 자세한 내용은 클라이언트 표를 참조하십시오. |
device |
이벤트를 보고한 디바이스에 대한 정보입니다. 자세한 내용은 디바이스 표를 참조하십시오. SMS 이벤트의 경우 이 객체가 비어 있습니다. |
session |
SMS 이벤트의 경우 이 객체가 비어 있습니다. |
attributes |
이벤트와 연결된 속성입니다. 앱 중 하나에서 보고한 이벤트의 경우 이 객체에는 앱에서 정의한 사용자 지정 속성이 포함될 수 있습니다. 캠페인을 전송할 때 생성되는 이벤트의 경우 이 객체에는 캠페인과 연결된 속성이 포함됩니다. 트랜잭션 메시지를 전송할 때 생성되는 이벤트의 경우 이 객체에는 메시지 자체와 관련된 정보가 포함됩니다. 자세한 내용은 속성 표를 참조하십시오. |
metrics |
이벤트와 연결된 추가 지표입니다. 자세한 내용은 지표 표를 참조하십시오. |
awsAccountId |
메시지를 전송하는 데 사용된 AWS 계정의 ID입니다. |
애플리케이션
이벤트와 연결된 Amazon Pinpoint 프로젝트와 이벤트 보고에 사용된 SDK(해당하는 경우)에 대한 정보를 포함합니다.
속성 | 설명 |
---|---|
app_id |
이벤트를 보고한 Amazon Pinpoint 프로젝트의 고유 ID입니다. |
sdk |
이벤트를 보고하는 데 사용된 SDK입니다. Amazon Pinpoint API를 직접 호출하거나 Amazon Pinpoint 콘솔을 사용하여 트랜잭션 SMS 메시지를 전송하는 경우 이 객체는 비어 있습니다. |
속성
이벤트와 연결된 속성에 대한 정보를 포함합니다.
속성 | 설명 |
---|---|
sender_request_id |
SMS 메시지 전송 요청과 연결된 고유 ID입니다. |
campaign_activity_id |
캠페인 내 활동의 고유 ID입니다. |
origination_phone_number |
메시지를 전송한 전화 번호입니다. |
destination_phone_number |
메시지 전송을 시도한 전화 번호입니다. |
record_status |
메시지 상태에 대한 추가 정보입니다. 가능한 값은 다음과 같습니다.
|
iso_country_code |
수신자의 전화 번호와 관련된 국가 이며, ISO 3166-1 alpha-2 형식으로 표시됩니다. |
treatment_id |
메시지가 A/B 캠페인으로 전송된 경우 메시지 처리의 ID입니다. |
treatment_id |
A/B 테스트 캠페인을 사용하여 메시지를 전송한 경우 이 값은 메시지의 처리 번호를 나타냅니다. 트랜잭션 SMS 메시지의 경우 이 값은 0입니다. |
number_of_message_parts |
Amazon Pinpoint가 메시지를 전송하기 위해 생성한 메시지 부분 수입니다. 일반적으로 SMS 메시지는 160개의 GSM-7 문자 또는 67개의 비GSM 문자만 포함할 수 있지만 이러한 한도는 국가 에 따라 다를 수 있습니다. 이 한도를 초과하는 메시지를 전송하면 Amazon Pinpoint에서 자동으로 메시지를 더 작게 분할합니다. 전송하는 메시지 부분 수에 따라 요금이 청구됩니다. |
message_id |
메시지를 수락할 때 Amazon Pinpoint에서 생성하는 고유 ID입니다. |
message_type |
메시지 유형. 가능한 값은 Promotional 및 Transactional입니다. 캠페인을 생성할 경우 또는 Amazon Pinpoint API에서 SendMessages 작업을 사용하여 트랜잭션 메시지를 전송할 경우 이 값을 지정합니다. |
campaign_id |
메시지를 전송한 Amazon Pinpoint 캠페인의 고유 ID입니다. |
customer_context |
Amazon Pinpoint SendMessages 작업에서 전송된 |
클라이언트
이벤트를 보고한 디바이스에 설치된 앱 클라이언트에 대한 정보를 포함합니다.
속성 | 설명 |
---|---|
client_id |
앱에서 생성된 이벤트의 경우 이 값은 디바이스에 설치된 앱 클라이언트의 고유 ID입니다. 이 ID는 AWS Mobile SDK for iOS 및 AWS Mobile SDK for Android에 의해 자동으로 생성됩니다. 캠페인 및 트랜잭션 메시지를 전송할 때 생성되는 이벤트의 경우 이 값은 메시지를 전송한 엔드포인트의 ID와 같습니다. |
cognito_id |
앱이 사용하는 Amazon Cognito 자격 증명 풀에서 앱 클라이언트에 지정된 고유 ID입니다. |
장치
이벤트를 보고한 디바이스에 대한 정보를 포함합니다.
속성 | 설명 |
---|---|
locale |
디바이스 로캘입니다. |
make |
디바이스 제조사입니다(예: Apple 또는 Samsung ). |
model |
디바이스 모델입니다(예: iPhone ). |
platform |
디바이스 플랫폼입니다(예: ios 또는 android ). |
지표
이벤트와 연결된 지표에 대한 정보를 포함합니다.
속성 | 설명 |
---|---|
price_in_millicents_usd |
메시지 전송에 대해 청구된 금액입니다. 이 가격은 미국 센트의 1/1000로 표시됩니다. 예를 들어 이 속성의 값이 참고이 속성은 |