Zoom 연동

Mattermost v11.11번역일: 2026-09-02원본 보기

Zoom을 Mattermost와 연동하면 회의를 조율하고 앱을 오가느라 생기는 마찰과 시간 낭비를 줄일 수 있습니다. 팀이 Mattermost 채널에서 바로 즉석 영상 통화를 시작할 수 있게 하세요. Zoom 클라우드 녹화와 대화록도 준비되는 대로 Mattermost에서 바로 받아 볼 수 있습니다.

배포

설정은 Zoom에서 시작해 Mattermost에서 구성을 마칩니다.

Zoom에서 OAuth 앱 등록

Zoom 시스템 관리자가 Zoom에서 다음 단계를 수행해야 합니다.

Zoom은 OAuth 인증을 지원하며, 등록할 수 있는 OAuth Zoom 앱은 Account-Level과 User-Level 두 가지 유형이 있습니다. 조직의 보안 요구와 선호에 따라 어느 쪽이든 사용할 수 있습니다.

  • Account-Level: Mattermost의 개별 사용자는 Mattermost 이메일을 확인하고 Zoom API를 통해 개인 회의 ID(Personal Meeting ID)를 요청하는 방식으로 검증됩니다. Mattermost와 Zoom 양쪽의 사용자 이메일 주소가 일치해야 합니다. 각 사용자가 개별적으로 권한을 부여하도록 하려면 User Level Zoom 앱을 대신 만드세요.
  • User-Managed: Mattermost의 개별 사용자가 자신의 Zoom 계정에 접근할 수 있도록 Mattermost 앱에 직접 권한을 부여해야 합니다. 관리자가 Zoom 조직 전체를 대신해 접근 권한을 부여하도록 하려면 Account-Level 앱을 대신 만드세요.
중요

Account-Level 앱의 경우 앱을 만든 Zoom 계정에 연결된 Zoom 사용자만 이 연동을 사용할 수 있습니다. Zoom 계정 설정의 Manage Users 섹션에서 사용자를 추가할 수 있습니다.

Account-Level

