앱 푸시
기존 앱을 SocialHub 전송 채널로 전환하세요. 회원은 앱 내 회원 센터에서 기기 토큰을 등록할 수 있으며, 푸시 알림은 이메일 발송에 사용되는 것과 동일한 자동화 및 캠페인 엔진에 통합됩니다. 또한, 실패 시 채널이 열리는 워터폴 방식과 공유되는 전송 빈도 제한도 적용됩니다.
토큰 등록 및 전송 스택 연결 기능이 오늘 코드에 반영되었습니다.실제 푸시 배포는 제어된 활성화 플래그를 통해 진행됩니다. 팀별로 — FCM/APNs 자격 증명이 구성되면 SocialHub 팀에 활성화를 요청하세요.
작동 방식
기기 토큰 등록살다
로그인한 회원의 앱은 FCM/APNs 토큰을 POST합니다. 멱등성 UPSERT - 앱 실행 시 및 OS 토큰 교체 시 안전하게 호출할 수 있습니다.
푸시가 전송 스택에 합류합니다.살다
푸시는 별도의 API이 아닌 이메일과 동일한 자동화/캠페인 엔진의 채널입니다. 하나의 여정, 회원별로 채널을 선택하세요.
채널 폭포 + 캡 하나살다
멤버가 여러 채널에서 중복 메시지를 받지 않도록 단일 공유 주파수 제한을 사용하는 실패 시 개방형 워터폴(푸시 → 이메일 → …) 방식입니다.
서비스 제공 지원출시 예정
등록 및 전송 솔기가 오늘 코드에 있습니다. 실제 푸시 전달은 팀별로 제어된 플래그 뒤에서 롤아웃됩니다. SocialHub 팀에 활성화해 달라고 요청하세요.
기기 토큰 등록 살다
로그인된 회원의 WebView 내부에서 이 기능을 호출하세요(소비자 세션 쿠키에 ID가 저장됩니다). 해당 세션을 설정하는 WebView SSO 흐름에 대한 자세한 내용은 회원 포털 임베드 가이드를 참조하세요.
// The member must be signed in (consumer session cookie, set by the WebView SSO
// flow). teamId + memberId are taken from the SESSION — never the request body —
// so there is no member-enumeration surface here.
POST https://flash.socialhub.ai/api/consumer/push/register
Content-Type: application/json
{
"platform": "ios", // "ios" | "android"
"provider": "fcm", // "fcm" (default) | "apns" — optional
"token": "<device push token>",
"appBundleId": "com.yourbrand.app" // optional
}
// → 200 { "ok": true }
// Idempotent UPSERT keyed on (team, token): re-registering the same device
// simply re-points it at the current member. Call it on every app launch and
// whenever the OS rotates the token.전송: 푸시는 채널이지 API 호출이 아닙니다.
// You do NOT call a "send push" endpoint. Push is a CHANNEL inside the existing
// automation + campaign send stack — the same engine that sends email. When a
// journey or campaign targets a member:
//
// 1. SocialHub resolves the member's channels in a waterfall (fail-open):
// push (if a token + consent exist) → email → …
// 2. One SHARED frequency cap applies across channels, so a member is never
// double-messaged on push AND email for the same step.
// 3. No token / no consent / push disabled → silently falls back to email.
//
// Net: you author one journey; SocialHub picks the best channel per member.마케터는 코딩 없이 푸시 알림을 작성할 수 있습니다. 시각적 캠페인 캔버스(이메일 옆)의 푸시 단계에서 AI가 생성한 문구, 이메일과 동일한 병합 태그, 재사용 가능한 푸시 템플릿을 활용합니다. 마케터가 작성한 내용은 캠페인의 푸시 콘텐츠가 되며, 위의 전송 경로를 통해 전달됩니다. 앱은 기기 토큰만 등록합니다.
라이브 방송을 시작하기 전에
FCM(Firebase를 통한 Android + iOS)
SocialHub 팀에 Firebase 서비스 계정 자격 증명을 제공하세요. 전송은 기본 공급자인 FCM HTTP v1(서비스 계정을 통한 OAuth)을 통해 이루어집니다.
APN(선택 사항, 직접)
APN을 통해 iOS로 직접 보내는 경우 APN 인증 키(.p8), 키 ID 및 팀 ID를 제공하세요. 해당 장치를 공급자 "apns"에 등록하세요.
동의
푸시 알림은 회원의 명시적 동의와 글로벌 개인정보 보호 제어 신호(실패 시 종료)에 따라 차단됩니다. 푸시 알림에 대한 활성 동의가 없는 회원은 건너뛰고 이메일로 전환됩니다.
승인 체크리스트
동일한 장치를 두 번 등록해도 중복이 생성되지 않습니다. UPSERT는 장치를 현재 구성원으로 다시 지정합니다.
유효한 토큰을 가진 옵트인 회원은 푸시 알림을 받고, 토큰이나 동의가 없는 회원은 이메일 알림을 받습니다. 두 가지 모두 또는 아무것도 받지 않는 경우는 없습니다.
푸시 알림 동의(또는 글로벌 개인정보 보호 제어 신호)를 철회하면 회원은 즉시 이메일 채널로 전환됩니다.