도입 실행 가이드
상담부터 운영까지 단계별 할 일과
담당자를 한 장에 정리했습니다
PlaynPlay 도입은 콘솔 설정, 콘텐츠 패키징, 재생 연동, Callback URL 서버 구현이 함께 움직이는 일입니다. 단계마다 완료 기준과 담당을 먼저 정해 두면 오픈 직전에 빠진 항목을 찾느라 일정이 밀리는 일을 줄일 수 있습니다. 소요 기간은 재생 채널 수와 서버 구현 범위에 따라 달라지므로 상담에서 함께 정합니다.
최종 수정
여덟 단계와 단계별 완료 기준
콘솔 계정과 App이 준비되면 3~6단계는 담당자별로 나눠 동시에 진행할 수 있습니다. 완료 기준을 채우지 못한 단계는 다음 단계로 넘기지 않는 것을 권합니다.
| 단계 | 할 일 | 완료 기준 | 주 담당 |
|---|---|---|---|
| 1. 범위 확정 | 재생 채널(PC, Android 앱, iOS 앱), 다운로드와 오프라인 재생 허용 여부, 영상별 배속·탐색 허용, 진도 인정 기준을 정합니다. | 채널별 정책표 합의 | 사업 담당, Newin |
| 2. App 생성·키 발급 | 발급받은 계정으로 콘솔에 로그인해 서비스할 App을 만들고 App ID와 App Key를 보관합니다. 모바일 앱은 설정 > 애플리케이션에서 패키지 이름(Bundle ID)을 추가합니다. | 운영·테스트 빌드 식별자 등록 | 개발 |
| 3. 보안 정책 | 콘솔의 녹화 차단, 디바이스, 보안·워터마크 관리 항목에 서비스 기준을 넣습니다. | 정책값 기록과 승인 | 보안 담당 |
| 4. DRM 패키징 | 콘솔에서 내려받은 패키징 도구로 영상을 DRM 패키징해 미디어 서버에 올립니다. DRM 없이 서비스할 파일도 이때 구분합니다. | 샘플 강좌 재생 확인 | 콘텐츠 운영 |
| 5. 재생 연동 | 웹은 agent.js를 불러온 뒤 playnplay.launch()로 플레이어를 실행합니다. 앱은 SDK 서비스를 App ID로 시작하고, 영상마다 사용자 ID로 DRM을 설정합니다. | 채널별 재생 성공 | 개발 |
| 6. Callback URL 서버 | 콘솔에 Callback URL, Authorization, Interval을 등록하고 8개 이벤트의 수신과 응답을 구현합니다. | 모든 이벤트에 result 응답 | 서버 개발 |
| 7. 오픈 전 테스트 | 아래 시나리오를 채널마다 실행하고 서버 로그와 대조합니다. | 시나리오별 통과 기록 | 전원 |
| 8. 오픈·운영 | PC 사용자에게 PlaynPlay App 설치를 안내하고, 콘솔 통계와 변경 이력을 정기 점검합니다. | 문의 대응 절차 확정 | 사업 담당, 개발 |
단계마다 미리 정해 둘 것
연동 중에 앞 단계로 되돌아가지 않도록 개발 문서에 적힌 필수 조건과 순서를 단계별로 모았습니다.
-
2단계
운영과 테스트 빌드를 함께 등록
콘솔에 등록하지 않은 패키지 이름이나 Bundle ID로 실행하면 SDK가 등록되지 않은 앱 번들 오류를 냅니다. 테스트 빌드 식별자가 운영과 다르면 둘 다 등록하세요. App ID와 App Key는 라이선스 발급 요청에 쓰이니 열람 권한을 정해 보관합니다.
-
4단계
도구와 설정 파일은 한 폴더에
ndrm-pkg와 ndrmconfig 파일이 같은 디렉토리에 있어야 패키징이 됩니다. 와일드카드와 하위 경로 지정을 지원하므로 원본 폴더를 강좌·차시 순서로 먼저 정리하면 명령 한 줄로 묶어 처리할 수 있습니다.
-
5단계 · PC
설정 파일은 agent.js보다 먼저
playnplay_config.js를 agent.js 앞에 불러와야 합니다. minVersion으로 최소 앱 버전을 정하면 그 이상 버전 사용자에게는 업데이트 알림을 띄우지 않습니다. CDNetworks 고객사는 전용 도메인 주소를 씁니다.
PC 플랫폼 안내 보기 -
5단계 · Android
API 25 이상과 매니페스트 선언
Android SDK는 API 수준 25(Android 7.1) 이상을 지원합니다. 인터넷·포그라운드 서비스 권한, 다운로드 완료 수신기, 플레이어 액티비티와 재생 서비스를 매니페스트에 선언합니다.
Android 안내 보기 -
5단계 · iOS
iOS 13.0 이상과 Background Modes
Background Modes에서 Audio, AirPlay, and Picture in Picture를 켭니다. 다운로드를 쓰면 AppDelegate에 백그라운드 처리 코드를 넣어야 앱이 백그라운드에 있어도 다운로드가 이어집니다.
iOS 안내 보기 -
6단계
응답 규칙부터 정하기
CheckAccessRights에 Ok로 답할 때는 접근 만료 일시(expiresOn)를 함께 보냅니다. Authorization은 선택 항목이지만 등록하면 요청 헤더에 Bearer 값으로 실려 오니 서버에서 검사하세요. Callback 서버가 사내망에 있다면 호출 경로를 Newin과 미리 확인합니다.
진도 데이터 설계 보기
역할별 담당 업무
단계표 옆에 담당자 이름을 적어 두면 테스트에서 실패한 항목을 누가 고칠지 바로 정해집니다.
-
Business
사업 담당
- 수강 기간, 오프라인 재생 기한, 배속·탐색 허용 결정
- 진도율과 완강 인정 기준 확정
- 오픈 공지와 앱 설치 안내문
-
Development
개발
- 콘솔 App 등록과 식별자 관리
- Agent·SDK 연동, Callback URL 서버
- 오류 원인별 사용자 안내 문구
-
Content
콘텐츠 운영
- 패키징과 미디어 서버 업로드
- 원본과 암호화 파일 보관 규칙
- 신규 강좌 공개 전 재생 확인
-
Security
보안 담당
- 녹화 차단·디바이스·워터마크 정책 승인
- Authorization 문자열 발급과 교체
- 콘솔 녹화 차단 기록 정기 점검
-
Newin
Newin 지원
- 콘솔 계정 발급
- SDK, 샘플 프로젝트, 개발 문서 제공
- 연동 중 기술 문의 응대
오픈 전 테스트 시나리오
PC, Android, iOS마다 이 표를 복사해 결과를 적으세요. 화면 동작과 함께 서버에 이벤트 JSON이 실제로 남았는지 확인해야 통과입니다.
| 시나리오 | 실행 방법 | 확인할 결과 |
|---|---|---|
| 정상 재생 | 권한 있는 테스트 계정으로 한 편을 끝까지 봅니다. | CheckAccessRights, 시작 보고(Started), 진행 보고, 종료 원인 Ended인 종료 보고가 모두 서버에 남는지 |
| 만료·권한 없음 | 서버가 Expired와 NoRights로 답하게 바꿉니다. | 재생되지 않고 접근 권한 만료·없음 오류가 앱과 PC 화면에 각각 맞는 문구로 뜨는지 |
| 기기·동시 접속 | 허용 수를 넘긴 기기로 재생하고, 한 계정으로 두 기기에서 동시에 재생합니다. | 디바이스 제한 초과와 동시 접속 오류가 구분되어 뜨는지, 콘솔 디바이스 관리에 기기가 보이는지 |
| 캡처 시도 | 재생 중 녹화 프로그램이나 OS 화면 녹화를 켭니다. | 녹화 차단이 동작하는지, iOS는 화면 캡처 감지 오류가 오는지, 콘솔 녹화 차단 관리 화면에 반영되는지 |
| 오프라인 재생 | 내려받은 뒤 네트워크를 끊고 재생하고 다시 연결합니다. | offlineAccessPeriod로 정한 기한 안에서만 재생되는지, 연결 후 NotifyOfflinePlaybackLog가 세션별로 들어오는지 |
| 재생 제한 | 진행 보고에 PlaybackLimitExceeded로 답합니다. | 재생이 멈추고 재생 제한 초과 안내가 뜨는지 |
| 배속·탐색 | 배속·탐색을 막은 영상과 허용한 영상을 2배속과 위치 이동으로 각각 재생합니다. | 막은 영상에서 조작이 제한되는지, 허용한 영상의 재생 시간과 시청 시간 차이가 진도 계산에 맞게 반영되는지 |
| 오류 처리 | 등록하지 않은 식별자 빌드, 네트워크 차단, 셀룰러 비허용 상태에서 재생합니다. | 원인별 오류가 구분되어 사용자 안내가 달라지는지 |
연동 단계의 화면 점검에는 공개된 재생·다운로드 테스트 페이지와 커스텀 페이지 디버깅 툴을 함께 쓰면 원인을 빨리 좁힐 수 있습니다. 디버깅 툴 내려받기는 디버깅 문서에 있습니다.
오픈 후 운영 체크리스트
운영 점검은 정기 점검, 콘텐츠 추가, 버전 변경, 사용자 문의의 네 가지 계기로 나눠 두면 빠뜨리지 않습니다.
-
Routine
정기 점검
- 콘솔 사용자·세션 통계와 재생 통계로 재생 추이 확인
- 녹화 차단 관리 화면 점검
- Callback 서버의 응답 실패와 지연 건수 확인
-
New Content
콘텐츠를 추가할 때
- 패키징, 업로드, 테스트 계정 재생 순서로 확인
- 진행 보고 1건이 서버에 들어온 뒤 공개
- 원본 파일과 패키징 결과를 함께 보관
-
Version
버전이 바뀔 때
Android·iOS SDK, PlaynPlay App, Callback URL 변경 이력을 함께 봅니다. 2026년 1월 30일 Android SDK는 build.gradle에 media3-datasource-okhttp 의존성을 추가해야 했고, PC용 PlaynPlay App 1.0.32는 최신 WebView2에서 생긴 재생 문제를 고쳤습니다. 필요한 수정이 들어간 버전이 정해지면 minVersion을 올립니다.
변경 이력 보기 -
Support
사용자 문의가 올 때
- 기기 교체 문의는 콘솔 디바이스 관리에서 확인
- 진도 누락 문의는 sessionId로 서버 로그와 대조
- 재생 오류는 앱이 받은 오류 이름으로 원인 분류
PlaynPlay 도입을 위한
기술적 지원과 서비스를 제공합니다.
제품 문의부터 데모 시연까지, 모든 지원을 위해 세일즈 및 기술 지원 팀이 준비되어 있습니다.
-
제품 및 도입 문의
도입 범위, 일정, 견적을 상담합니다. 서비스 형태와 사용자 규모를 알려주시면 맞는 연동 방식과 보안 설정을 제안합니다.
-
Trial 신청
PlaynPlay의 기능을 먼저 테스트해 보세요. 트라이얼 기간 동안 귀사의 제품과 PlaynPlay를 연동하고 성능과 기능을 직접 검증할 수 있습니다.
-
PlaynPlay 기술 문의
SDK 연동, Callback URL 설계, DRM 패키징 중에 생기는 질문에 기술팀이 답합니다. 공개된 개발 문서와 샘플 프로젝트도 함께 확인하세요.
가이드
가이드
가이드