• Effective-Office Effective-Office
  • Информация о проекте
    • Информация о проекте
    • Активность
    • Метки
    • Участники
  • Репозиторий
    • Репозиторий
    • Файлы
    • Коммиты
    • Ветки
    • Теги
    • Участники
    • Диаграмма
    • Сравнение
  • mos.track
    • mos.track
    • Список
    • Доски
    • Спринты
  • Запросы на слияние 0
    • Запросы на слияние 0
  • CI/CD
    • CI/CD
    • Конвейеры
    • Задания
    • Расписания
  • Развертывания
    • Развертывания
    • Окружения
    • Релизы
  • Пакеты и реестры
    • Пакеты и реестры
    • Реестр пакетов
    • Реестр контейнеров
  • Мониторинг
    • Мониторинг
    • Инциденты
  • Аналитика
    • Аналитика
    • Поток ценности
    • CI/CD
    • Репозиторий
  • mos.wiki
    • mos.wiki
  • Сниппеты
    • Сниппеты
  • Активность
  • Диаграмма
  • Создать новую задачу
  • Задания
  • Коммиты
  • Доски с задачами
Свернуть панель
  • Эффектив
  • Effective-Office
  • Wiki
  • Google Workspace and Calendar Integration

Google Workspace and Calendar Integration · Изменения

