Інтеграція з Google-календарем: различия между версиями

Материал из WiKi - UserSide
([IronBot] Sync EN/UK localization from RU)
 
([IronBot] Sync UK localization from RU)
 
Строка 1: Строка 1:
[[Google_Calendar_integration|en]] | '''uk''' | [[Интеграция_с_Google-календарём|ru]]
[[Google_Calendar_integration|en]] | '''uk''' | [[Интеграция_с_Google-календарём|ru]]


Начиная с версии [[3.21]] есть возможность настроить взаимодействие с Google Календарь: https://calendar.google.com/calendar/u/0/gp
Див. також: [[Календар]]
 
Починаючи з версії [[3.21]], в ERP можна налаштувати інтеграцію з Google Календарем: https://calendar.google.com/calendar/u/0/gp


<gallery mode="packed" heights="300px">
<gallery mode="packed" heights="300px">
Строка 8: Строка 10:
</gallery>
</gallery>


Как это работает? Взаимодействия напрямую с личным календарём Google/личной учётной записью Google сотрудника особого смысла не имеет. Т.к. с одной стороны для этого потребуется давать доступ компании к личному календарю, на что часть сотрудников не будет готова, а с другой стороны - нельзя запретить выполнять некоторые действия с событиями в календаре ''(например изменять даты проведения работ)'' - хотя у сотрудников в ERP может и не быть прав для такого. Поэтому подход иной.  
Як це працює? Пряма інтеграція з особистим Google Календарем або особистим обліковим записом Google співробітника не має особливого сенсу. З одного боку, для цього потрібно було б надати компанії доступ до особистого календаря, на що частина співробітників може не погодитися. З іншого боку, неможливо заборонити окремі дії з подіями в календарі ''(наприклад, зміну дат проведення робіт)'', хоча в ERP співробітники можуть не мати таких прав. Тому використовується інший підхід.


Система автоматически создаёт экземпляры календарей сотрудников - для каждого отдельно. Под собственным аккаунтом. А уже сотрудникам предоставляется общий доступ ''(на чтение)'' к "его календарю". А сотрудник подключает этот календарь как дополнительный себе в Google Календарь. События он редактировать не может - всем управляет диспетчер/ERP.
Система автоматично створює екземпляри календарів співробітників, окремо для кожного, під власним обліковим записом. Співробітникам надається спільний доступ ''(лише для читання)'' до "їхнього календаря". Співробітник підключає цей календар як додатковий у Google Календарі. Редагувати події він не може: усім керує диспетчер/ERP.




'''Порядок интеграции:'''
'''Порядок інтеграції:'''


1) Создать отдельный центральный google-аккаунт для интеграции ''(или использовать свой какой-то существующий)''
1) Створити окремий центральний Google-акаунт для інтеграції ''(або використати якийсь наявний)''


2) Подключиться к https://console.cloud.google.com/ и создать проект
2) Підключитися до https://console.cloud.google.com/ і створити проєкт


3) Подключить к проекту API - Google Calendar API
3) Підключити до проєкту API - Google Calendar API


4) Создать OAuth credentials типа Web application с указанием URL к ERP. Режим External
4) Створити OAuth credentials типу Web application із зазначенням URL до ERP. Режим External.
Credential изначально создаётся в тестовом статусе на 7 дней. Не забудьте перевести его после настройки и тестирования в Production статус
Credential спочатку створюється в тестовому статусі на 7 днів. Не забудьте перевести його в Production після налаштування і тестування.
  Authorized redirect URIs:
  Authorized redirect URIs:
  https://erp.your_net.com/api.php?cat=google
  https://erp.your_net.com/api.php?cat=google
  https://erp.your_net.com/settings_task/google_calendar
  https://erp.your_net.com/settings_task/google_calendar
И зайти - авторизоваться с аккаунта интеграции
Після цього потрібно зайти й авторизуватися з акаунта інтеграції.
  Ошибка: Ошибка 400: redirect_uri_mismatch - не вписан корректный URL в "Authorized redirect URIs"
  Помилка: Error 400: redirect_uri_mismatch - не вказано коректний URL в "Authorized redirect URIs"
  Ошибка: Ошибка 403: access_denied
  Помилка: Error 403: access_denied
Добавление тестовых аккаунтов ''(в т.ч. аккаунта интеграции)'' в разделе "Audience" - "Test users"
Додавання тестових акаунтів ''(зокрема акаунта інтеграції)'' виконується в розділі "Audience" - "Test users".


5) В ERP в разделе "Настройка - Задания - Google-календарь" включить работу с календарём и указать все параметры
5) В ERP у розділі "Налаштування - Завдання - Google-календар" увімкнути роботу з календарем і вказати всі параметри


6) В "Карточке сотрудника - Редактирование" - проверить корректность указания email + поставить чекбокс - привязка к Google-календарю - Сохранить. Добавится и будет выведена информация о CalendarID
6) У "Картці співробітника - Редагування" перевірити коректність email, встановити прапорець прив'язки до Google-календаря і зберегти. Буде додано й показано інформацію про CalendarID


7) В Google Календаре основной интеграционной учётной записи будет видно все календари сотрудников ''(список)''. Далее - сотруднику придёт письмо - с предложением присоединиться к расшаренному календарю под него. Нужно принять.
7) У Google Календарі основного інтеграційного облікового запису буде видно всі календарі співробітників ''(список)''. Далі співробітнику надійде лист із пропозицією приєднатися до розшареного календаря, створеного для нього. Запрошення потрібно прийняти.




