특정 앱 사용자 그룹에 푸시 알림 전송하기

업데이트 날짜 9. 5월 2025 작성자 Jan Bunk


이 페이지에서 설명하는 기능을 사용하려면 푸시 알림이 포함된 요금제가 필요해요.

앱 사용자 그룹에 푸시 알림을 보내는 기본적인 방식은 다음과 같아요:

  1. 사용자 John이 앱을 열어요(이 예시에서는 쇼핑 앱이라고 가정할게요).
  2. John이 타겟 그룹에 포함되는 행동을 해요. 예를 들어 주방용품 할인 알림을 구독하는 버튼을 누를 수 있어요. 또는 앱의 주방용품 섹션을 둘러보기만 해도 John이 주방용품에 관심이 있다는 의미일 수 있어요.
  3. 웹사이트에서 John이 구독하도록 할 주제의 이름(예: "kitchen")과 함께 JavaScript 함수 "setNotificationTopicSubscriptionStatus"를 호출해요.
  4. 나중에 John과 이 주제를 구독한 다른 모든 사용자에게 알림을 보낼 수 있어요. 예를 들어 주방용품 할인 코드가 있다면 "kitchen" 주제를 구독한 모든 사용자에게 할인 소식을 알리는 알림을 보낼 수 있어요.

사용 가능한 JavaScript 함수

다음의 executeWhenAppReady() 함수를 확인해 보세요. 앱 도우미 스크립트예요.. 이 함수는 앱이 준비되기 전이나 웹사이트가 일반 브라우저에서 로드되었을 때 웹사이트에서 앱과 상호작용을 시도하지 않도록 해줘요(ReferenceError, 함수가 정의되지 않음).

앱 인스턴스가 푸시 알림 주제를 구독하도록 하려면 새로운 구독 상태(true = 구독, false = 구독 취소)와 원하는 주제 이름을 사용하여 setNotificationTopicSubscriptionStatus 함수를 호출하기만 하면 돼요.


<script>
    try {
        await setNotificationTopicSubscriptionStatus(true, "mytopic");
    }
    catch (e) {
        // Can occur if:
        // - you passed an invalid topic name.
        // - you didn't pass all necessary parameters to setNotificationTopicSubscriptionStatus().
        // - the app couldn't subscribe to the topic, for example because of connection issues. Should be very unlikely.
        // - the app couldn't connect to the native code. Should be very unlikely.
        // - push notifications are not included in your current plan
        console.log(e);
    }
</script>
    

유의할 사항:

  • 주제는 다음 정규 표현식과 일치해야 해요: [a-zA-Z0-9-_.~%]{1,850}
  • 하나의 앱 인스턴스(즉, 하나의 기기/사용자)는 최대 2,000개의 주제를 구독할 수 있어요.
  • 가능성은 낮지만 구독에 실패할 수 있으므로 잠재적인 오류를 반드시 처리하세요.

나중에 앱 인스턴스가 구독 중인 주제 목록을 가져오고 싶을 수도 있어요. 반환 값은 문자열 목록이에요.


<script>
    try {
        var topics = (await getSubscribedNotificationTopics())["topics"];
    }
    catch (e) {
        // Can occur if:
        // - the app couldn't connect to the native code. Should be very unlikely.
        // - push notifications are not included in your current plan
        console.log(e);
    }
</script>
    

더 완전한 코드 예시도 확인해 보세요. 다음은 WordPress 웹사이트에서 현재 페이지의 카테고리를 사용자가 구독하거나 구독 취소할 수 있게 하는 버튼의 코드예요.

스크린샷

앱 설정에는 사용자가 알림 주제 구독을 취소할 수 있는 기능도 있어요.

앱 설정 메뉴의 스크린샷이에요.
앱 설정 메뉴의 스크린샷이에요.
푸시 알림 주제 구독을 취소할 수 있는 대화 상자의 스크린샷이에요.
푸시 알림 주제 구독을 취소할 수 있는 대화 상자의 스크린샷이에요.

API 엔드포인트 참고 자료

이제 사용자가 주제를 구독했으므로 API를 통해 해당 주제로 알림을 보낼 수 있어요.

다음에서 앱 전용 API 키를 받으세요. 앱 대시보드예요.

API 키를 URL의 쿼리와 JSON 형식의 요청 본문으로 전송하세요.