0.1.0-beta.3 • Published 1 year ago

@elicetest/content-creator-sdk v0.1.0-beta.3

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

외부 학습 자료 SDK

본 문서는 엘리스의 외부 학습 자료를 개발의 가이드라인을 제공합니다.

이외의 다른 질문에 대해서는 엘리스로 연락 주시기 바랍니다.

SDK 설치 및 초기화

외부 학습 자료 Javascript SDK를 npm 패키지로 설치해주세요. 해당 패키지는 웹 환경에서 사용 가능합니다.

# npm
npm install @eliceio/content-creator-sdk --save

# yarn
yarn install @eliceio/content-creator-sdk

메서드

sendScore (엘리스 플랫폼으로 점수 전달)

콘텐츠를 사용자가 모두 완료하였을 때, 점수를 엘리스 플랫폼으로 전달하도록 구성합니다.

  1. 콘텐츠가 왼료되는 시점에 @eliceio/content-creator-sdk에서 제공하는 sendScore() 함수를 호출합니다. 함수에는 score라는 인자 값이 필요로 하며, 일반적으로 콘텐츠를 완료하였을 때에는 100을 보내도록 합니다.

    import { sendScore } from '@eliceio/content-creator-sdk';
    
    sendScore({ score: 100 });
  2. 상기 설명과 같이 콘텐츠를 엘리스 수업 자료로 설정하였다면, 수업 자료의 점수가 그림과 같이 100점이 되는지 확인합니다. Alt text

postKeyValue (엘리스 플랫폼에 실습 변경사항 저장)

학생의 콘텐츠 변경사항을 엘리스 플랫폼에 저장하기 위해서는 @eliceio/content-creator-sdk에서 제공하는 postKeyValue() 함수를 사용합니다. 해당 함수는 keyvalue를 저장하는 역할을 합니다.

import { postKeyValue } from '@elice/extcontent-apis';

await postKeyValue({
    key: 'quiz01.answer', // key는 항상 camelCase로 작성되어야 히며,
                        // 영문자 및 숫자로만 작성되어야 합니다. (`[a-zA-Z0-9]+]`)
    value: '엘리스' // value의 가능한 타입은 string, number, boolean, object, array 이며,
                // object의 key는 항상 camelCase로 작성되어야 합니다.
});

⚠️ 실습 변경사항은 각 사용자 및 수업 자료마다 별도로 저장되며, 타 유저 혹은 수업 자료에는 영향을 주지 않습니다.

⚠️ key 및 value 작성 규칙

  • key는 항상 camelCase로 작성되어야 히며, 영문자 및 숫자로만 작성되어야 합니다. ([a-zA-Z0-9]+])
  • value의 가능한 타입은 string, number, boolean, object, array 이며, object의 key는 항상 camelCase로 작성되어야 합니다.

getKeyValue (엘리스 플랫폼에 실습 변경사항 조회)

학생의 콘텐츠 변경사항을 불러올 떄에는 @eliceio/content-creator-sdk에서 제공하는 getKeyValue() 함수를 사용합니다. 해당 함수는 key에 해당하는 value를 불러옵니다.

import { getKeyValue } from '@elice/extcontent-apis';

const value = await getKeyValue({
    key: 'quiz01.answer',
});

console.log(value); // "엘리스"

// 혹은 다음과 같이 키의 일부만 입력하여 해당 키의 하위 키들을 모두 불러올 수 있습니다.
// 구분자는 항상 '.'(dot)으로 작성되어야 합니다.

const value = await getKeyValue({
    key: 'quiz01',
});

console.log(value); // { answer: "엘리스" }
0.1.0-beta.3

1 year ago

0.1.0-beta.2

1 year ago

0.1.0-beta.1

1 year ago

0.1.0-beta.0

1 year ago