'''Заметки:'''
'''Нотатки:'''


1) При изначальном создании календаря - сразу будут влиты все задания куда этот сотрудник назначен начиная с даты - сутки назад.
1) Під час початкового створення календаря одразу будуть додані всі завдання, у які цей співробітник призначений, починаючи з дати добу тому.


2) При изменении email у сотрудника - календарь будет пересоздан.
2) У разі зміни email співробітника календар буде пересоздано.


3) При удалении e-mail и/или отключении работы с календарём у сотрудника - календарь будет удалён.
3) У разі видалення email і/або вимкнення роботи з календарем у співробітника календар буде видалено.
Этот подход можно использовать и чтобы пересоздать календарь и события в нём, в случае каких-то сбоев синхронизации
Цей підхід можна використовувати і для пересоздання календаря та подій у ньому в разі проблем із синхронізацією.


4) В приложении Google Календарь - возможно нужно будет включить в списке этот календарь ''(он может подключиться но по-умолчанию в выключенном состоянии)''.
4) У застосунку Google Календар, можливо, потрібно буде увімкнути цей календар у списку ''(він може підключитися, але за замовчуванням бути вимкненим)''.


5) Для Apple IOS - также можете доставить приложение Google Календарь
5) Для Apple iOS також можна встановити застосунок Google Календар.


6) При увольнении сотрудника - календарь отключается и удаляется
6) У разі звільнення співробітника календар вимикається і видаляється.


7) Опционально - выводятся работы по подразделениям этого сотрудника в календаре
7) Опційно в календарі виводяться роботи за підрозділами цього співробітника.


14) Выводятся только задания с системными ролями "Не выполнено" и работе". При изменении статуса у задания - соответственно добавляются/удаляются события если необходимо
14) Виводяться тільки завдання із системними ролями "Не виконано" і роботі". У разі зміни статусу завдання події відповідно додаються або видаляються, якщо це потрібно.

Текущая версия от 18:28, 23 мая 2026

en | uk | ru

Див. також: Календар

Починаючи з версії 3.21, в ERP можна налаштувати інтеграцію з Google Календарем: https://calendar.google.com/calendar/u/0/gp

Як це працює? Пряма інтеграція з особистим Google Календарем або особистим обліковим записом Google співробітника не має особливого сенсу. З одного боку, для цього потрібно було б надати компанії доступ до особистого календаря, на що частина співробітників може не погодитися. З іншого боку, неможливо заборонити окремі дії з подіями в календарі (наприклад, зміну дат проведення робіт), хоча в ERP співробітники можуть не мати таких прав. Тому використовується інший підхід.

Система автоматично створює екземпляри календарів співробітників, окремо для кожного, під власним обліковим записом. Співробітникам надається спільний доступ (лише для читання) до "їхнього календаря". Співробітник підключає цей календар як додатковий у Google Календарі. Редагувати події він не може: усім керує диспетчер/ERP.


Порядок інтеграції:

1) Створити окремий центральний Google-акаунт для інтеграції (або використати якийсь наявний)

2) Підключитися до https://console.cloud.google.com/ і створити проєкт

3) Підключити до проєкту API - Google Calendar API

4) Створити OAuth credentials типу Web application із зазначенням URL до ERP. Режим External. Credential спочатку створюється в тестовому статусі на 7 днів. Не забудьте перевести його в Production після налаштування і тестування.

Authorized redirect URIs:
https://erp.your_net.com/api.php?cat=google
https://erp.your_net.com/settings_task/google_calendar

Після цього потрібно зайти й авторизуватися з акаунта інтеграції.

Помилка: Error 400: redirect_uri_mismatch - не вказано коректний URL в "Authorized redirect URIs"
Помилка: Error 403: access_denied

Додавання тестових акаунтів (зокрема акаунта інтеграції) виконується в розділі "Audience" - "Test users".

5) В ERP у розділі "Налаштування - Завдання - Google-календар" увімкнути роботу з календарем і вказати всі параметри

6) У "Картці співробітника - Редагування" перевірити коректність email, встановити прапорець прив'язки до Google-календаря і зберегти. Буде додано й показано інформацію про CalendarID

7) У Google Календарі основного інтеграційного облікового запису буде видно всі календарі співробітників (список). Далі співробітнику надійде лист із пропозицією приєднатися до розшареного календаря, створеного для нього. Запрошення потрібно прийняти.


Нотатки:

1) Під час початкового створення календаря одразу будуть додані всі завдання, у які цей співробітник призначений, починаючи з дати добу тому.

2) У разі зміни email співробітника календар буде пересоздано.

3) У разі видалення email і/або вимкнення роботи з календарем у співробітника календар буде видалено. Цей підхід можна використовувати і для пересоздання календаря та подій у ньому в разі проблем із синхронізацією.

4) У застосунку Google Календар, можливо, потрібно буде увімкнути цей календар у списку (він може підключитися, але за замовчуванням бути вимкненим).

5) Для Apple iOS також можна встановити застосунок Google Календар.

6) У разі звільнення співробітника календар вимикається і видаляється.

7) Опційно в календарі виводяться роботи за підрозділами цього співробітника.

14) Виводяться тільки завдання із системними ролями "Не виконано" і "В роботі". У разі зміни статусу завдання події відповідно додаються або видаляються, якщо це потрібно.