Интеграция с Google-календарём: различия между версиями
Admin (обсуждение | вклад) Нет описания правки |
Admin (обсуждение | вклад) Нет описания правки Метка: ручная отмена |
||
| (не показано 10 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
Начиная с версии [[3.21]] есть возможность настроить взаимодействие с Google Календарь: https://calendar.google.com/calendar/u/0/gp | |||
<gallery mode="packed" heights="300px"> | |||
Файл:Gogle calendar1.jpg | |||
Файл:Gogle calendar2.jpg | |||
</gallery> | |||
Как это работает? Взаимодействия напрямую с личным календарём 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 | |||
И зайти - авторизоваться с аккаунта интеграции | |||
Ошибка: Ошибка 400: redirect_uri_mismatch - не вписан корректный URL в "Authorized redirect URIs" | |||
Ошибка: Ошибка 403: access_denied | |||
Добавление тестовых аккаунтов ''(в т.ч. аккаунта интеграции)'' в разделе "Audience" - "Test users" | |||
5) В ERP в разделе "Настройка - Задания - Google-календарь" включить работу с календарём и указать все параметры | |||
6) В "Карточке сотрудника - Редактирование" - проверить корректность указания email + поставить чекбокс - привязка к Google-календарю - Сохранить. Добавится и будет выведена информация о CalendarID | |||
7) В Google Календаре основной интеграционной учётной записи будет видно все календари сотрудников ''(список)''. Далее - сотруднику придёт письмо - с предложением присоединиться к расшаренному календарю под него. Нужно принять. | |||
'''Заметки:''' | |||
1) При изначальном создании календаря - сразу будут влиты все задания куда этот сотрудник назначен начиная с даты - сутки назад. | |||
2) При изменении email у сотрудника - календарь будет пересоздан. | |||
3) При удалении e-mail и/или отключении работы с календарём у сотрудника - календарь будет удалён. | |||
Этот подход можно использовать и чтобы пересоздать календарь и события в нём, в случае каких-то сбоев синхронизации | |||
4) В приложении Google Календарь - возможно нужно будет включить в списке этот календарь ''(он может подключиться но по-умолчанию в выключенном состоянии)''. | |||
5) Для Apple IOS - также можете доставить приложение Google Календарь | |||
6) При увольнении сотрудника - календарь отключается и удаляется | |||
7) Опционально - выводятся работы по подразделениям этого сотрудника в календаре | |||
14) Выводятся только задания с системными ролями "Не выполнено" и "В работе". При изменении статуса у задания - соответственно добавляются/удаляются события если необходимо | |||
Текущая версия от 13:22, 18 мая 2026
Начиная с версии 3.21 есть возможность настроить взаимодействие с 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
И зайти - авторизоваться с аккаунта интеграции
Ошибка: Ошибка 400: redirect_uri_mismatch - не вписан корректный URL в "Authorized redirect URIs" Ошибка: Ошибка 403: access_denied
Добавление тестовых аккаунтов (в т.ч. аккаунта интеграции) в разделе "Audience" - "Test users"
5) В ERP в разделе "Настройка - Задания - Google-календарь" включить работу с календарём и указать все параметры
6) В "Карточке сотрудника - Редактирование" - проверить корректность указания email + поставить чекбокс - привязка к Google-календарю - Сохранить. Добавится и будет выведена информация о CalendarID
7) В Google Календаре основной интеграционной учётной записи будет видно все календари сотрудников (список). Далее - сотруднику придёт письмо - с предложением присоединиться к расшаренному календарю под него. Нужно принять.
Заметки:
1) При изначальном создании календаря - сразу будут влиты все задания куда этот сотрудник назначен начиная с даты - сутки назад.
2) При изменении email у сотрудника - календарь будет пересоздан.
3) При удалении e-mail и/или отключении работы с календарём у сотрудника - календарь будет удалён. Этот подход можно использовать и чтобы пересоздать календарь и события в нём, в случае каких-то сбоев синхронизации
4) В приложении Google Календарь - возможно нужно будет включить в списке этот календарь (он может подключиться но по-умолчанию в выключенном состоянии).
5) Для Apple IOS - также можете доставить приложение Google Календарь
6) При увольнении сотрудника - календарь отключается и удаляется
7) Опционально - выводятся работы по подразделениям этого сотрудника в календаре
14) Выводятся только задания с системными ролями "Не выполнено" и "В работе". При изменении статуса у задания - соответственно добавляются/удаляются события если необходимо