Discourse AI - Web Artifacts 와 매우 유사한 접근 방식을 사용하면 Discourse에서 H5P 콘텐츠를 사용할 수 있을까요?
AI 아티팩트는 크기에 제한이 있습니다. 더 큰 콘텐츠를 데이터베이스에 저장하는 것은 피해야 할 것 같습니다.
더 큰 콘텐츠를 저장하는 방법과 풍부한 콘텐츠와 Discourse 사이의 제한된 통신이 어떻게 이루어질 수 있는지에 대해 알고 싶습니다.
해결해야 할 과제
- Discourse에서 H5P 콘텐츠 서빙
- Discourse 내부에 성과(achievements) 저장
- Discourse에서 성과 분석
- 성과와 배지(Badges) 통합
Discourse에서 H5P 콘텐츠 서빙
H5P 콘텐츠는 특정 구조화된 zip 파일로 업로드됩니다. 이 아카이브는 압축을 풀고 서빙할 수 있는 위치로 이동해야 합니다.
내부 설정 데이터는 보통 크기가 작아 AI 웹 아티팩트(AIWA)와 마찬가지로 데이터베이스에 저장할 수 있습니다. 포함된 라이브러리와 미디어는 꽤 커질 수 있으므로 다른 업로드(파일 또는 CDN을 통해)로 저장해야 합니다.
AIWA는 콘텐츠가 샌드박스 환경을 제공하는 iframe 내부에서 서빙됩니다. H5P 내부의 모든 코드는 신뢰할 수 없어야 하므로, H5P에도 이것이 최선의 방식인 것 같습니다.
대안으로, 원박스(oneboxing)를 통해 외부 인프라에서 H5P를 임베드하는 방법을 고려할 수 있습니다.
Discourse 내부에 성과 저장
H5P는 성과를 저장하기 위해 REST-API(xAPI)를 사용합니다. Discourse UI와의 통합을 위해 크로스 문서 메시징이 흥미로울 수 있습니다.