Requirement (v1.0)
- 오프라인 상태에서 북마크/이어보기 정보는 다음 온라인 상태일 때 전송하여 데이터 동기화 필요함.
- 이어보기의 경우 앱(어플) 종료 시점에 전송한다. PC 재생중 종료시 javascript 로 종료 확인 메시지를 주면 PC 도 종료 시점에 한번만 이어보기 정보를 전송해도 된다.
- Flash 의 경우 일정 주기마다 전송합니다.
- SDK 에서 누적된 북마크,이어보기 정보 리스트를 획득하고 clear 하는 기능 요청
- SDK 업그레이드 일정에 반영하여 제공될 예정입니다.
- SDK - bookmark, n-screen 정보 전송에 대한 처리 callback
- SDK 업그레이드 일정에 반영하여 제공될 예정입니다.
- 북마크, 이어보기 각 항목에 시간 정보 추가
- 시간정보는 사용자 단말의 localtime 으로 시간 동기화 이슈가 있으므로 데이터 사용시 주의해야 합니다.
Kollus 설정하기
북마크와 이어보기 연동은 해당 서비스 계정에 한가지 URL 로 적용됩니다. Kollus 의 다른 Callback 과 다르게 채널별 설정이 불가능합니다.
- Kollus 관리자 화면에서 별도 등록하는 절차를 거쳐야 적용됩니다. 기능 필요시 Kollus 담당자에게 요청해 주십시오.
Bookmark API
북마크 정보를 사용하는 KollusPlayer 와 고객 데이터베이스의 북마크 정보를 연동하기 위해 사용됩니다.
API Params
Name | Type | Note |
---|---|---|
upload_file_key | string | 콘텐츠 업로드시 생성되는 키 (Unique) |
media_content_key | string | |
client_user_id | string | 사용자 아이디 |
position | integer | 북마크 위치 |
localtime | integer | 북마크 생성 시간 (참조값: 사용자 system time, |
value | string | 북마크 제목 ('&' 문자 제외) |
label | string | 북마크 리스트 제목 |
uservalue(0~9) | string | User Value |
북마크 목록 획득 Api (List Url)
북마크 목록을 획득하기 위해 호출되는 Url 입니다. 북마크 정보를 Json 형태의 UTF-8 로 반환되어야 합니다.
Request
- 인덱스 북마크
- method : GET
- params:
- (string) upload_file_key
- (string) media_content_key : 존재하지 않는 경우 있음.
- 인덱스+사용자 북마크
- method : GET
- params :
- (string) media_content_key
- (string) client_user_id
- 북마크 url 의 인자에 {USERVALUE0~9}항목이 있으면 uservalue0(~9)로 치환하여 request 함
- 예를들면 북마크 url 이 http://abc.com/bookmark/read?LC={USERVALUE0}&device={USERVALUE9} 로 등록 되어 있고 uservalue0 이 LC001 이고 uservalue9 가 mobile 이면 http://abc.com/bookmark/read?LC=LC001&device=mobile 로 요청하게 됨
Response
- error : 정상인 경우 0 (반드시 0 이어야 합니다.)
- bookmark_labels : 리스트 항목에 보여주는 목록 이름
- kind 0 : Bookmark
- kind 1 : Index
- result : 모든 결과는 result 항목 하위에 노출되어야 합니다.
- bookmark_positions : 북마크 정보 리스트
- poistion : 북마크 위치
- value : 북마크 제목
- kind
- 0 : 사용자 북마크
- 1 : 인덱스 북마크
- label : 인덱스 북마크 제목 (사용자 북마크는 해당값 무시됨)
- localtime : 북마크 생성 요청 시간 (사용자 localtime - 참고 데이터로만 사용됨, unixtimestamp 형식)
- bookmark_positions : 북마크 정보 리스트
Sample data
{ "error" : 0, "result" : { “bookmark_labels” : [ "Bookmark", “Index” ], "bookmark_positions" : [ { "position" : 3, "value" : "", "kind" : 0, "label" : "", "localtime" : 1417568260 }, { "position" : 5, "value" : "시작", "kind" : 0, "label" : "", "localtime": 1417568265 }, { "position": 7, "value" : "", "kind" : 1, "label" : "김강사님 북마크", "localtime" : 1417538260 }, { "position" : 12, "value" : "", "localtime" : 1417568270 }, { "position" : 13, "value" : "", "kind" : 1, "label" : "최강사님 북마크", "localtime" : 1417538260 } ] } }
북마크 정보 일괄 수정 Api (Update Url)
다수의 북마크를 일괄 처리하기 위한 Url 입니다. action 은 register, remove 이며, 각각 기능은 register, remove 의 기능을 순서대로 처리합니다.
Update Url 이 호출되는 경우 Register/Remove Url 은 호출되지 않습니다.
Request
- method : POST
- params:
- (string) bookmarks : {action block}이 array 로 구성된 json 포맷의 문자열
- {action block}
- action : ‘register’ or ‘remove’
- 인덱스 북마크
- (string) upload_file_key
- (integer) position
- (string) label
- (string) value : remove 에서는 포함되지 않음.
- (integer) localtime
- 사용자 북마크
- (string) media_content_key
- (string) client_user_id
- (integer) position
- (string) value : remove 에서는 포함되지 않음.
- (integer) localtime
- user_value
- 북마크 url 의 인자에 {USERVALUE0~9}항목이 있으면 uservalue0(~9)로 치환하여 request 함
- bookmarks 의 예)
- http://abc.com/bookmark/update?LC={USERVALUE0}&device={USERVALUE 9}로 등록 되어 있고 user_value0 이 LC001 이고 user_value9 가 mobile 인 경우
[ { "action" : "register" , "media_content_key" : "x53gaH3a" , "client_user_id" : "test_user_id" , "position" : 45 , "localtime" : 1414538260 , "LC" : “LC001” , "device" : “mobile” }, { "action" : "remove" , "media_content_key" : "x53gaH3a" , "client_user_id" : "test_user_id" , "position" : 67 , "localtime" : 1417538260 , "LC" : “LC001” , "device" : “mobile” } ]