코딩 수준: 초급
시간: 5분
프로젝트 유형: 맞춤 메뉴 및
이벤트 기반 트리거를 사용한 자동화
목표
- 솔루션의 기능을 이해합니다.
- 솔루션 내에서 Apps Script 서비스의 기능을 이해합니다.
- 스크립트를 설정합니다.
- 스크립트를 실행합니다.
이 솔루션 정보
엔드 투 엔드 이벤트 등록 시스템을 만듭니다. 회의와 같은 이벤트가 예정되어 있는 경우 회의 세션을 위한 새 캘린더를 설정하고, 등록 양식을 만들고, 참석자에게 맞춤 일정을 자동으로 이메일로 보낼 수 있습니다.

작동 방식
이 솔루션은 Google Sheets의 맞춤 메뉴를 사용하여 자동 이벤트 등록 시스템을 구현합니다. 스크립트는 Sheets 스프레드시트에 나열된 회의 이벤트가 포함된 캘린더를 만듭니다. 그런 다음 스크립트는 참석자가 등록할 수 있는 이벤트 목록이 포함된 양식을 만듭니다. 참석자가 양식을 작성하면 스크립트가 참석자를 캘린더 이벤트에 추가하고 참석자에게 일정을 이메일로 보냅니다.
Apps Script 서비스
이 솔루션은 다음 서비스를 사용합니다.
- 스프레드시트 서비스: 다른 서비스에 이벤트 정보를 제공합니다.
- Google Calendar 서비스: 이벤트의 새 캘린더를 만들고, 캘린더에 이벤트를 추가하고, 등록한 이벤트에 참석자를 추가합니다.
- 속성 서비스: Calendar 서비스에서 만든 캘린더의 ID를 저장합니다. 사용자가 맞춤 회의 메뉴에서 회의 설정 을 클릭하면 속성 서비스는 캘린더 ID 속성이 있는지 확인하여 이벤트 등록 시스템이 이미 설정되어 있는지 확인합니다. 이렇게 하면 중복 양식 및 캘린더가 생성되지 않습니다.
- Google Forms 서비스: 참석자가 세션에 등록할 수 있는 스프레드시트의 정보에서 양식을 만듭니다.
- 스크립트 서비스: 참석자가 양식을 작성할 때 실행되는 트리거를 만듭니다.
- 문서 서비스: 참석자가 등록한 이벤트의 이벤트 정보를 가져오고 새 문서에 이벤트 목록을 추가합니다. 스크립트는 참석자에게 문서를 수정할 수 있는 권한을 부여합니다.
- 메일 서비스: 참석자에게 일정 문서를 이메일로 보냅니다.
기본 요건
이 샘플을 사용하려면 다음 기본 요건이 필요합니다.
- Google 계정 (Google Workspace 계정의 경우 관리자 승인이 필요할 수 있음)
- 인터넷에 액세스할 수 있는 웹브라우저
스크립트 설정
다음 버튼을 클릭하여 회의 세션 등록 만들기 샘플 Sheets 스프레드시트의 사본을 만듭니다. 이 솔루션의 Apps Script 프로젝트는 스프레드시트에 연결되어 있습니다.
회의 > 회의 설정 을 클릭합니다. 이 맞춤 메뉴가 표시되도록 페이지를 새로고침해야 할 수도 있습니다.
메시지가 표시되면 스크립트를 승인합니다. <<../_snippets/oauth.md>>
회의 > 회의 설정 을 다시 클릭합니다.
스크립트 실행
- 도구 > 양식 관리 > 실시간 양식으로 이동을 클릭합니다.
- 양식을 작성하여 제출합니다.
- calendar.google.com으로 이동합니다.
- 왼쪽에서 회의 캘린더 옆의 체크박스가 선택되어 있는지 확인합니다.
- 등록한 이벤트의 날짜로 이동하여 참석자로 추가되었는지 확인합니다.
(선택사항) 솔루션 재설정
이 솔루션을 다시 사용해 보거나 자체 이벤트 정보를 사용하도록 맞춤설정하려면 스크립트를 처음 실행할 때 설정된 일부 항목을 재설정해야 합니다. 솔루션을 재설정하는 단계를 보려면 솔루션 재설정을 클릭하세요.
솔루션 재설정
1단계: 저장된 스크립트 속성 재설정
스크립트를 두 번 이상 실행하려고 하면 회의가 이미 설정되어 있습니다. Google Drive에서 등록 양식을 확인하세요. 회의 캘린더가 생성되면 캘린더 ID가 스크립트 속성으로 저장되기 때문에 이 문제가 발생합니다. 스크립트가 실행되면 캘린더 ID 속성이 이미 있는지 확인하고 있는 경우 실행을 중지합니다.
다음 단계에 따라 기존 캘린더 ID 속성을 삭제하세요.
- 스프레드시트에서 확장 프로그램 > Apps Script를 클릭합니다.
- Apps Script 편집기에서 함수 드롭다운 목록에서
resetProperties을 선택하고 실행을 클릭합니다.
2단계: 회의 캘린더 삭제
스크립트가 실행될 때마다 새 캘린더가 생성됩니다. 생성된 원래 캘린더를 유지하지 않으려면 다음 단계를 따르세요.
- calendar.google.com으로 이동합니다.
- 회의 캘린더 옆에 있는 회의 캘린더 옵션
> 설정 및 공유를 클릭합니다.
- 설정 하단으로 이동하여 삭제 를 클릭합니다.
3단계: 양식 제출 트리거 삭제
스크립트는 실행할 때마다 양식 제출을 위한 트리거를 만듭니다. 이메일이 중복되는 여러 트리거를 방지하려면 원래 트리거를 삭제하세요. 다음 단계를 따르세요.
- 스프레드시트에서 확장 프로그램 > Apps Script를 클릭합니다.
- Apps Script 프로젝트의 왼쪽에서 트리거
를 클릭합니다.
- 트리거 옆에 있는 더보기
> 트리거 삭제를 클릭합니다.
4단계: 양식 연결 해제 및 삭제
스크립트가 실행될 때마다 새 양식이 생성됩니다. 다음 단계에 따라 스프레드시트에서 양식을 연결 해제하고 삭제하세요.
- 스프레드시트에서 양식 응답 시트를 마우스 오른쪽 버튼으로 클릭하고 양식 연결 해제 > 확인을 클릭합니다.
- 양식 응답 시트를 다시 마우스 오른쪽 버튼으로 클릭하고 삭제 > 확인을 클릭합니다.
- forms.google.com으로 이동합니다.
- 회의 양식 을 마우스 오른쪽 버튼으로 클릭하고 삭제 > 휴지통으로 이동 을 클릭합니다.
솔루션을 재설정하면 자체 데이터를 추가하거나 샘플 데이터를 계속 사용하고 스크립트를 다시 실행할 수 있습니다.
코드 검토
이 솔루션의 Apps Script 코드를 검토하려면 소스 코드 보기를 클릭하세요.
소스 코드 보기
Code.gs
</section>
참여자
이 샘플은 Google Developer Experts의 도움을 받아 Google에서 유지관리합니다.