> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 대체 메시지: 푸시를 사용할 수 없을 때 Email 또는 SMS

> OneSignal로 대체 전략을 구현하여 푸시 알림이 실패할 때 Email 또는 SMS를 통해 중요한 메시지가 전달되도록 하세요. Journey, API 및 세분화를 사용하여 신뢰할 수 있는 사용자 참여를 위한 크로스 채널 메시징을 설정하는 방법을 알아보세요.

## 대체 방법을 사용하는 이유는 무엇인가요?

푸시 알림은 강력하지만 모든 사용자에게 도달한다고 보장할 수 없습니다. 푸시 전달 실패의 일반적인 이유는 다음과 같습니다:

* 사용자가 옵트아웃하거나 알림 권한을 비활성화함
* 장치가 오프라인이거나 제한된 상태임(예: iOS Focus Mode)
* 앱이 제거되었거나 푸시 토큰이 만료됨

메시지가 계속 전달되도록 하기 위해 OneSignal은 다른 채널을 통한 대체 메시징을 지원합니다:

* In-App Message
* Email
* SMS

스마트 대체 전략을 사용하면 푸시가 작동하지 않더라도 중요한 통신이 사용자에게 계속 도달하도록 보장합니다.

***

## 대체 전략 개요

<Steps>
  <Step title="기본 푸시 알림 전송">
    표준 푸시 메시지를 통해 사용자에게 알리는 초기 시도입니다.
  </Step>

  <Step title="전달 또는 열람 확인">
    전달 및 사용자 상호 작용을 모니터링하여 대체가 필요한지 확인합니다.
  </Step>

  <Step title="다른 채널을 통해 대체 트리거">
    참여 또는 전달이 없으면 동일한 메시지를 Email 또는 SMS를 통해 보냅니다.
  </Step>
</Steps>

***

## 요구 사항

