# Pushwoosh에서 이벤트 이해하기

**이벤트(Events)**는 사용자가 앱에서 수행하는 다양한 작업을 기록하기 위한 것입니다. 국가, 기기 모델 또는 설치 데이터와 같은 플랫 데이터를 저장하는 태그(Tags)와 달리, 이벤트 데이터는 기록적으로 저장됩니다. 이를 통해 정적인 기기 정보가 아닌 사용자 행동 기록이 생성됩니다. 이벤트에 대한 모든 컨텍스트 정보는 속성과 그 값으로 전달될 수 있습니다.

이 데이터가 올바르게 수집되면 다음 용도로 사용할 수 있습니다:

* 행동 기반 메시지를 트리거합니다.
* 앱에서 특정 작업을 수행하는 사용자 세그먼트를 구축합니다.
* 사용자 플로우, 사용량 지표 및 기타 통계 데이터에 대한 인사이트를 얻습니다.

## 구현

### 1. Pushwoosh Control Panel에서 이벤트 생성하기

앱에서 전송하는 모든 이벤트는 먼저 Pushwoosh에서 속성 세트 및 해당 유형과 함께 생성되어야 합니다. 그렇지 않으면 Pushwoosh가 이를 인식하지 못합니다.

이벤트를 생성하려면 Control Panel의 **Events** 섹션으로 이동하여 **Add event** 버튼을 누릅니다. 이름과 설명을 입력하고 필요한 경우 [속성](#2-set-attributes)을 추가합니다.

<Aside type="tip">
이벤트 데이터는 올바르게 제출될 때만 가치가 있습니다. 따라서 아래의 간단한 가이드라인을 따르는 것을 강력히 권장합니다:

* 이벤트 이름을 가능한 한 짧게 지정하십시오.
* 사용자가 앱에서 수행하는 작업의 이름을 따서 이벤트 이름을 지정하십시오 - "LoggedIn", "SignedOut", "Subscribed" 등.
* 이벤트 이름은 대소문자를 구분한다는 점을 명심하십시오.
* 단일 작업을 설명하는 이벤트를 단일 이벤트로 병합하십시오. 예를 들어, "SubscribedToSports", "SubscribedToPolitics", "SubscribedToTechnology"와 같은 별도의 이벤트 대신 적절한 속성을 가진 "Subscribed" 이벤트를 사용하십시오.
</Aside>

<img src="/events-README-1.webp" alt="Add event 버튼과 이벤트 생성 인터페이스를 보여주는 Events 섹션"/>

### 2. 속성 설정하기

이벤트를 설명하는 모든 세부 정보는 속성과 함께 제공됩니다. 속성은 키/값 쌍입니다. Control Panel에서 다음 유형 중 하나를 선택할 수 있습니다:

* **integer**
* **string**
* **boolean**
* **list**
* **decimal (price)**
* **date**

<Aside type="note">
이벤트에 최대 50개의 속성을 추가할 수 있으며, 각 속성의 페이로드(콘텐츠)는 10KB로 제한됩니다.
</Aside>

<img src="/events-README-2.webp" alt="속성 이름과 integer, string, boolean, list, decimal (price), date가 포함된 유형 드롭다운을 보여주는 이벤트 속성 양식"/>

예를 들어, 사용자의 로그인을 추적하고 로그인 자격 증명(예: Facebook, Google, Twitter 또는 이메일로 로그인), 인터넷 연결 유형(wifi, cellular, unknown), 성공 여부(true 또는 false 값)를 단일 Login 이벤트로 수집할 수 있습니다. 이를 위해 속성을 다음과 같이 지정합니다:

| attribute  | type    | value                            |
| ---------- | ------- | -------------------------------- |
| type       | string  | facebook, google, twitter, email |
| connection | string  | wifi, cellular, unknown          |
| success    | boolean | true, false                      |

이 이벤트는 속성 값과 타임스탬프와 함께 Pushwoosh에 기록되므로, 나중에 세그먼트 구축, 메시지 타겟팅, 통계 수집에 사용될 수 있습니다.

<Aside type="tip">
세그먼트를 구축할 때 이벤트 속성 값으로 사용자를 필터링하려면 [이벤트별 세그먼트 구축](/ko/product/audience-data-and-segmentation/segmentation/create-segments/by-events/#event-attribute-operators-by-type)을 참조하세요.
</Aside>



### 3. /postEvent API 호출하기

<Aside type="caution" icon="setting" title="개발자 지원 필요">
 이 단계에서는 개발팀의 지원이 필요합니다. 이벤트 설정에 대한 자세한 지침은 [이 링크](/ko/developer/guides/audience-and-segmentation/events)를 개발팀과 공유해 주세요.
</Aside>

## 이벤트 가져오기

**이벤트 가져오기** 기능을 사용하면 CSV 파일에서 이벤트 데이터를 업로드하여 대량의 사용자 활동을 쉽게 추적하고 분석할 수 있습니다. 다양한 분석 및 CRM 시스템에서 이벤트를 가져와 데이터를 강화하고 세분화를 개선할 수 있습니다.

이벤트를 가져오려면 **Audience** → **Import CSV** → **Import events**로 이동합니다.

![이벤트 업로드](/importevents.webp)

### 1단계. CSV 업로드

이벤트 데이터가 포함된 CSV 파일을 업로드합니다. 파일에는 다음 필수 열이 포함되어야 합니다:

* **Event name:** 이벤트의 이름.
* **Event date:** 이벤트가 발생한 날짜와 시간.
* **HWID or User ID:** 이벤트와 관련된 사용자의 고유 식별자.

데이터를 강화하기 위해 선택적 이벤트 속성에 대한 추가 열을 포함할 수도 있습니다.

파일을 업로드하려면 CSV를 업로드 영역으로 드래그 앤 드롭하거나 클릭하여 장치에서 파일을 선택합니다. 허용되는 최대 파일 크기는 100MB입니다.

### 2단계. 열 매핑

파일을 업로드한 후, CSV 열을 Pushwoosh의 해당 이벤트 속성에 매핑해야 합니다.

* 각 필수 필드(Event Name, Event Date, HWID 또는 User ID)를 파일의 올바른 열에 할당합니다.
* CSV에 사용자 지정 속성이 포함된 경우, 데이터 추적 요구 사항에 맞는 의미 있는 이름에 매핑합니다.
* 필요한 경우 **Add attribute**를 클릭하여 추가 필드를 포함합니다.

모든 열이 올바르게 매핑되면 **Import events**를 클릭합니다.

가져오기가 성공적으로 완료되면 확인 메시지가 표시됩니다. 이제 이 이벤트를 사용하여 캠페인의 잠재력을 극대화할 수 있습니다.

필요한 경우 다른 파일을 업로드하여 추가 데이터를 계속 가져올 수 있습니다.

가져온 이벤트는 [**User Explorer**](/ko/product/audience-data-and-segmentation/user-explorer/)의 **Events History** 섹션에서 찾을 수 있습니다.