История страницы
Updated Google Workspace and Calendar Integration (markdown) создал Сен 26, 2025 по автору Stanislav Radchenko's avatar Stanislav Radchenko
Показать
Построчно Рядом
Google-Workspace-and-Calendar-Integration.md 0 → 100644
Просмотреть страницу @bb8107c1
# Google Workspace & Google Calendar Integration Guide
This guide provides comprehensive instructions for external companies that wish to adapt the **Meeting Room Booking System** to their own organization using **Google Workspace** and **Google Calendar**.
## Table of Contents
1. [What is Google Workspace?](#1-what-is-google-workspace)
2. [Creating Meeting Rooms (Resources)](#2-creating-meeting-rooms-resources)
3. [Managing Users and Email Addresses](#3-managing-users-and-email-addresses)
4. [Setting Up the Service Account](#4-setting-up-the-service-account)
5. [Domain-Wide Delegation](#5-domain-wide-delegation)
6. [Sharing Resource Calendars](#6-sharing-resource-calendars)
7. [Final Checklist](#7-final-checklist)
8. [Appendix: Useful Links](#8-appendix-useful-links)
## 1. What is Google Workspace?
**Google Workspace** (formerly G Suite) is a cloud-based productivity platform from Google that includes:
- Gmail
- Google Calendar
- Google Drive
- Google Docs
- Admin Console (for managing users and resources)
To manage calendar resources and use the Calendar API, your organization must have an active **Google Workspace** subscription (Business Standard or higher recommended).
## 2. Creating Meeting Rooms (Resources)
Meeting rooms should be registered as **calendar resources** in Google Workspace. This allows them to be managed as separate calendars and used in scheduling logic.
### 2.1 Steps to Create Room Resources
1. Log in to [Google Admin Console](https://admin.google.com) as a **Super Administrator**.
2. Go to:
**Directory** > **Buildings and Resources**
3. (Optional) Create a Building:
- Click **Manage buildings**
- Click **Add building**
- Fill out name, address, and floor details
4. Create a Room Resource:
- Go to **Resources**
- Click **Add Resource**
- Fill in:
- Name (e.g. "Conference Room A")
- Type: Room
- Capacity: number of attendees
- Features (optional)
- Assign to building/floor
- Click **Add Resource**
Each room will now have its own email address (e.g., `room-a@yourdomain.com`).
## 3. Managing Users and Email Addresses
Users who access the booking system must be Google Workspace users.
### 3.1 Adding Users
1. Go to:
**Admin Console** > **Directory** > **Users**
2. Click **Add new user**
3. Fill out:
- Name
- Email (e.g., `jane.doe@yourcompany.com`)
- Password and license
All users must exist in the directory to receive calendar events and booking invitations.
## 4. Setting Up the Service Account
To interact with Google Calendar via API, a **service account** is required.
### 4.1 Create a Google Cloud Project
1. Go to [Google Cloud Console](https://console.cloud.google.com/)
2. Click project selector > **New Project**
3. Name the project and create it
### 4.2 Enable Google Calendar API
1. Go to **APIs & Services** > **Library**
2. Search "Google Calendar API"
3. Click **Enable**
### 4.3 Create a Service Account
1. Navigate to:
**IAM & Admin** > **Service Accounts**
2. Click **Create Service Account**
3. Name it (e.g., `calendar-access`)
4. Click **Done**
### 4.4 Generate JSON Key
1. Open the created service account
2. Go to **Keys** > **Add Key** > **Create New Key**
3. Select **JSON** and download it
4. Store it securely — this is your credential file
### 4.5 Assign Roles (Cloud Permissions)
Go to: **IAM & Admin > IAM**
Grant the following roles to your service account:
- `Service Account Token Creator`
- `Editor` (or more restrictive roles if applicable)
## 5. Domain-Wide Delegation
This enables the service account to impersonate users or resource calendars.
### 5.1 Enable Delegation on Service Account
1. Open the service account
2. Click **Edit**
3. Enable: **Enable Google Workspace Domain-wide Delegation**
4. Note down the **Client ID**
### 5.2 Authorize in Admin Console
1. Go to:
**Security** > **Access and Data Control** > **API Controls**
2. Click **Manage Domain-Wide Delegation**
3. Add a new client:
- Client ID: *(from step above)*
- OAuth Scopes:
```
https://www.googleapis.com/auth/calendar,
https://www.googleapis.com/auth/calendar.readonly
```
## 6. Sharing Resource Calendars
Each room calendar must grant the service account permission.
### 6.1 Manual Sharing
1. Log in to [Google Calendar](https://calendar.google.com) as an admin
2. Open the resource calendar (e.g., `room-a@yourdomain.com`)
3. Go to **Settings and Sharing**
4. Under **Share with specific people**, add:
- Service account email (e.g., `calendar-access@yourproject.iam.gserviceaccount.com`)
- Permission: **Make changes and manage sharing**
### 6.2 Programmatic Access
Optionally, use the [Admin SDK Directory API](https://developers.google.com/admin-sdk/directory) to automate sharing and calendar setup.
## 7. Final Checklist
| Task | Complete? |
|------|-----------|
| Google Workspace active | ✅ |
| Admin account created | ✅ |
| Meeting rooms created as resources | ✅ |
| Users added in directory | ✅ |
| Google Cloud project created | ✅ |
| Calendar API enabled | ✅ |
| Service account created and JSON key downloaded | ✅ |
| Domain-wide delegation enabled | ✅ |
| OAuth scopes configured | ✅ |
| Resource calendars shared with service account | ✅ |
## 8. Appendix: Useful Links
- [Google Admin Console](https://admin.google.com/)
- [Google Calendar API Docs](https://developers.google.com/calendar)
- [Google Workspace Domain-wide Delegation](https://developers.google.com/admin-sdk/directory/v1/guides/delegation)
- [OAuth 2.0 Scopes for Google APIs](https://developers.google.com/identity/protocols/oauth2/scopes)
- [Google Cloud Console](https://console.cloud.google.com/)
- [Admin SDK Directory API](https://developers.google.com/admin-sdk/directory)
**Contact your IT administrator if you encounter issues during this process.**
## Related Documentation
For information about calendar integration configuration in the application, see [Configuration Management](Configuration-Management#calendar-integration-configuration).
For details about calendar subscription management and webhook setup, see [Deployment & Operations](Deployment-and-Operations#calendar-subscription-management).
\ Нет новой строки в конце файла
Клонировать репозиторий
  • Backend System
  • Backend System
    • Booking Management
    • Database And Configuration
    • Notifications and Real time Updates
    • Workspace Management
  • Core Features
  • Core Features
    • Fast Booking System
    • Real time Availability Workflow
    • Room Booking Workflow
  • Data Layer and Repository
  • Data and Domain Architecture
  • Data and Domain Architecture
    • Data Layer and Repositories
    • Domain Use Cases
  • Deployment and Operations
  • Deployment and Operations
    • Configuration Management
Просмотреть все страницы