Google Workspace 부가기능 빌드하기

새 Google Workspace 부가기능을 빌드하려면 다음 일반 절차를 따르세요.

  1. 부가기능 프로젝트를 설정하고 소유자 및 공동작업자를 선택합니다.
  2. 부가기능의 디자인과 동작을 디자인합니다.
  3. 부가기능의 프로젝트 매니페스트 또는 배포 리소스를 구성합니다.
  4. 코드를 작성하여 부가기능의 모양과 동작을 정의합니다.
  5. 부가기능의 OAuth 범위를 확인합니다.
  6. 확장되는 호스트 애플리케이션 내에서 부가기능을 테스트합니다.
  7. 부가기능을 게시합니다.

부가기능 프로젝트를 설정하고 소유자 및 공동작업자 선택

Apps Script에서 부가기능을 빌드하는 경우 Apps Script 프로젝트와 Google Cloud 프로젝트를 모두 만듭니다. Apps Script가 아닌 언어로 부가기능을 빌드하는 경우 Google Cloud 프로젝트만 만들면 됩니다.

부가기능 개발을 시작하기 전에 프로젝트 소유권을 부여할 단일 사용자 계정을 선택하고 공동작업자가 될 다른 계정을 결정합니다. 프로젝트 소유자는 프로젝트 파일과 관련 설정을 만들고 관리하며, 공동작업자는 코딩과 테스트에 도움을 줄 수 있습니다.

Apps Script 프로젝트

공유 드라이브에서 부가기능의 Apps Script 프로젝트 파일을 빌드하여 단일 계정에서 단독 소유권을 가질 수 없도록 합니다. 공유 스크립트에 부가기능 스크립트 파일을 배치하면 여러 공동작업자가 항상 스크립트 프로젝트에 액세스할 수 있도록 쉽게 보장할 수 있습니다.

부가기능을 게시하면 단일 사용자 계정이 게시자 역할을 합니다. 게시 계정에는 스크립트 프로젝트에 대한 수정 액세스 권한이 있어야 하지만 소유자일 필요는 없습니다.

Google Cloud 프로젝트

부가기능의 Cloud 프로젝트에 공동작업자를 추가하는 것이 좋습니다. 이렇게 하면 팀원이 언제든지 부가기능의 클라우드 설정에 액세스할 수 있습니다.

부가기능 모양 및 동작 설계

부가기능의 디자인을 정하고 부가기능의 작동 방식을 정합니다. 부가기능이 솔루션을 제공해야 하는 사용 사례를 고려합니다. 먼저 간단한 디자인을 사용해 작업을 시작한 후 상세검색을 추가하세요.

부가기능 사용자 환경을 설계하는 방법은 Google Workspace 부가기능 스타일 가이드를 참고하세요.

부가기능 프로젝트 매니페스트 구성

Apps Script 프로젝트에서 프로젝트 매니페스트는 특수 JSON 파일입니다. 라이브러리 종속 항목 등 프로젝트에 관한 다양한 세부정보를 지정합니다. Google Workspace 부가기능의 경우 매니페스트는 호스트 애플리케이션에서 부가기능을 올바르게 표시하는 데 필요한 기본 정보도 제공합니다.

Apps Script에서 부가기능의 매니페스트를 구성하는 방법에 대한 자세한 내용은 매니페스트를 참조하세요.

부가기능에 코드와 기능을 추가할 때 필요에 따라 매니페스트를 수정하여 필수 부가기능의 모양과 동작을 생성합니다.

부가기능 코딩하기

부가기능에 카드 기반 인터페이스를 구현해야 합니다. Apps Script의 카드 서비스를 사용하거나 다른 코드 언어로 작성하는 경우 인터페이스가 카드로 렌더링되도록 올바른 형식의 JSON을 반환합니다.

또한 부가기능 매니페스트에 지정된 모든 트리거 함수를 구현해야 합니다. 부가기능이 OAuth를 사용하여 Google 이외의 타사 서비스에 연결되는 경우 해당 서비스의 OAuth도 구성해야 합니다.

카드 구성

Card 객체를 만들고 위젯으로 채워서 부가기능 사용자 인터페이스를 정의합니다. 매니페스트에 지정된 트리거 함수는 단일 Card 객체 또는 부가기능 인터페이스의 서로 다른 '페이지'를 나타내는 Card 객체 배열을 반환해야 합니다. 또한 부가기능은 사용자 작업에 대한 응답으로 새 카드를 만들고 표시할 수 있습니다.

