자리
자리 배치 시작
명단과 순번을 정리하고 자리판에서 바로 첫 성공을 만듭니다.
classpage에서 열었다면 명단을 다시 붙여넣지 않아도 됩니다.
앱 설치 준비를 확인하고 있습니다.
진행판
자리
명단과 순번을 정리하고 자리판에서 바로 첫 성공을 만듭니다.
청소
같은 명단으로 청소 면제와 요일/구역 배정만 먼저 끝냅니다.
선택
학생이 직접 고르게 할 때만 사용합니다.
Teacher Flow
CSV/엑셀을 열거나 표를 붙여넣은 뒤 명단 반영만 누르면 됩니다.
번호와 선택 순번을 따로 관리하고, 자리 배치·청소 구역 조건도 함께 넣을 수 있습니다.
실시간 세션 만들기 후 학생 링크와 QR을 만들고, 결과를 기록으로 저장할 수 있습니다.
classpage 연동
1. 명단
CSV/엑셀을 열거나 이름만 붙여넣은 뒤 명단 반영을 누르면 시작됩니다.
1. Roster
CSV는 바로 읽고, 엑셀 파일도 첫 번째 시트를 바로 불러올 수 있습니다.
엑셀 표를 그대로 복사해서 아래 입력칸에 붙여넣어도 됩니다. 탭 구분 표를 읽습니다.
번호,이름,별점,선택순번,청소면제 형식의 엑셀 양식을 내려받아 바로 편집할 수 있습니다.
바로 읽는 파일 형식은 .md(Classpage 표), .csv, .txt, .tsv,
.xlsx, .xls 입니다.
.numbers는 표를 복사해서 붙여넣거나 CSV로 저장해 주세요.
지원 열은 번호, 학번, 이름, 성별, 별점,
선택순번, 학급도우미, 전화번호, 이메일,
청소면제, 특별구역, 청소넘김, 다음청소페널티,
청소횟수, 자리조건, 청소조건 입니다.
번호,이름,성별,별점,선택순번,전화번호,이메일,청소면제 CSV나 엑셀 표 붙여넣기, 엑셀 파일 열기도 됩니다.
2. Order
별점순으로 먼저 고를 학생 수를 정합니다. 0명으로 두면 바로 수동 또는 랜덤 배치로 시작합니다. 자리 배치에 반영할 세부 조건은 아래 학생 카드에서 같은 값으로 맞춰 두세요.
3. Seats
학생이 직접 고를 좌석판입니다. 쓰지 않을 좌석은 클릭해서 끄고, 자리 배치를 바꾸고 싶으면
격자 보기에서는 좌석 카드를 다른 자리 위로 끌어 놓고, 자유 배치를 켜면 교실 안 원하는 위치로
좌석을 직접 끌어 놓을 수 있습니다. 아래 교탁 쪽 맨 앞줄이 1-1부터 시작합니다.
교사용 자리 배정은 청소 구역처럼 아래에서 바로 시작할 수 있습니다. 먼저 고를 학생 수를 정하고, 나머지는 수동 또는 랜덤 방식으로 교사가 이어서 채울 수 있습니다.
4. Cleaning
청소도 자리 배치처럼 정한 인원 수만큼 먼저 요일과 역할을 고르고, 나머지는 남은 칸에 배정합니다. 청소 배정에 반영할 세부 조건은 아래 학생 카드에서 같은 값으로 맞춰 두세요.
별점순 모드는 선택 기간 별점이 높은 순이며, 동점이면 전체 기간 별점 합계가 높은 순입니다. 보강 우선·건너뜀 벌점·학생별 배정 횟수 조건은 유지됩니다. 랜덤 모드는 기존 낮은 별점순 첫 배정을 유지하며, 모든 학생의 첫 배정이 끝난 뒤 반복 배정에만 랜덤을 적용합니다. 학생별 최대 배정 횟수 안에서 여러 요일을 맡을 수 있지만 같은 요일에는 두 번 배정되지 않습니다. 확정 전후 모두 배정된 학생 카드를 다른 칸으로 끌면 한 칸씩 이동하거나 서로 교환할 수 있으며, 학생별 배정 횟수는 유지됩니다. 청소를 넘긴 학생은 확정할 때 다음 차례용 별점 페널티가 예약됩니다(별점 절댓값의 절반만큼 감점).
해당 날짜에 빠진 학생을 체크하면 청소 후보에서 자동 제외합니다. 청소 당번이 빠졌다면 다음 청소 배정 때 우선 보정합니다.
기본 청소 구역표와 결석 보강 현황이 여기에 표시됩니다.
반복 배정도 옮길 학생의 원래 청소 칸을 직접 끌어 빈 칸에 놓거나 다른 학생 칸과 교환할 수 있습니다.
5. 저장
Mail Template
{sessionName}
{sessionCode}
{studentName}
{studentLabel}
{studentCode}
{studentPin}
{studentUrl}
{sessionCodeLine}
{studentCodeLine}
{studentPinLine}
{studentUrlLine}
{sessionName}
{sessionCode}
{studentName}
{studentLabel}
{studentCode}
{studentPin}
{studentUrl}
{sessionCodeLine}
{studentCodeLine}
{studentPinLine}
{studentUrlLine}
{sessionName}
{studentName}
{studentLabel}
{seatSessionCode}
{seatStudentCode}
{cleaningSessionCode}
{cleaningStudentCode}
{studentPin}
{studentUrl}
{seatSessionCodeLine}
{seatStudentCodeLine}
{cleaningSessionCodeLine}
{cleaningStudentCodeLine}
{studentPinLine}
{studentUrlLine}
메일 목록은 Markdown 표로 보관합니다. Sheets에는 ‘마지막 표 복사’로 붙여넣고 열·줄바꿈을 확인하세요. 기존 CSV·Excel 발송 결과를 다시 불러오면
학생 카드에 발송 완료, 미발송, 오류 상태가 반영됩니다.
보안을 더 높이려면 {studentPin} 또는 {studentPinLine}은 메일 본문에 넣지 말고,
필요하면 학생에게 따로 알려 주세요. 같은 메일에 링크와 PIN을 함께 넣으면 보호 효과가 줄어듭니다.
Auto Send
비밀키는 이제 이 브라우저의 현재 탭에만 임시로 보관됩니다. 웹앱 URL은
https://script.google.com/macros/s/.../exec 주소만 사용하세요.
위의 비밀키 만들기를 눌러 값을 만든 뒤, 아래 스크립트의 WEBHOOK_SECRET 자리에 같은 값을 넣습니다.
새 구글 스프레드시트에서 확장 프로그램 → Apps Script를 연 뒤, 기본 코드를 모두 지우고 아래 스크립트를 붙여넣습니다.
배포 → 새 배포 → 웹 앱에서 실행 사용자: 나로 배포한 뒤, 나온 웹앱 URL을 이 화면의 Apps Script 웹앱 URL 칸에 넣습니다.
연결 점검이 성공하면 자리 QR 세션 또는 청소 QR 세션을 만든 상태에서 각 버튼으로 바로 자동 발송하면 됩니다.
Live Result
Cleaning Live Result
학생 정보가 있는 Markdown 표는 비공개로 보관하세요. 인쇄 창에서 사용자가 직접 PDF를 선택하는 동작은 앱의 파일 저장과 별개입니다.
Combined Live Result
파일은 Markdown으로 저장합니다. Markdown을 지원하는 QR 설정 화면에서 파일을 읽고, 이전 버전은 JSON 입력 상자에 ‘QR 설정용 복사’ 내용을 붙여넣으세요. Sheets는 Markdown을 직접 업로드하지 말고 표 복사를 사용하세요. 파일과 복사 내용에는 개인정보·QR 접근 정보가 포함될 수 있으니 필요한 대상에게만 공유하세요.
qr-setup 열기 청소 세션 만들기6. Archive
자리 결과와 청소 결과를 보관해 두면 나중에 다시 불러와 확인할 수 있습니다. 전체 백업 Markdown에도 함께 들어갑니다.