Mattermost용 account-level Zoom 앱을 만들려면 다음 단계를 완료하세요.

  1. https://marketplace.zoom.us/로 이동해 관리자로 로그인합니다.
  2. 오른쪽 위에서 Develop을 선택한 다음 Build App을 선택합니다.
  3. 상단에서 Development를 선택합니다. 마켓플레이스에 게시할 계획이라면 Production을 선택하겠지만 여기서는 게시하지 않습니다.
  4. 왼쪽 위의 편집 아이콘을 클릭해 앱 이름을 수정할 수 있습니다.
  5. 앱 유형으로 Admin-managed app을 선택합니다.
  6. 다음 화면에서 Client ID와 Client Secret을 확인할 수 있습니다. Mattermost에서 플러그인을 설정할 때 필요하므로 복사해 두세요.
  7. 유효한 Redirect URL for OAuth(https://SITEURL/plugins/zoom/oauth2/complete)를 입력하고, Add Allow List에도 같은 URL을 추가합니다. SITEURL은 사용 중인 Mattermost 서버 URL이어야 합니다.
  8. 앱에 사용자 범위를 추가하려면 Scopes를 선택하고 다음 범위를 추가합니다. meeting:read:meeting(회의 세부 정보 조회), meeting:write:meeting(회의 생성 및 수정), user:read:user(사용자 프로필 정보 읽기), cloud_recording:read:recording(클라우드 녹화 파일 접근), archiving:read:list_archived_files(보관된 파일 목록 조회).

User-Managed

Mattermost용 user-managed Zoom 앱을 만들려면 다음 단계를 완료하세요.

  1. https://marketplace.zoom.us/로 이동해 관리자로 로그인합니다.
  2. 오른쪽 위에서 Develop을 선택한 다음 Build App을 선택합니다.
  3. 상단에서 Development를 선택합니다. 마켓플레이스에 게시할 계획이라면 Production을 선택하겠지만 여기서는 게시하지 않습니다.
  4. 왼쪽 위의 편집 아이콘을 클릭해 앱 이름을 수정할 수 있습니다.
  5. 앱 유형으로 User-managed app을 선택합니다.
  6. 다음 화면에서 Client ID와 Client Secret을 확인할 수 있습니다. Mattermost에서 플러그인을 설정할 때 필요하므로 복사해 두세요.
  7. 유효한 Redirect URL for OAuth(https://SITEURL/plugins/zoom/oauth2/complete)를 입력하고, Add Allow List에도 같은 URL을 추가합니다. SITEURL은 사용 중인 Mattermost 서버 URL이어야 합니다.
  8. 앱에 사용자 범위를 추가하려면 Scopes를 선택하고 다음 범위를 추가합니다. meeting:read:meeting(회의 세부 정보 조회), meeting:write:meeting(회의 생성 및 수정), user:read:user(사용자 프로필 정보 읽기), cloud_recording:read:recording(클라우드 녹화 파일 접근), archiving:read:list_archived_files(보관된 파일 목록 조회).

웹훅 이벤트 구성

Zoom 회의가 끝나면 채널에 공유된 원래 게시물이 회의가 종료되었음과 진행 시간을 표시하도록 자동으로 변경될 수 있습니다. 이 기능을 사용하려면 회의가 끝날 때마다 Mattermost 서버에 알리는 웹훅 구독을 Zoom에 생성하세요. 그러면 Mattermost 서버가 원래의 Zoom 메시지를 갱신합니다.

  1. Zoom에서 앱을 편집하는 중에 왼쪽 Features 탭 아래의 Access를 선택합니다.
  2. Add New Event Subscription을 선택하고 Zoom for Mattermost처럼 이름을 지정합니다.
  3. Add Events 버튼을 선택하고 All Recordings have completed, Recording Transcript files have completed, Start Meeting, End Meeting을 추가합니다.
  4. 유효한 Event notification endpoint URL https://SITEURL/plugins/zoom/webhook?secret=WEBHOOKSECRET을 입력하고 SITEURL을 사용 중인 Mattermost URL로 바꿉니다. WEBHOOKSECRET은 Mattermost 구성 과정에서 생성됩니다.
  5. Save를 선택해 웹훅 구성을 저장합니다.
  6. Zoom 웹훅 구성에서 Test Event를 선택해 웹훅이 활성 상태인지 확인합니다. Mattermost가 HTTP 200 응답을 반환하거나 Mattermost 플러그인 로그에 전송 성공이 기록되는지 확인하세요. 또한 UI에 표시된 Secret Token이 4단계의 Event notification endpoint URL에 사용한 WEBHOOKSECRET 값과 일치하는지도 확인합니다.
  7. 페이지 상단의 Secret Token 값을 복사해 다음 섹션에서 사용합니다.

Mattermost 구성

Mattermost 시스템 관리자가 Mattermost에서 다음 단계를 수행해야 합니다.

제품 내 App Marketplace에서 Zoom 연동을 설치합니다.

참고

웹훅 시크릿과 암호화 키는 한 번만 표시되므로 복사해 두는 것을 권장합니다.

  1. Mattermost에서 제품 메뉴 아이콘 제품 메뉴를 열고 App Marketplace를 선택합니다.
  2. Zoom을 검색하거나 스크롤해 찾은 뒤 Install을 선택합니다.
  3. 설치가 끝나면 Configure를 선택합니다. 시스템 콘솔로 이동합니다.
  4. Zoom 구성 페이지에서 아래와 같이 Zoom 연동을 활성화하고 구성한 다음 Save를 선택합니다.
  5. 자체 호스팅 Zoom 배포의 경우, 자체 호스팅 프라이빗 클라우드나 온프레미스 Zoom 서버를 사용할 때 해당 Zoom 서버의 Zoom URL과 Zoom API URL을 각각 https://YOUR-ZOOM.com, https://api.YOUR-ZOOM.com/v2 형태로 입력하고 YOUR-ZOOM을 사용 중인 Zoom 서버 URL로 바꿉니다. Zoom의 벤더 호스팅 SaaS 서비스를 사용한다면 이 필드는 비워 둡니다.
  6. Mattermost용 account level Zoom 앱을 만들었다면 OAuth by Account Level App을 true로 설정합니다. Mattermost용 user level Zoom 앱을 만들었다면 이 값을 false로 둡니다.
  7. OAuth를 사용해 사용자를 Zoom에 연결합니다. Zoom에서 OAuth 앱을 등록할 때 생성된 Client ID와 Client Secret을 입력합니다.
  8. At Rest Token Encryption Key 필드 옆의 Regenerate를 선택해 AES 암호화 키를 생성합니다. 이 값은 생성하기만 하면 되고 다른 곳에서는 사용하지 않습니다.
  9. 웹훅 이벤트를 구성하는 중이라면 Webhook Secret 필드 옆의 Regenerate를 선택합니다. 이 값이 Mattermost를 가리키는 웹훅 URL에 사용할 WEBHOOKSECRET 값입니다.
  10. Zoom 웹훅 구성 페이지의 Secret Token을 플러그인 설정 Zoom Webhook Secret에 붙여 넣습니다.
  11. (선택) Restrict Meeting Creation을 활성화하면 사용자가 공개 채널에서 회의를 만들지 못하도록 제한할 수 있습니다.
  12. Save를 선택해 변경 사항을 저장합니다.

활성화

팀에 Zoom 계정을 Mattermost에 연결할 수 있다는 사실을 알려 주세요.

반복 Zoom 회의(매일이나 매주처럼 정기적으로 반복되도록 예약된 회의, 또는 Zoom의 Recurrence 옵션을 사용해 고정 시간 없이 설정한 회의)에 채널을 구독시키려면 다음 슬래시 명령어를 사용하세요. /zoom subscription add [meeting ID]. 회의 ID는 Zoom 데스크톱 또는 웹 클라이언트에서 회의 세부 정보 페이지를 열거나 회의 초대 이메일에서 확인할 수 있습니다. 회의가 시작되면 채널에 접속 링크와 함께 알림이 전달됩니다. 클라우드 녹화가 활성화되어 있고 회의가 녹화되었다면, 녹화본과 대화록이 준비되는 대로 최초 메시지의 답글로 게시됩니다.

업그레이드

새 버전이 출시되면 이 연동을 업데이트하는 것을 권장합니다. 일반적으로 업데이트는 매끄럽게 진행되며 Mattermost 사용자 경험을 방해하지 않습니다. 최신 릴리스, 이전 릴리스, 호환성 고려 사항은 Releases 페이지에서 확인하세요.

사용법

Mattermost에서 Zoom 통화를 시작하려면 유료 Zoom 계정이 필요합니다. 처음 Zoom 회의를 만들 때 계정 연결을 요청하는 메시지가 표시될 수 있습니다. 안내에 따라 자격 증명으로 Zoom 계정을 연결하세요.

오른쪽 창에서 Zoom 아이콘을 선택하거나 아무 채널이나 스레드에서 /zoom start 슬래시 명령어를 실행해 통화를 시작합니다. 그러면 모든 채널 멤버가 회의에 참여할 수 있습니다. 회의 호스트는 통화를 시작한 사람입니다.

채널의 통화 초대를 선택해 회의에 참여합니다.

/zoom settings 슬래시 명령어를 실행하면 회의 호스트로서 Zoom 개인 회의 ID를 사용할지에 대한 환경설정을 지정할 수 있습니다. 항상 개인 회의 ID를 사용하거나, 항상 새로운 고유 회의 ID를 사용하거나, 통화를 시작할 때마다 Mattermost가 선택을 묻도록 설정할 수 있습니다.

/zoom subscription add [meeting ID]로 Mattermost 채널을 반복 Zoom 회의에 구독시킵니다. Mattermost에서 클라우드 녹화와 대화록을 받으려면 유료 Zoom 계정에서 해당 기능이 활성화되어 있어야 합니다. 이를 활성화하려면 계정 소유자 또는 관리자로 Zoom 웹 포털에 로그인해 Account Management > Account Settings로 이동한 뒤 Recording 탭을 선택하고 Allow hosts to record and save the session in the cloud를 활성화하세요. 그런 다음 Advanced cloud recording settings 아래에서 Audio Transcript 체크박스를 선택합니다. 또는 사용자 수준에서 이 설정을 활성화하고 회의 호스트에게 녹화 권한을 부여해도 됩니다. 단계별 안내는 Zoom 클라우드 녹화 설정 문서와 오디오 대화록 문서를 참고하세요. 활성화하고 나면 녹화된 회의의 녹화본과 대화록이 준비될 때 Mattermost에서 알림을 받게 됩니다.

Mattermost RHS(오른쪽 사이드바)의 Zoom 버튼으로 새 회의를 만든 경우에도, 클라우드 녹화가 활성화되어 있고 회의가 녹화되었다면 녹화본과 대화록이 준비되는 대로 최초 메시지의 답글로 게시됩니다.

추가 슬래시 명령어는 다음과 같습니다.

  • /zoom help — 사용 가능한 명령어를 표시합니다.
  • /zoom channel-settings — 현재 채널의 회의가 개인 회의 ID를 사용할지 고유 회의 ID를 사용할지 설정합니다.
  • /zoom channel-settings list — 모든 채널 환경설정을 나열합니다.
  • /zoom subscription list — 구독 중인 모든 채널을 나열합니다.
  • /zoom subscription add [meeting ID] — Mattermost 채널을 반복 Zoom 회의에 구독시킵니다.
  • /zoom subscription remove [meeting ID] — Mattermost 채널의 반복 Zoom 회의 구독을 해제합니다.

User-Managed 앱에서만 사용할 수 있는 명령어입니다.

  • /zoom connect — Zoom 계정을 Mattermost에 연결합니다.
  • /zoom disconnect — Zoom 계정과 Mattermost의 연결을 해제합니다.

커스터마이즈

이 연동은 서버 부분과 웹 앱 부분으로 구성됩니다.

  • 서버: /server 디렉터리에 연동의 서버 측을 구성하는 Go 파일이 있습니다. 이 디렉터리에서 다른 Go 애플리케이션과 동일한 방식으로 플러그인을 빌드하세요.
  • 웹 앱: /webapp 디렉터리에 플러그인의 클라이언트 측을 구성하는 JS와 React 파일이 있습니다. 이 디렉터리에서 필요한 파일과 컴포넌트를 수정하세요. npm run build를 실행해 문법을 확인할 수 있습니다.

Mattermost 기능을 개발하고 커스터마이즈하고 확장하는 방법은 Mattermost Developer Workflow와 Mattermost 개발 환경 설정을 참고하세요.

업그레이드

새 버전이 출시되면 이 연동을 업데이트하는 것을 권장합니다. 일반적으로 업데이트는 매끄럽게 진행되며 Mattermost 사용자 경험을 방해하지 않습니다. 최신 릴리스, 이전 릴리스, 호환성 고려 사항은 Releases 페이지에서 확인하세요.

도움 받기

Mattermost 고객은 Mattermost 지원 케이스를 열 수 있습니다. 버그를 신고하려면 Mattermost Zoom 플러그인 저장소에 GitHub 이슈를 등록하세요.

질문, 피드백, 지원이 필요하면 Mattermost 커뮤니티 서버의 공개 Integrations and Apps 채널에 참여하세요.

Mattermost Team Edition 및 무료 사용 고객은 Mattermost 사용자 간 문제 해결 포럼에서 전 세계 Mattermost 커뮤니티의 도움을 받을 수 있습니다.