Apps Script에서는 CardBuilder 클래스를 사용하여 카드를 만듭니다. 각 카드에는 CardHeader 및 하나 이상의 CardSections가 필요합니다. 부가기능 인터페이스를 구성하는 개별 위젯으로 각 카드 섹션을 채워야 합니다. 상호작용 위젯은 일반적으로 상호작용 작업을 정의하기 위해 작업에 연결됩니다.

CardBuilder를 통해 카드에 모든 섹션과 위젯을 추가한 후 CardBuilder.build()를 호출하여 상응하는 Card 객체를 만들어야 합니다.

CalendarApp와 같은 다른 기본 제공 Apps Script 서비스를 사용하여 빌드하는 부가기능 카드에 표시할 정보를 검색할 수 있습니다. Google 이외의 서비스에서 가져온 데이터를 사용할 수 있습니다.

Google Workspace 부가기능에서 OAuth가 필요한 Google 이외의 API에 액세스해야 하는 경우 해당 서비스를 구성하고 연결해야 합니다. 자세한 내용은 Google 이외의 서비스에 연결 가이드를 참조하세요.

건설 주문

카드를 제작할 때는 위에서부터 빌드해야 합니다. 즉, 다음 구성 순서를 사용해야 합니다.

  1. 위젯을 빌드합니다.
  2. 카드 섹션에 위젯을 추가합니다.
  3. 카드 섹션에 위젯이 모두 있을 때까지 반복합니다.
  4. 카드 섹션을 카드에 추가합니다.

이는 카드나 카드 섹션에 위젯을 추가하면 실제로 해당 위젯의 사본이 추가되므로 필요합니다. 위젯 객체를 추가한 후 변경한 사항은 최종 카드에 반영되지 않습니다.

유니버설 액션

범용 작업을 사용하여 컨텍스트에 독립적인 기능을 제공할 수 있습니다. 범용 작업은 현재 표시된 카드와 관계없이 부가기능 UI에서 사용할 수 있는 메뉴 항목입니다. 정의된 모든 범용 작업은 항상 부가기능의 카드 메뉴에 표시됩니다.

자세한 내용은 범용 작업을 참고하세요.

부가기능 OAuth 범위 확인

범위는 부가기능이 사용자를 대신하여 실행할 수 있는 작업을 정의합니다. 부가기능에는 순서대로 해야 하는 작업 범위만 포함하는 것이 좋습니다.

부가기능 프로젝트에서 부가기능 범위를 명시적으로 설정하여 부가기능이 최소 허용 범위 집합을 사용하도록 합니다. 부가기능 매니페스트에서 부가기능이 사용하는 범위를 정의합니다.

자세한 내용은 범위를 참고하세요.

부가기능 테스트

먼저 게시되지 않은 부가기능을 설치하여 게시되지 않은 부가기능을 테스트할 수 있습니다. 설치 및 승인이 완료되면 계정에서 부가기능을 사용하고 확장되는 호스트 애플리케이션에서 부가기능의 모양과 동작을 테스트할 수 있습니다. 부가기능이 컨텍스트 및 사용자 작업에 예상대로 작동하는지 확인해야 합니다.

자세한 내용은 Google Workspace 부가기능 테스트를 참고하세요.

부가기능 게시

부가기능을 게시하면 누구나 또는 도메인 사용자에게만 공개합니다. 게시 프로세스를 시작하기 전에 게시 개요를 검토하세요. 게시는 준비와 완료에 걸리는 복잡한 프로세스입니다.

Google Workspace 부가기능은 Google Workspace Marketplace에 게시됩니다. 공개적으로 제공되는 부가기능은 게시 전에 앱 검토를 완료해야 합니다.

자세한 내용은 Google Workspace 부가기능 게시를 참고하세요.

Google Workspace 부가기능 예

Google Workspace 부가기능 사이드바

Google Workspace 부가기능이 생성되는 방식을 이해할 수 있도록 Google Workspace '고양이' 부가기능 빠른 시작에서는 홈페이지, 카드 탐색, 타사 서비스 연결을 비롯한 간단한 Google Workspace 부가기능을 빌드하는 방법을 보여줍니다. 빠른 시작을 완료한 후에는 부가기능을 설치하고 코드로 실험할 수 있습니다.