Підключення Microsoft Outlook 365 до Odoo за допомогою Azure OAuth

Odoo сумісний з Azure OAuth від Microsoft для Microsoft 365. Щоб надсилати та отримувати захищені електронні листи з власного домену, потрібно лише налаштувати кілька параметрів на платформі Azure та в бекенді бази даних Odoo. Ця конфігурація працює як з особистою адресою електронної пошти, так і з адресою, створеною власним доменом.

Налаштування на порталі Microsoft Azure

Створення нового застосунку

Щоб розпочати, перейдіть на портал Microsoft Azure. Увійдіть за допомогою облікового запису Microsoft Outlook Office 365, якщо такий є, інакше увійдіть за допомогою особистого облікового запису Microsoft. Користувач з адміністративним доступом до налаштувань Azure повинен підключитися та виконати наступну конфігурацію. Далі перейдіть до розділу Manage Microsoft Entra ID (раніше Azure Active Directory).

Тепер натисніть Add (+) у верхньому меню, а потім виберіть App registration. На екрані Register an application змініть Name на Odoo або щось впізнаване. У розділі Supported account types виберіть Accounts in any organizational directory (Any Microsoft Entra ID directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox).

У розділі Redirect URL виберіть Web як платформу, а потім введіть https://<web base url>/microsoft_outlook/confirm у полі URL. web.base.url може змінюватися залежно від URL-адреси, що використовується для входу в базу даних.

Примітка

Документація про web.base.url пояснює, як зафіксувати унікальну URL-адресу. Також можна додати різні URL-адреси переспрямування у застосунку Microsoft.

Після додавання URL-адреси до поля Register застосунок, щоб його було створено.

Дозволи API

Дозволи API слід налаштувати наступними. Odoo потребуватиме певних дозволів API, щоб мати можливість читати (IMAP) та надсилати (SMTP) електронні листи в налаштуванні Microsoft 365. Спочатку натисніть посилання API permissions в лівому меню. Далі натисніть кнопку (+) Add a Permission та виберіть Microsoft Graph у розділі Commonly Used Microsoft APIs. Після цього виберіть опцію Delegated Permissions.

У рядку пошуку знайдіть наступні Delegated permissions та натисніть Add permissions для кожного з них:

  • SMTP.Send

  • IMAP.AccessAsUser.All

Примітка

Дозвіл User.Read буде додано за замовчуванням.

Дозволи API, необхідні для інтеграції Odoo, перераховані під Microsoft Graph.

Призначити користувачів та групи

Після додавання дозволів API поверніться до Overview Application у верхній частині лівого меню.

Тепер додайте користувачів до цього застосунку. У таблиці огляду Essentials натисніть на посилання Managed Application in Local Directory або останню опцію в нижньому правому куті таблиці.

Додайте користувачів/групи, натиснувши посилання Managed application in local directory для створеного застосунку.

У лівому меню виберіть Users and Groups. Далі натисніть (+) Add User/Group. Залежно від облікового запису можна додати Group та User або лише Users. Особисті облікові записи дозволяють додавати лише Users.

У розділі Users або Groups натисніть None Selected та додайте користувачів або групу користувачів, які надсилатимуть електронні листи з облікового запису Microsoft в Odoo. Add користувачів/групи, натисніть Select, а потім Assign їх до застосунку.

Створити облікові дані

Тепер, коли застосунок Microsoft Azure налаштовано, потрібно створити облікові дані для налаштування Odoo. До них належать Client ID та Client Secret. Спочатку Client ID можна скопіювати зі сторінки Overview застосунку. Client ID або Application ID розташовано під Display Name в огляді Essentials застосунку.

Application/Client ID розташовано в огляді застосунку.

Далі потрібно отримати Client Secret Value. Щоб отримати це значення, натисніть Certificates & Secrets у бічному меню ліворуч. Потім потрібно створити Client Secret. Для цього натисніть кнопку (+) New Client Secret.

