Lark Open Platform: Tổng quan, Use Case và các loại ứng dụng
Lark Open Platform là chức năng đặc biệt trong Lark, tạo điều kiện thuận lợi cho các nhà phát triển và doanh nghiệp thoải mái trong việc tạo nên một ứng dụng Lark tùy chỉnh theo nhu cầu.
Mục lục
I. Giới thiệu tổng quan về Lark Open Platform
II. Các khái niệm cơ bản trong Lark Open Platform
1. Tiện ích mở rộng (Extension)
a. AppLink
AppLink là một giao thức mở cho phép các nhà phát triển tạo liên kết đến các chức năng cụ thể trong Lark Suite. Khi người dùng nhấp vào liên kết AppLink, họ sẽ được chuyển đến chức năng tương ứng trong Lark Suite, bất kể họ đang sử dụng ứng dụng Lark hay trình duyệt web.
Lợi ích của AppLink:
- Tăng hiệu quả: AppLink giúp người dùng truy cập nhanh chóng các chức năng họ cần trong Lark Suite, tiết kiệm thời gian tìm kiếm và thao tác.
- Cải thiện trải nghiệm người dùng: AppLink cung cấp trải nghiệm liền mạch cho người dùng, giúp họ chuyển đổi dễ dàng giữa các chức năng khác nhau trong Lark Suite.
- Mở rộng khả năng: AppLink cho phép các nhà phát triển tạo các ứng dụng web có thể tương tác với Lark Suite, mở rộng khả năng của Lark Suite và đáp ứng nhu cầu cụ thể của người dùng.
Cách thức hoạt động của AppLink:
- AppLink sử dụng một URL đặc biệt để xác định chức năng cụ thể trong Lark Suite.
- Khi người dùng nhấp vào liên kết AppLink, trình duyệt web sẽ kiểm tra xem Lark Suite đã được cài đặt trên thiết bị của họ hay chưa.
- Nếu Lark Suite đã được cài đặt, trình duyệt web sẽ mở Lark Suite và chuyển đến chức năng tương ứng với URL AppLink.
- Nếu Lark Suite chưa được cài đặt, trình duyệt web sẽ mở trang web Lark Suite và hiển thị thông tin về chức năng tương ứng với URL AppLink.
Ứng dụng của AppLink:
AppLink có thể được sử dụng cho nhiều mục đích khác nhau, bao gồm:
- Tạo liên kết đến các cuộc trò chuyện, kênh, nhóm trong Lark Suite.
- Tạo liên kết đến các tài liệu, bảng tính, wiki trong Lark Suite.
- Tạo liên kết đến các ứng dụng web được tích hợp với Lark Suite.
- Tạo liên kết đến các chức năng quản trị trong Lark Suite.
2. Message Card
Message Card là một định dạng tin nhắn tương tác cho phép hiển thị nội dung phong phú và thực hiện các hành động trực tiếp trong tin nhắn. Message Cards có thể được sử dụng trong các ứng dụng chat, email, và các nền tảng khác để cung cấp trải nghiệm người dùng trực quan và hiệu quả.
Cách thức hoạt động của Message Card:
- Message Card được định nghĩa bằng JSON, một định dạng dữ liệu đơn giản và dễ đọc.
- Message Card có thể được hiển thị trong các ứng dụng chat, email, và các nền tảng khác hỗ trợ định dạng này.
- Khi người dùng nhận được Message Card, họ có thể xem nội dung và thực hiện hành động trực tiếp trong tin nhắn.
Use case: Truyền đạt thông tin, gửi báo cáo kinh doanh hiệu quả với "bot + message cards"
-
Hệ thống ứng dụng của bên thứ ba
-
Hệ thống ứng dụng do doanh nghiệp thiết kế & xây dựng
-
Soạn thảo nội dung thông báo phong phú: Với nhiều tính năng soạn thảo đa dạng từ chỉnh sửa kiểu chữ, màu sắc, tạo bố cục đồ họa trực quan đến thêm hình ảnh vào tin nhắn, Lark Suite cho phép người dùng tạo các thẻ tin nhắn có nội dung bắt mắt và hấp dẫn. Lark cũng cung cấp các template có sẵn cho các loại thẻ tin nhắn phổ biến như Chúc mừng sinh nhật, Kỷ niệm ngày vào làm việc tại công ty, Event Promotion, Bảng xếp hạng nhân viên,...
-
Tạo nút tương tác: Lark cho phép người dùng tạo các nút tương tác trong hệ thống như phê duyệt, vote, xử lý thông báo trực tiếp trong phiên trò chuyện mà không cần rời khỏi Lark.
2. Danh tính người dùng & Mã thông báo truy cập
a. Danh tính người dùng (User Identification)
User Identification (Nhận dạng người dùng) là khái niệm quan trọng trong việc phát triển ứng dụng cho Lark Suite. Lark Suite sử dụng nhiều loại ID để xác định người dùng, mỗi loại ID có mục đích sử dụng riêng.
- Danh tính người dùng vật lý (lark_id), còn được gọi là ID toàn cầu: Đây là ID duy nhất của bạn trên toàn bộ nền tảng Lark. Nó được sử dụng để xác định bạn trên tất cả các ứng dụng và dịch vụ của Lark.
- Danh tính người dùng trong một đơn vị (user_id): ID này xác định bạn trong một tổ chức cụ thể sử dụng Lark (như công ty của bạn). Ví dụ, bạn có thể có user_id khác nhau cho công ty của bạn và cho trường học của bạn.
- Danh tính người dùng trong một ứng dụng (open_id): ID này xác định bạn cụ thể trong một ứng dụng duy nhất trên Lark. Ví dụ, bạn có thể có open_id khác nhau cho ứng dụng Chat và ứng dụng Calendar.
- Danh tính thống nhất trên nhiều ứng dụng do cùng một nhà cung cấp ứng dụng phát triển (union_id): Nếu một công ty tạo nhiều ứng dụng trên Lark, ID này có thể nhận ra bạn trên tất cả các ứng dụng của họ, ngay cả khi bạn có thể có ID ứng dụng riêng cho từng ứng dụng. Ví dụ, nếu công ty Acme tạo ứng dụng Acme Chat và Acme Calendar, union_id của bạn sẽ cho phép bạn đăng nhập vào cả hai ứng dụng bằng cùng một thông tin đăng nhập.
b. App Authentication
Hệ thống phân quyền của Lark đóng vai trò then chốt trong việc bảo vệ dữ liệu công ty và là yếu tố quan trọng nhà phát triển cần nắm khi xây dựng ứng dụng trên nền tảng này. Hệ thống phân quyền ứng dụng của Lark hoạt động dựa trên 3 yếu tố chính:
- Mã truy cập (Access Token): Xác minh danh tính ứng dụng khi truy cập Lark, đại diện cho quyền hạn do nền tảng cấp. Nó kiểm tra danh tính người gọi và đảm bảo quyền cho các hoạt động.
- Phạm vi (Quyền API): Xác định các API của Lark mà ứng dụng có thể gọi. Quyền API được cấp cho từng ứng dụng, mỗi ứng dụng quản lý các giao diện riêng. Nếu nhiều ứng dụng cần gọi cùng một API, mỗi ứng dụng cần thêm quyền API tương ứng.
- Tính khả dụng: Xác định người dùng nào có thể xem và sử dụng ứng dụng trong Lark.
Trong 3 yếu tố, mã truy cập cung cấp xác thực phân quyền cơ bản nhất bằng cách xác minh danh tính và phạm vi ứng dụng. Quyền API kiểm soát chính xác các API mở của Lark mà ứng dụng có thể sử dụng. Tính khả dụng xác định nhóm người dùng có thể nhìn thấy và sử dụng ứng dụng.
c. Đăng nhập tự động
Các ứng dụng trên Lark Open Platform có khả năng tạo tiện ích (gadget), trang web và bot. Tiện ích và trang web có thể được mở trong Trung tâm ứng dụng (App Center). Ngoài ra, các trang web cũng có thể được mở thông qua liên kết trong khung chat. Trong trường hợp này, WebView được khởi chạy trên thiết bị di động, trong khi trình duyệt hệ thống được kích hoạt trên PC.
Với khả năng xác thực của Open Platform, các ứng dụng có thể xác định người dùng để đăng nhập. Xác thực cho phép người dùng tự động đăng nhập vào trang web ở phía client. Tuy nhiên, người dùng truy cập trang web qua trình duyệt cần đăng nhập bằng cách quét mã QR hoặc nhập mật khẩu. Khả năng xác thực của Lark Open Platform được hỗ trợ trong 4 trường hợp sau:
- Tự động đăng nhập vào tiện ích
- Đăng nhập vào trang web từ trình duyệt
- Tự động đăng nhập vào trang web ở phía client
- Tự động đăng nhập vào trang quản trị ứng dụng
d. Nhận mã thông báo truy cập (Access Token)
Để cải thiện tính bảo mật của API, Lark sử dụng cơ chế mã thông báo truy cập. Khi gọi API, mã thông báo truy cập sẽ xác thực danh tính và quyền của người gọi. Điều này cho Lark biết ai đang truy cập vào dữ liệu và tài nguyên ứng dụng.
Mã thông báo truy cập là chìa khóa để truy cập vào Nền tảng mở Lark (Lark Open Platform), ràng buộc danh tính người gọi cũng như tất cả các quyền truy cập dữ liệu và lệnh gọi API mà ứng dụng có được, cho phép ứng dụng thực hiện các thao tác đọc và ghi trên tài nguyên. Các nhà phát triển nên hiểu rõ về cơ chế mã thông báo truy cập của Lark trước khi bắt đầu phát triển chính thức.
Lark Open Platform cung cấp các loại Access Token khác nhau để xác thực ứng dụng. Bạn cần chọn loại phù hợp với mục đích sử dụng:
- tenant_access_token (Không cần xác nhận người dùng): Ứng dụng thực hiện tác vụ thay mặt cho cả doanh nghiệp hoặc nhóm (tenant), ví dụ lấy thông tin liên lạc.
- user_access_token (Cần xác nhận người dùng): Ứng dụng thực hiện tác vụ thay mặt cho người dùng, ví dụ tạo tài liệu hoặc lịch.
- app_access_token (Không cần xác nhận người dùng): Ứng dụng thực hiện tác vụ theo quyền hạn của chính nó, không liên quan đến doanh nghiệp hay người dùng cụ thể, ví dụ lấy thông tin người dùng đang đăng nhập.
3. Các loại ứng dụng và Quy trình phát triển các loại ứng dụng
a. Lark Application là gì?
Ứng dụng Lark là phương tiện mà các nhà phát triển sử dụng để cung cấp dịch vụ cho người dùng nội bộ hoặc bên ngoài. Chúng thường ở dạng bots, webapps (ứng dụng web), gadgets (tiện ích), v.v. Ứng dụng Lark có thể tận dụng toàn bộ nền tảng Lark, cho phép tạo ra các trải nghiệm nâng cao, tùy chỉnh và mạnh mẽ hơn trong Lark.
Sau khi tham gia Lark Open Platform, các nhà phát triển có thể tạo ứng dụng và xin cấp quyền truy cập vào các tính năng đa dạng của Lark. Quá trình phát triển có thể được tùy chỉnh thông qua các API call (gọi API) hoặc nhúng SDK (bộ công cụ phát triển phần mềm), giúp tích hợp nhiều tính năng mở của Lark. Nhờ đó, các nhà phát triển có thể xây dựng ứng dụng văn phòng cá nhân hóa theo nhu cầu thực tế, từ đó tạo ra phương thức làm việc hiệu quả.
b. Các loại ứng dụng
Có 2 cách phân loại ứng dụng trên Lark Open Platform.
Cách 1: Theo phương pháp triển khai, ứng dụng có thể được chia thành 2 loại:
- Ứng dụng tùy chỉnh: Được phát triển bởi nhân viên nội bộ hoặc nhà phát triển được ủy quyền trong doanh nghiệp, những ứng dụng này chỉ có thể được phát hành và sử dụng bởi nhân viên nội bộ trong doanh nghiệp.
- Ứng dụng trên cửa hàng: Được phát triển bởi nhà cung cấp dịch vụ bên thứ ba, các ứng dụng này được xuất bản trong Lark App Directory và có thể được cài đặt và sử dụng bởi tất cả người mua Lark.
Cách 2: Theo chức năng, ứng dụng có thể được chia làm 4 loại: Bot, Web app, Gadget/ Mini app và Workplace Block.
- Bot: Tương tác với người dùng trong chat, lấy dữ liệu, gửi/trả lời tin nhắn, truy cập Lark Open API.
- Webapp: Thường xuyên cập nhật nội dung, di chuyển ứng dụng h5 hiện có.
- Gadget/Miniapp: Mô-đun phức tạp, yêu cầu sử dụng điện thoại/chức năng Lark, mang lại trải nghiệm người dùng mượt mà và nguyên bản.
Nhiều ứng dụng phổ biến trong Lark Workplace chính là các tiện ích Lark (Lark Gadget) hoặc ứng dụng web Lark (Lark webapp), chẳng hạn như Lark Approval và Lark Help Center. Lark có thể tích hợp nhiều loại ứng dụng tùy chỉnh (custom app) khác nhau:
Các loại
|
Bot
|
H5
|
Workbench Block
|
Gadget
|
Demo
|
|
|
|
|
Tình huống sử dụng
|
Ứng dụng tương tác với người dùng trong chat, tự động gửi tin nhắn cho người dùng hoặc nhóm, trả lời tin nhắn của người dùng và quản lý nhóm.
|
Nhanh chóng tích hợp các ứng dụng web hiện có, sau đó người dùng có thể nhanh chóng truy cập chúng mà không cần đăng nhập.
|
Thêm biểu đồ dữ liệu, văn bản, hình ảnh và các thông tin khác vào workbench.
|
Ứng dụng có thể chạy trong Lark và gọi các thành phần Lark để đạt được trải nghiệm tương tự ứng dụng gốc (native).
|
Công cụ lập trình
|
Phát triển hoàn toàn trên server, với Message Card Builder được cung cấp
|
Công cụ dành cho nhà phát triển Lark
|
Công cụ dành cho nhà phát triển Lark
|
Công cụ dành cho nhà phát triển Lark
|
Tài nguyên lập trình
|
c. Quy trình phát triển các loại ứng dụng
Ứng dụng tùy chỉnh (Custom App)
Quá trình phát triển và triển khai cho một ứng dụng tùy chỉnh như sau.
Mở hình ảnh bằng tab mới để xem rõ hơn
Năng lực mở Lark cung cấp các API và SDK, tài liệu hướng dẫn, hỗ trợ kỹ thuật giúp các nhà phát triển dễ dàng tạo ứng dụng tùy chỉnh theo nhu cầu cụ thể của mình (custom app) và truy cập vào hệ thống REST API của Lark Suite, qua đó tích hợp liền mạch các ứng dụng này với các dịch vụ hiện có của Lark. Hệ thống REST API này bao gồm:
- Server side API: Cho phép các hệ thống bên ngoài hoặc ứng dụng tùy chỉnh truy cập và sửa đổi dữ liệu trên Lark.
- Client side API: Bao gồm SDK và các thành phần gadget để xây dựng ứng dụng tùy chỉnh chạy navtive trên Lark. Doanh nghiệp có thể tích hợp các ứng dụng này với các dịch vụ hiện có của Lark Suite.
Lark Open Platform cung cấp nhiều API cho các dịch vụ khác nhau của Lark Suite. Doanh nghiệp có thể gọi nhiều chức năng của mô-đun Lark, bao gồm Lark Docs, bảng tính đa chiều, sổ địa chỉ (address books), tin nhắn, tác vụ (tasks), thẻ người dùng (user cards), v.v., trong các hệ thống hiện có và các ứng dụng mới.
Ngoài ra, hiện tại Lark cũng đang cung cấp các ứng dụng tùy chỉnh cho các tình huống kinh doanh khác nhau. Các giải pháp này giúp thúc đẩy quá trình chuyển đổi kỹ thuật số cho doanh nghiệp và thuộc 4 lĩnh vực chính sau:
- Nhân sự
- Quản lý dự án
- Quản lý văn phòng
- Hiệu suất làm việc
Ứng dụng trên Store (Lark App Directory)
Các ứng dụng trong cửa hàng được Nhà cung cấp phần mềm độc lập (ISV) phát triển dựa trên khả năng mở của Lark và được liệt kê trong Lark App Directory để các doanh nghiệp trên Lark sử dụng.
ISV có thể phát huy các khả năng độc đáo của mình tới nhiều người dùng thông qua nền tảng Lark, tạo điều kiện phổ biến rộng rãi. Các ứng dụng trên Store cần được nhóm chính thức của Lark xem xét trước khi được liệt kê trong thư mục ứng dụng.
Tại Việt Nam, Tanca đã trở thành ứng dụng đầu tiên góp mặt trên Lark App Directory toàn cầu của Lark với sự hỗ trợ của Rikkei Digital. Quản trị viên doanh nghiệp và người dùng có thể dễ dàng tìm kiếm và cài đặt các ứng dụng này thông qua Lark App Directory. Với tư cách là nhà phát triển ứng dụng, Lark App Directory có thể giúp bạn có được khách hàng doanh nghiệp và doanh thu từ trong nước.
Quá trình phát triển và niêm yết ứng dụng trên cửa hàng như sau:
>> Xem thêm: Lark App Directory - Chợ ứng dụng giúp tích hợp Lark Suite với các ứng dụng tiềm năng