채팅 스타일 알림
채팅 스타일 알림을 사용하면 푸시 알림이 메신저 대화처럼 표시됩니다. 앱 아이콘 대신 발신자의 프로필 사진이 크게 보이고, 발신자 이름이 제목 위치에 표시되어 일반 알림보다 훨씬 눈에 띕니다.
1:1 상담, 친구 활동 알림, 담당 매니저 메시지처럼 “사람이 보낸 메시지” 성격의 알림에 특히 효과적입니다.
이미지 출처: Android Developers 공식 문서| 항목 | 요구 사항 |
|---|---|
| FlareLane SDK | Android · iOS · React Native · Flutter 1.11.0 이상 |
| OS | iOS 15 이상 / Android 7.0 이상 |
각 플랫폼의 공식 문서도 함께 참고하세요: Apple - Implementing communication notifications · Android - Conversation notifications
iOS 앱 설정 (필수)
Section titled “iOS 앱 설정 (필수)”채팅 스타일 알림은 Apple 정책상 앱에서 직접 허용 설정이 필요합니다. 설정하지 않아도 오류 없이 일반 알림으로 표시되지만, 프로필 사진이 나오지 않습니다.
Communication Notifications capability 추가
Xcode에서 앱 타겟 → Signing & Capabilities → + Capability → Communication Notifications 를 추가합니다.
앱 Info.plist에 항목 추가 (Notification Service Extension이 아닌 앱의 Info.plist)
<key>NSUserActivityTypes</key><array><string>INSendMessageIntent</string></array>
기존 FlareLane iOS 연동(Notification Service Extension 포함)이 완료된 상태를 전제로 합니다. 아직이라면 iOS SDK 연동 가이드를 먼저 진행해주세요.
Android 앱 설정
Section titled “Android 앱 설정”추가 설정이 필요 없습니다. SDK 1.11.0 이상이면 payload만으로 동작합니다.
React Native / Flutter
Section titled “React Native / Flutter”네이티브 SDK가 처리하므로 추가 코드가 필요 없습니다. iOS는 위 iOS 앱 설정을 동일하게 적용해주세요.
Open API 알림 발송 시 communication 객체를 추가합니다.
curl -X POST "https://api.flarelane.com/v1/projects/{PROJECT_ID}/notifications" \ -H "Authorization: Bearer {API_KEY}" \ -H "Content-Type: application/json" \ -d '{ "targetType": "all", "body": "고객님, 문의주신 상품 재입고됐어요! 지금 보러 오실래요? 😊", "communication": { "senderName": "하나 매니저", "senderImageUrl": "https://cdn.example.com/profiles/manager-hana.png" } }'| 필드 | 필수 | 설명 |
|---|---|---|
senderName | ✅ | 발신자 표시 이름. 알림 제목 위치에 표시됩니다. Liquid 변수 사용 가능 |
senderImageUrl | ✅ | 발신자 프로필 이미지 URL. 정사각형, 1MB 이하 이미지를 권장합니다 |
같은 발신자의 대화를 하나로 묶으려면 알림 그룹(threadId)을 함께 사용하는 것을 권장합니다. 같은 threadId의 메시지들이 플랫폼별 대화 묶음 방식에 따라 한 대화로 이어져 표시됩니다.
개인화 예시
Section titled “개인화 예시”태그와 Liquid 변수를 조합하면 사용자마다 다른 발신자로 보낼 수 있습니다.
{ "targetType": "all", "body": "나 오늘 레벨 30 달성했어! 우리 같이 플레이하자 🎮", "threadId": "friend_{{ tags.friend_id }}", "communication": { "senderName": "{{ tags.friend_name }}", "senderImageUrl": "https://cdn.example.com/profiles/{{ tags.friend_id }}.png" }}프로필 사진이 표시되지 않는다면 아래 순서로 확인해보세요.
- iOS 15 미만 / SDK 1.11.0 미만 기기나 버전인지 확인
- Communication Notifications capability가 앱 타겟에 추가되어 있는지 확인
- 앱 Info.plist의
NSUserActivityTypes에INSendMessageIntent가 있는지 확인 (Extension이 아닌 앱의 Info.plist입니다. 가장 흔한 누락 지점입니다) senderImageUrl이 브라우저에서 정상적으로 열리는지, 이미지 용량이 과도하지 않은지(1MB 이하 권장) 확인- 재빌드 후 앱을 삭제하고 재설치 (entitlement 변경은 재설치가 필요할 수 있습니다)