У вікні праворуч з’явиться кнопка з міткою Add a client secret. У полі Description введіть Odoo Fetchmail або щось впізнаване, а потім встановіть expiration date.

Важливо

Якщо перший секрет втратить чинність, потрібно буде створити та налаштувати новий Client Secret. У цьому випадку можливе переривання служби, тому слід відзначити дату закінчення терміну дії та встановити її якомога далі.

Далі натисніть Add, коли ці два значення будуть введені. Буде створено Client Secret Value та Secret ID. Важливо скопіювати Value або Client Secret Value у блокнот, оскільки воно буде зашифровано після виходу з цієї сторінки. Secret ID не потрібен.

Client Secret Value або Value в облікових даних програми.

Після виконання цих кроків такі елементи мають бути готові до налаштування в Odoo:

  • Client ID (Client ID або Application ID)

  • Client secret (Value або Client Secret Value)

Це завершує налаштування на стороні Microsoft Azure Portal.

Налаштування в Odoo

Введіть облікові дані Microsoft Outlook

Спочатку відкрийте базу даних Odoo та перейдіть до модуля Apps. Потім видаліть фільтр Apps з панелі пошуку та введіть Outlook. Після цього встановіть модуль під назвою Microsoft Outlook.

Далі перейдіть до Налаштування ‣ Загальні налаштування, і в розділі Електронна пошта переконайтеся, що прапорець Використовувати власні поштові сервери встановлено. Це додає нову опцію для Облікові дані Outlook.

Збережіть прогрес.

Потім скопіюйте та вставте Ідентифікатор (ID програми) і Секрет (значення секрету клієнта) у відповідні поля та Збережіть налаштування.

Облікові дані Outlook в загальних налаштуваннях Odoo.

Налаштуйте сервер вихідної пошти

На сторінці General Settings у розділі Custom Email Servers натисніть посилання Outgoing Email Servers, щоб налаштувати обліковий запис Microsoft.

Потім створіть новий поштовий сервер і встановіть прапорець Outlook. Далі заповніть Name (це може бути будь-що) та електронну пошту Microsoft Outlook Username.

Якщо поле From Filter порожнє, введіть домен або адресу електронної пошти.

Потім натисніть Connect your Outlook account.

Відкриється нове вікно Microsoft для завершення authorization process. Виберіть відповідну адресу електронної пошти, яка налаштовується в Odoo.

Сторінка дозволів для надання доступу між новоствореною програмою та Odoo.

Потім дозвольте Odoo доступ до облікового запису Microsoft, натиснувши Так. Після цього сторінка повернеться до щойно налаштованого Сервера вихідної пошти в Odoo. Конфігурація автоматично завантажує токен в Odoo, і з’являється зелена мітка Токен Outlook дійсний.

Індикатор дійсного токена Outlook.

Нарешті, натисніть Перевірити з’єднання. Має з’явитися повідомлення про підтвердження. База даних Odoo тепер може надсилати безпечні електронні листи через Microsoft Outlook з використанням аутентифікації OAuth.

Налаштування з одним сервером вихідної пошти

Налаштування одного вихідного сервера є найпростішою конфігурацією для Microsoft Azure і не вимагає розширених прав доступу для користувачів у базі даних.

Загальна адреса електронної пошти буде використовуватися для надсилання листів для всіх користувачів у базі даних. Наприклад, вона може бути структурована з псевдонімом notifications (notifications@example.com) або псевдонімом contact (contact@example.com). Ця адреса повинна бути встановлена як Фільтрація FROM на сервері. Ця адреса також повинна відповідати комбінації ключів {mail.default.from}@{mail.catchall.domain} у системних параметрах.

Див. також

Відвідайте документацію Фільтрація відправника для отримання додаткової інформації.

Примітка

До Системних параметрів можна отримати доступ, активувавши Режим розробника (режим налагодження) у меню Налаштування ‣ Технічні ‣ Параметри ‣ Системні параметри.

