Đồng bộ Google Calendar¶
Đồng bộ Google Calendar với Odoo để xem và quản lý các cuộc họp từ cả hai nền tảng (cập nhật diễn ra hai chiều). Tích hợp này giúp sắp xếp lịch trình, để không bỏ lỡ bất kỳ cuộc họp nào.
Cài đặt trong Google¶
Chọn (hoặc tạo) dự án¶
Tạo một dự án Google API mới và bật Google Calendar API. Đầu tiên, truy cập Google API Console và đăng nhập vào tài khoản Google.
Ghi chú
Nếu đây là lần đầu tiên bạn truy cập trang này, Google sẽ yêu cầu người dùng nhập quốc gia và đồng ý với Điều khoản dịch vụ. Chọn một quốc gia từ danh sách thả xuống và đồng ý với ToS
Tiếp theo, nhấn Select a project và chọn (hoặc tạo) một dự án API để cấu hình OAuth, và lưu thông tin xác thực. Nhấn New Project
Đặt tên rõ ràng cho dự án API, chẳng hạn Odoo Sync, để có thể nhận diện. Sau đó nhấn nút Create.
Bật Google calendar API¶
Now, click on Enabled APIs and Services in the left menu. Select Enabled APIs and Services again if the Search bar does not appear.
Sau đó, tìm kiếm Google Calendar API bằng thanh tìm kiếm và chọn Google Calendar API từ kết quả tìm kiếm. Nhấn Enable
Màn hình đồng ý OAuth¶
Now that the API project has been created, OAuth should be configured. To do that, click on OAuth consent screen in the left menu, then click the Get started button.
Cảnh báo
Personal Gmail Accounts chỉ được phép là External User Type, có nghĩa là Google có thể yêu cầu phê duyệt, hoặc cần thêm Scopes. Tuy nhiên, việc sử dụng tài khoản Google WorkSpace cho phép Internal User Type.
Lưu ý rằng khi kết nối API ở chế độ kiểm thử External, không cần sự phê duyệt từ Google. Giới hạn người dùng trong chế độ kiểm thử này được đặt là 100 người dùng.
Thực hiện các bước tiếp theo, theo thứ tự:
Trong App Information, nhập
Odoovào trường App name, sau đó nhập địa chỉ email cho trường User support email và nhấn nút NextTrong Audience, chọn External, sau đó nhấn nút Next
Trong Contact Information, nhập lại email, sau đó nhấp vào nút Next.
Trong Finish, đánh dấu vào ô để đồng ý với Google API Services: User Policy. Ở bước cuối cùng, nhấn nút Create.
Người dùng thử¶
Để cho phép người dùng đồng bộ với tài khoản Gmail cá nhân, họ phải được đặt làm người dùng thử. Thiết lập người dùng thử bằng cách vào Audience trong menu bên trái và nhấp vào nút Add users trong phần Test users. Nhập bất kỳ email người dùng nào mong muốn, rồi nhấn nút Save.
Tạo thông tin đăng nhập¶
Client ID và Client Secret đều cần thiết để kết nối Google Calendar với Odoo. Đây là bước cuối cùng trong Google console. Bắt đầu bằng cách nhấp vào Clients trong menu bên trái. Sau đó, nhấn Create Credentials, và chọn OAuth client ID, Google sẽ mở một hướng dẫn để tạo thông tin xác thực.
Dưới , chọn Website application cho trường Application Type, và nhập My Odoo Database cho Name.
Dưới phần Authorized JavaScript Origins, nhấp vào + Add URI và nhập địa chỉ URL đầy đủ của công ty trên Odoo.
Dưới phần Authorized redirect URIs, nhấn + Add URI và nhập địa chỉ URL của công ty trong Odoo, tiếp theo là
/google_account/authentication. Cuối cùng, nhấn Create.
Một Client ID và Client Secret sẽ xuất hiện, lưu chúng ở nơi an toàn.
Thiết lập trong Odoo¶
Sau khi đã định vị Client ID và Client Secret, mở cơ sở dữ liệu Odoo và chuyển đến để tìm tính năng Google Calendar. Đánh dấu vào ô kiểm có ghi Google Calendar.
Tiếp theo, sao chép và dán Client ID và Client Secret từ trang thông tin xác thực Google Calendar API vào các trường tương ứng của chúng dưới ô chọn Google Calendar. Sau đó, nhấn Save.
Ghi chú
Đánh dấu ô kiểm Pause Synchronization để tạm thời ngừng việc cập nhật các sự kiện. Điều này cho phép kiểm tra và khắc phục sự cố mà không cần gỡ bỏ thông tin xác thực hoặc gỡ cài đặt đồng bộ hóa. Để tiếp tục đồng bộ, bỏ đánh dấu ô kiểm và lưu.
Đồng bộ lịch trong Odoo¶
Cuối cùng, mở ứng dụng trong Odoo và nhấn nút đồng bộ Google để đồng bộ Google Calendar với Odoo.
Ghi chú
Khi đồng bộ Lịch Google với Odoo lần đầu tiên, trang sẽ chuyển hướng đến tài khoản Google. Từ đó, chọn Email Account cần có quyền truy cập, sau đó chọn Continue (nếu ứng dụng chưa được xác minh), và cuối cùng chọn Continue (để cho phép chuyển dữ liệu).
Bây giờ, Odoo Calendar đã được đồng bộ thành công với Google Calendar!
Cảnh báo
Odoo rất khuyến nghị thử nghiệm việc đồng bộ Google calendar trên một cơ sở dữ liệu thử nghiệm và một địa chỉ email thử (không được dùng cho mục đích nào khác) trước khi cố gắng đồng bộ Google Calendar mong muốn với cơ sở dữ liệu sản xuất của người dùng.
Khi người dùng đồng bộ lịch Google với lịch Odoo:
Tạo một sự kiện trong Odoo sẽ khiến Google gửi lời mời tới tất cả người tham dự sự kiện.
Xóa một sự kiện trong Odoo sẽ khiến Google gửi thông báo hủy cho tất cả người tham dự sự kiện.
Thêm một liên hệ vào sự kiện sẽ khiến Google gửi lời mời tới tất cả người tham dự sự kiện.
Xóa một liên hệ khỏi sự kiện sẽ khiến Google gửi thông báo hủy cho tất cả người tham dự sự kiện.
Có thể tạo sự kiện trong Google Calendar mà không gửi thông báo bằng cách chọn Don't Send khi được nhắc gửi email mời.
Khắc phục lỗi đồng bộ¶
Có thể vào một số thời điểm tài khoản Google Calendar không đồng bộ đúng cách với Odoo. Các vấn đề đồng bộ có thể được thấy trong log cơ sở dữ liệu.
Trong những trường hợp này, tài khoản cần được khắc phục sự cố. Có thể thực hiện đặt lại bằng nút Reset Account, có thể truy cập bằng cách điều hướng tới . Sau đó, chọn người dùng để chỉnh sửa lịch và nhấp vào thẻ Calendar.
Tiếp theo, nhấn Reset Account dưới lịch đúng.
Đặt lại tùy chọn¶
Các tùy chọn đặt lại sau có sẵn để khắc phục sự cố đồng bộ Google calendar với Odoo:
User's Existing Events:
Leave them untouched: không thay đổi các sự kiện.
Delete from the current Google Calendar account: xóa các sự kiện khỏi Google Calendar.
Delete from Odoo: delete the events from the Odoo calendar.
Delete from both: xóa các sự kiện khỏi cả Google Calendar và lịch Odoo.
Next Synchronization:
Synchronize only new events: đồng bộ các sự kiện mới trên Google Calendar và/hoặc lịch Odoo.
Synchronize all existing events: sync all events on Google Calendar and/or Odoo calendar.
Nhấn Confirm sau khi thực hiện lựa chọn để chỉnh sửa các sự kiện của người dùng và đồng bộ lịch.
Câu hỏi thường gặp về Google OAuth¶
Đôi khi có thể xảy ra lỗi cấu hình và cần khắc phục để giải quyết vấn đề. Dưới đây là các lỗi phổ biến nhất có thể xảy ra khi cấu hình Google Calendar để sử dụng với Odoo.
Trạng thái xuất bản (sản xuất vs kiểm thử)¶
Chọn Production làm Publishing Status (thay vì Testing) hiển thị thông báo cảnh báo sau:
OAuth is limited to 100 sensitive scope logins until the OAuth consent screen is verified. This may
require a verification process that can take several days.
Để khắc phục cảnh báo này, chuyển tới Google API Platform. Nếu Publishing Status là In Production, nhấp Back to Testing để khắc phục vấn đề.
Chưa có người dùng thử nào được thêm¶
Nếu không có người dùng thử nào được thêm vào OAuth consent screen, thì sẽ hiện ra một Error 403: access_denied.
Để khắc phục lỗi này, quay lại OAuth consent screen, dưới APIs & Services, và thêm người dùng thử vào ứng dụng. Thêm email sẽ được cấu hình trong Odoo.
Loại ứng dụng¶
Khi tạo thông tin xác thực (OAuth Client ID và Client Secret), nếu Desktop App được chọn cho Application Type, một Authorization Error sẽ xuất hiện (Error 400:redirect_uri_mismatch).
Để khắc phục lỗi này, xóa thông tin xác thực hiện có và tạo thông tin xác thực mới bằng cách chọn Web Application cho Application Type.
Sau đó, dưới Authorized redirect URIs, nhấn ADD URI, và nhập: https://yourdbname.odoo.com/google_account/authentication vào trường, chắc chắn thay yourdbname trong URL bằng tên cơ sở dữ liệu Odoo thực.
Mẹo
Đảm bảo rằng miền (được sử dụng trong URI: https://yourdbname.odoo.com/google_account/authentication) là cùng một miền chính xác như đã cấu hình trong tham số hệ thống web.base.url.
Truy cập web.base.url bằng cách kích hoạt developer mode, và điều hướng tới