구현 전략

이 페이지에서는 부가기능 웹 애플리케이션과 Google 클래스룸 부가기능 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를 표시합니다.