При використанні цієї конфігурації кожен електронний лист, надісланий з бази даних, використовуватиме адресу налаштованої поштової скриньки notification. Однак слід зауважити, що ім’я відправника з’явиться, але його адреса електронної пошти зміниться:

Ім'я справжнього відправника зі статичною електронною адресою.

Example

Конфігурація одного сервера вихідної пошти:

  • Ім’я користувача (логін) сервера вихідної пошти = notifications@example.com

  • Фільтрація FROM сервера вихідної пошти = notifications@example.com

  • mail.catchall.domain у системних параметрах = example.com

  • mail.default.from у системних параметрах = notifications

Конфігурація для окремих користувачів (кілька користувачів)

На додаток до загального поштового сервера, для користувачів у базі даних можуть бути налаштовані окремі поштові сервери. Ці адреси електронної пошти повинні бути встановлені як Фільтрація FROM на кожному окремому сервері, щоб ця конфігурація працювала.

Ця конфігурація є складнішою з двох конфігурацій Microsoft Azure, оскільки вона вимагає, щоб усі користувачі, налаштовані з поштовими серверами, мали права доступу до налаштувань для встановлення з’єднання з поштовим сервером.

Встановлення

Для кожного користувача має бути налаштований окремий поштовий сервер. Фільтрація FROM повинна бути встановлена так, щоб лише електронна пошта користувача надсилалася з цього сервера. Іншими словами, лише користувач з адресою електронної пошти, яка відповідає встановленій Фільтрації FROM, може використовувати цей сервер.

Див. також

Відвідайте документацію Фільтрація відправника для отримання додаткової інформації.

Необхідно налаштувати резервний сервер, щоб дозволити надсилання сповіщень. Фільтрація FROM для цього сервера повинна мати значення {mail.default.from}@{mail.catchall.domain}.

Примітка

До Системних параметрів можна отримати доступ, активувавши Режим розробника (режим налагодження) у меню Налаштування ‣ Технічні ‣ Параметри ‣ Системні параметри.

Важливо

Конфігурація для цього сервера транзакційної електронної пошти може працювати разом з вихідним сервером масової розсилки. Фільтрація FROM для сервера масової розсилки може залишатися порожньою, але її потрібно додати в налаштуваннях програми Email Marketing.

Див. також

Для отримання додаткової інформації про налаштування сервера електронної пошти для масових розсилок відвідайте Відправка електронних листів через зовнішній SMTP-сервер.

Example

Налаштування сервера вихідної пошти для кількох користувачів:

  • Поштова скринька користувача №1
    • Сервер вихідної пошти №1 ім’я користувача (логін) = john@example.com

    • Сервер вихідної пошти №1 Фільтрування FROM = john@example.com

  • Поштова скринька користувача №2
    • Сервер вихідної пошти №2 ім’я користувача (логін) = jane@example.com

    • Сервер вихідної пошти №2 Фільтрування FROM = jane@example.com

  • Поштова скринька сповіщень
    • Сервер вихідної пошти №3 ім’я користувача (логін) = notifications@example.com

    • Сервер вихідної пошти №3 Фільтрування FROM = notifications@example.com

  • Параметри системи
    • mail.catchall.domain у системних параметрах = example.com

    • mail.default.from у системних параметрах = notifications

Налаштування сервера вхідної електронної пошти

Обліковий запис вхідної пошти слід налаштувати подібно до облікового запису вихідної пошти. Перейдіть до Сервери вхідної пошти у Технічне меню та Створіть нову конфігурацію. Позначте або виберіть кнопку поруч із Автентифікація Outlook Oauth та введіть Ім’я користувача Microsoft Outlook. Натисніть Підключити обліковий запис Outlook. Odoo повідомить: Токен Outlook дійсний. Тепер Перевірте та підтвердіть обліковий запис. Обліковий запис має бути готовий до отримання електронної пошти в базу даних Odoo.