* 각 사용자에 대해 고유한 [**External ID**](./users#external-id)가 설정되어 있어야 합니다
* [OneSignal SDK](./mobile-sdk-reference) 또는 REST API를 사용하여 사용자 프로필에 **Email 또는 SMS 데이터가 연결**되어 있어야 합니다

***

## 권장 구현 옵션

### 옵션 1: OneSignal Journeys (코드 없음)

[OneSignal Journeys](./journeys-overview)를 사용하여 대체 논리를 시각적으로 자동화하세요:

* 드래그 앤 드롭 인터페이스
* 열람/클릭/전달에 따른 분기 지원
* 푸시, In-App, Email 및 SMS 결합

<Frame caption="Journeys 빌더의 대체 논리">
  <img src="https://mintcdn.com/onesignal/tNi1OgLc_p9hiq7_/images/docs/15e2c008c3f5d5575259cadb1b8d976135ea664a800a6173dbc06668eb1b00ba-Screenshot_2025-05-08_at_4.16.58_PM.png?fit=max&auto=format&n=tNi1OgLc_p9hiq7_&q=85&s=15d9f1f1b8c877ad142ca0707f164df7" width="1422" height="1648" data-path="images/docs/15e2c008c3f5d5575259cadb1b8d976135ea664a800a6173dbc06668eb1b00ba-Screenshot_2025-05-08_at_4.16.58_PM.png" />
</Frame>

### 옵션 2: API를 사용한 사용자 지정 대체 워크플로

<Steps>
  <Step title="푸시 알림 전송">
    [Create Notification API](/reference/create-message)를 사용하여 사용자에게 푸시 메시지를 보냅니다. External ID 또는 사용자 지정 Alias를 기반으로 특정 사용자를 타겟팅할 수 있습니다.

    <CodeGroup>
      ```json json theme={null}
      POST https://onesignal.com/api/v1/notifications

      {
        "include_aliases": {
          "external_id": [
            "user1",
            "user2",
            "user3"
          ]
        },
        "target_channel": "push"
      }
      ```
    </CodeGroup>
  </Step>

  <Step title="상태 확인 및 대체 트리거">
    전송 후 [View Message API](/reference/view-message)를 사용하여 알림이 전달되었는지 확인합니다.

    만약: `"received" = 0`이거나 상태가 `"failed"` 또는 `"errored"`인 경우 푸시 알림이 전달되지 않은 것입니다.

    이 시점에서 매핑된 전화번호를 사용하여 자체 제공업체(예: Twilio 또는 SendGrid)를 통해 **SMS 대체**를 보낼 수 있습니다.
  </Step>
</Steps>

### 옵션 3: 대체를 위한 사용자 감지 및 세그먼트화

<Steps>
  <Step title="푸시 구독 상태 감지">
    SDK 메서드 [`addPermissionObserver()`](./mobile-sdk-reference#addpermissionobserver-push)를 사용하세요.
    이를 통해 앱이 실행되는 동안 장치의 알림 권한 상태 변경을 추적하고 응답할 수 있습니다. 앱이 실행되지 않는 동안 권한 상태가 변경되면 다음에 앱이 열릴 때 옵저버가 트리거됩니다.
  </Step>

  <Step title="푸시 구독 취소된 장치에 태그 지정">
    사용자에게 태그를 추가할 수 있습니다. 적용하는 태그(예:
    `unsubscribed_from_push: true`)는 해당 사용자의 모든 채널(푸시, Email, SMS)에서 공유됩니다. 이를 통해 나중에 푸시 알림을 옵트아웃한 사용자를 쉽게 타겟팅할 수 있습니다.
  </Step>

  <Step title="대체 사용자를 위한 세그먼트 생성">
    OneSignal 대시보드에서:

    * `unsubscribed_from_push = true`인 세그먼트를 생성합니다
    * 해당 세그먼트를 대체 Email 또는 SMS 캠페인으로 타겟팅합니다
    * Journeys 또는 캠페인에서 이 세그먼트를 사용하여 Email 또는 SMS를 통해 대체 메시지를 보냅니다
  </Step>
</Steps>

***

## 모범 사례

* 첫 번째 대체 옵션으로 **In-App Message 또는 Email**을 사용하세요 — SMS보다 덜 방해가 됩니다.
* 사용자에게 참여할 시간을 주기 위해 대체 메시지를 보내기 전에 짧은 **유예 기간**(예: 2-5분)을 추가하세요.
* **사용자를 압도하지 마세요.** 채널 간에 대체 메시지가 전송되는 빈도를 제한하세요.
* 항상 **사용자 기본 설정을 존중**하세요 — 해당 채널에 옵트인한 사용자에게만 메시지를 보내세요.
* **효과를 측정하세요.** 태그, 이벤트 또는 Analytics를 사용하여 대체 메시지의 효과를 추적하세요.

***

## 사용 사례 예시

### 보안 알림

보안 알림을 보내고 있습니다. 사용자가 5분 이내에 푸시를 받지 못하면 SMS를 통해 동일한 메시지를 받습니다.

### 주문 배송 업데이트

배송 중인 패키지가 있습니다. 추적 정보가 포함된 푸시를 보냅니다. 사용자가 받거나 열지 않으면 동일한 업데이트와 직접 링크가 포함된 SMS를 받습니다.

### 결제 실패 알림

결제 중 결제가 실패합니다. 사용자에게 알리기 위해 푸시가 전송됩니다. 전달되지 않으면 결제를 다시 시도하도록 촉구하는 SMS로 후속 조치를 취합니다.

### 이벤트 리마인더

예정된 이벤트(예: 웨비나, 약속)에 대해 사용자에게 상기시킵니다. 푸시가 수신되지 않으면 날짜, 시간 및 참여 링크 또는 위치가 포함된 SMS를 보냅니다.

### 시스템 다운타임 알림

예상치 못한 다운타임을 사용자에게 알리고 있습니다. 푸시가 실패하면 SMS로 대체하여 사용자에게 실시간으로 알립니다.

### 청구 고지

곧 청구서 만기일입니다. 푸시 알림을 보냅니다. 24시간 이내에 수신되지 않으면 보조 고지로 SMS를 보냅니다.

### 플래시 세일 알림

기간 한정 프로모션이 시작됩니다. 푸시로 사용자에게 즉시 알립니다. 푸시가 전달되지 않으면 프로모션 세부 정보와 쇼핑 링크가 포함된 SMS를 보냅니다.

메시지의 긴급성에 맞게 대체 논리를 조정하세요. 모든 알림에 SMS가 필요한 것은 아니지만 중요한 알림은 멀티 채널 전달의 이점을 얻을 수 있습니다.

***

<Info>
  도움이 필요하신가요?

  지원 팀과 채팅하거나 `support@onesignal.com`으로 이메일을 보내주세요.

  다음을 포함해 주세요:

  * 발생한 문제의 세부 정보 및 재현 단계(가능한 경우)
  * OneSignal 앱 ID
  * External ID 또는 Subscription ID(해당하는 경우)
  * OneSignal 대시보드에서 테스트한 메시지의 URL(해당하는 경우)
  * 관련 [로그 또는 오류 메시지](/docs/ko/capturing-a-debug-log)

  기꺼이 도와드리겠습니다!
</Info>

***
