SYSTEM BLUEPRINT

iOS 비콘 인식
푸시 알림 흐름 설계

기존 안드로이드 시스템을 iOS로 확장하기 위한 감지, 서버 연동, 푸시 수신 검수 시나리오입니다.

iOS 앱 사용자 시나리오

비콘 감지 및 앱 권한 여정

설치 후 권한 허용부터 백그라운드 비콘 감지와 서버 전송까지 이어지는 사용자 흐름입니다.

1. 앱 설치

푸시와 위치 권한 허용

2. 비콘 접근

iBeacon 신호 감지

3. 백그라운드 유지

화면 꺼짐 상태 로그 확인

4. 서버 전송

비콘 ID와 기기 토큰 전달

5. 푸시 수신

APNs 알림 도착 확인

iOS 앱 사용자 | 화면 01

권한 및 상태 화면

ios-app://beacon-permission
권한 상태 실기기 검수
위치 권한항상 허용
블루투스켜짐
푸시 알림허용
기기 토큰등록 완료

[화면 개요 및 목적]

사용자가 위치, 블루투스, 알림 권한을 확인하고 감지 준비 상태를 볼 수 있는 첫 화면입니다.

[핵심 기능 로직]

권한이 부족하면 감지가 불안정하므로 설치 직후 상태를 명확하게 보여주고 필요한 설정으로 안내합니다.

  • Swift Permission Flow
  • UserNotifications
iOS 앱 사용자 | 화면 02

백그라운드 비콘 감지

ios-app://beacon-monitor
비콘 감지 로그 실기기 검수
Beacon UUIDB7A1-4F29
Major / Minor12 / 7
앱 상태잠금 화면
서버 전송성공

[화면 개요 및 목적]

화면이 꺼진 상태에서도 감지된 비콘 ID와 수신 시간을 로그로 남기는 검수 화면입니다.

[핵심 기능 로직]

CoreLocation 모니터링 이벤트를 서버 요청과 연결하여 누락 여부를 추적합니다.

  • CoreLocation
  • CoreBluetooth
iOS 앱 사용자 | 화면 03

푸시 수신 확인

푸시 수신 결과 실기기 검수
수신처기기 A
메시지구역 12 접근 감지
도착 시간3.1초
결과수신 완료

[화면 개요 및 목적]

감지된 비콘에 맞는 수신처로 알림이 도착했는지 확인하는 최종 화면입니다.

[핵심 기능 로직]

APNs 발송 결과와 실제 수신 시간을 함께 기록해 인수 기준을 명확히 합니다.

  • APNs
  • Device Token
서버 운영자 시나리오

PHP 서버 연동 여정

기존 안드로이드 흐름을 보존하면서 iOS 요청과 푸시 발송을 추가하는 운영 흐름입니다.

1. 서버 코드 분석

기존 PHP API 흐름 파악

2. 요청 형식 확정

iOS 감지 데이터 규격 정리

3. DB 매핑

비콘 ID와 수신처 연결

4. APNs 발송

푸시 발송 결과 기록

5. 오류 추적

실패 원인 로그 확인

서버 운영자 | 화면 01

기존 API 역분석

server.local/api-map
API 매핑 실기기 검수
Android 요청/beacon/send.php
iOS 추가/ios/beacon.php
변경 범위분리 적용
기존 영향없음

[화면 개요 및 목적]

안드로이드 앱이 호출하던 PHP 엔드포인트와 파라미터를 표로 정리하는 화면입니다.

[핵심 기능 로직]

문서가 없는 서버를 수정하기 전 기준 흐름을 확보해 기존 서비스 영향을 줄입니다.

  • PHP
  • Request Log
서버 운영자 | 화면 02

MySQL 매핑 관리

server.local/beacon-map
비콘 매핑 실기기 검수
Beacon 12-7수신처 A
Token 상태유효
마지막 갱신오늘
매핑 결과정상

[화면 개요 및 목적]

비콘 ID와 수신처, 디바이스 토큰의 연결 상태를 점검하는 운영 화면입니다.

[핵심 기능 로직]

잘못된 매핑으로 엉뚱한 기기에 푸시가 가지 않도록 데이터 연결을 검수합니다.

  • MySQL
  • Token Table
서버 운영자 | 화면 03

발송 로그 대시보드

server.local/push-log
APNs 로그 실기기 검수
요청 IDpush-0821-017
응답성공
소요 시간1.4초
실패 건0건

[화면 개요 및 목적]

APNs 발송 요청, 응답 코드, 실패 원인을 확인하는 검수용 로그 화면입니다.

[핵심 기능 로직]

푸시 실패 시 토큰 만료, 인증 오류, 매핑 누락을 빠르게 구분합니다.

  • Data Aggregation & Visualization
  • APNs Log
검수 담당자 시나리오

실기기 인수 검수 여정

앱 상태별 감지와 서버, 푸시 결과를 한 번에 확인하는 인수 흐름입니다.

1. 권한 확인

위치와 알림 권한 상태

2. 근거리 접근

비콘 인식 조건 확인

3. 잠금 화면

백그라운드 감지 확인

4. 서버 기록

요청 로그와 매핑 확인

5. 푸시 도착

수신 시간과 메시지 확인

검수 담당자 | 화면 01

검수 체크리스트

qa.local/checklist
인수 체크 실기기 검수
앱 실행 중통과
화면 꺼짐통과
앱 종료조건부 통과
푸시 수신통과

[화면 개요 및 목적]

5일 일정 안에서 놓치면 안 되는 실기기 검수 항목을 한 장으로 관리합니다.

[핵심 기능 로직]

감지 가능 상태와 불가능 상태를 분리해 인수 기준을 명확히 합니다.

  • QA Sheet
  • Device Log
검수 담당자 | 화면 02

오류 재현 화면

qa.local/error-case
오류 분석 실기기 검수
권한 거부설정 안내
토큰 만료재등록
매핑 누락서버 확인
재시도대기 중

[화면 개요 및 목적]

권한 거부, 토큰 만료, 비콘 미감지 같은 오류 상황을 재현하고 원인을 구분합니다.

[핵심 기능 로직]

운영 중 문제가 생겼을 때 앱, 서버, APNs 중 어느 구간인지 바로 좁힐 수 있습니다.

  • Error Code
  • Retry Flow
검수 담당자 | 화면 03

최종 인수 결과

qa.local/acceptance
최종 결과 실기기 검수
성공 경로완료
제한 사항문서화
소스 코드전달 가능
검수 문서작성 완료

[화면 개요 및 목적]

감지부터 푸시까지 성공한 시나리오와 남은 확인 항목을 정리하는 화면입니다.

[핵심 기능 로직]

클라이언트가 결과물을 받을 때 성공 기준과 제한 사항을 함께 확인할 수 있습니다.

  • Acceptance Report
  • Issue Tracking & Status Management