구현 전략

이 페이지에서는 부가기능 웹 애플리케이션과 Google Classroom add-ons API 간의 주요 상호작용을 간략히 설명합니다.

첨부파일 검색 iframe

첨부파일 검색 iframe은 부가기능에 있는 교사의 방문 페이지입니다. 이 보기와 관련하여 다음 조치를 취하는 것이 좋습니다.

  • 콘텐츠 탐색 또는 제작 UI를 표시합니다.

    필요한 경우 교사가 활동 유형 첨부파일을 추가하지 않도록 할 수 있으므로 스트림 항목에서 학생 응답을 수락할지 결정합니다. 부가기능 iframe이 열릴 때 전달된 itemType 쿼리 매개변수의 값을 확인합니다. courseWork 유형만 학생 응답을 허용합니다.

  • 교사 선택에 따라 과제에 첨부파일을 추가하는 하나 이상의 부가기능 create 요청을 전송합니다.

기타 iframe

학생 보기 iframe, 학생 과제물 리뷰 iframe, 교사 보기 iframe은 모두 클래스룸 과제를 수정하는 대신 사용자에게 콘텐츠를 제공하기 위한 것입니다. 이러한 보기와 관련하여 다음 조치를 취하는 것이 좋습니다.

  • iframe이 열리면 사용자의 OAuth 동의를 얻은 다음 역할 및 첨부파일 ID의 유효성을 검사합니다.
  • iframe이 열리면 itemType에 따라 courseWork.GetAddOnContextRequest, courseWorkMaterials.GetAddOnContextRequest 또는 announcements.GetAddOnContextRequest를 만들어 사용자 역할을 검증합니다.
  • 현재 사용자가 학생인 경우 응답의 submissionId를 학생 과제물과 연결합니다. 이는 채점 도구에서 성적을 전달하고 교사에게 학생 과제물을 표시하는 데 필요합니다. submissionIds는 뷰 전체에서 일치합니다.
  • 부가기능에서 attachmentId를 이미 알고 있는 경우 적절한 연결 UI를 표시합니다.
  • 그렇지 않으면 이 첨부파일의 상위 게시물이 다른 게시물 또는 과정에서 복사한 것일 수 있습니다. copyHistory를 사용하여 부가기능이 알고 있는 가장 최근 사본을 식별하고 이 사본의 설정을 복사하여 부가기능 측에 첨부파일의 상응하는 새 모델을 만듭니다. 그런 다음 적절한 첨부파일 UI를 표시합니다.