Tài liệu này mô tả dịch vụ công việc theo lịch trong Fleet Engine. Giả định bạn đã đọc Fleet Engine là gì? và biết rõ về Fleet cụ thể Khả năng bảo dưỡng công cụ mà bạn cần.
Khi bạn đọc tài liệu này, hãy ghi nhớ những điều sau:
- Bạn tạo nhiệm vụ và liên kết chúng với một trạm xe như một cách để mô hình hoá mối liên kết thực tế giữa nhiệm vụ và vị trí mà xe dự kiến sẽ dừng để người lái có thể hoàn tất nhiệm vụ. Hãy đọc bài viết Giới thiệu về phương tiện di chuyển để tìm hiểu rõ hơn tìm hiểu cách hoạt động của xe trong Fleet Engine.
- Fleet Engine cho các tác vụ theo lịch sẽ sử dụng các tài nguyên sau:
Task
vàDeliveryVehicle
. Fleet Engine cung cấp cả dịch vụ gRPC và REST giao diện:
Việc cần làm đã lên lịch là gì?
Một nhiệm vụ đã lên lịch trong Fleet Engine thể hiện một hành động riêng lẻ cần thực hiện được một người lái xe thực hiện bằng cách sử dụng một chiếc xe trong bối cảnh rộng hơn của một hoạt động vận tải. Tệp này xác định mục tiêu cụ thể cho người lái xe. Ví dụ:
- để cung cấp một lợi ích cho một khu vực cư trú
- để nhận một gói hàng để trả lại kho hàng
- dừng lại tại một địa điểm để cung cấp dịch vụ tại chỗ cho khách hàng
- để dừng theo lịch trình để tiếp nhiên liệu cho xe
Phần tử việc cần làm
Hình ảnh sau đây minh hoạ các thành phần của nhiệm vụ này theo lịch biểu chuẩn hành trình của một chiếc xe.
Trường tác vụ cơ bản
Trường | Mô tả |
---|---|
Loại | Xác định loại thao tác được liên kết với tác vụ. |
Mã việc cần làm | Một chuỗi xác định duy nhất tác vụ trong hệ thống. |
Vị trí dự kiến | Chỉ định vị trí dự kiến nơi tác vụ sẽ được thực hiện. Vị trí này không phải lúc nào cũng giống với vị trí dự kiến cho điểm dừng xe. |
Tiểu bang | Cho biết tác vụ đang mở hay đóng. |
Kết quả nhiệm vụ | Cho biết tác vụ thành công hay không thành công. |
Mô hình dữ liệu cho công việc
Các biểu đồ sau đây minh hoạ mô hình dữ liệu của tài nguyên Task
cùng với sơ đồ cho tài nguyên DeliveryVehicle
liên kết. Bạn có thể
xem xét cả hai biểu đồ để khám phá mối quan hệ giữa hai tài nguyên,
hãy lưu ý những điều sau:
- Vị trí dự kiến: Cả trạm xe và nhiệm vụ đều có vị trí đã lên kế hoạch,
khác nhau.
- Đối với nhiệm vụ, vị trí đã lên kế hoạch cho biết nơi người lái xe thực hiện hành động xảy ra. Ví dụ: 15 kiện hàng giao đến một khu dân cư lớn cần gửi đến các địa điểm khác nhau của phòng gửi thư trong phức tạp đó.
- Đối với trạm dừng xe, vị trí dự kiến cho biết điểm dừng cho trong khi người lái xe hoàn thành nhiệm vụ. Ví dụ: một xe dừng tại lối vào một khu phức hợp và người lái xe vận chuyển các gói hàng theo cách thủ công đến các phòng thư riêng biệt trong khu phức hợp.
- Trạng thái: Cả nhiệm vụ và trạm dừng xe đều có trường trạng thái, khác với
với nhau.
- Trạng thái của trạm dừng xe phản ánh tiến trình của xe trong liên quan đến điểm dừng, dùng để theo dõi đội xe.
- Trạng thái của tác vụ cho biết tác vụ đó có đang hoạt động hay không. Chiến dịch này tác động đến các thao tác khác cần thực hiện trong các nhiệm vụ, chẳng hạn như đặt kết quả hoặc chỉ định quảng cáo đó cho một chiếc xe.
Kết quả tác vụ: Kết quả tác vụ là trường quan trọng trong mô hình dữ liệu, bởi vì nó được dùng để cho biết sự thành công hay thất bại của một nhiệm vụ, độc lập với về trạng thái tác vụ.
Mã nhận dạng:
- Khi bạn giao một nhiệm vụ cho một chiếc xe, công cụ Fleet sẽ điền vào
Trường
deliveryVehicleId
. Trường chỉ đọc này cho biết xe cần công việc được giao. - Mã việc cần làm là giá trị nhận dạng duy nhất cho tất cả các nhiệm vụ trong hệ thống của bạn.
- Mã theo dõi xác định một công việc để theo dõi quá trình vận chuyển.
- Khi bạn giao một nhiệm vụ cho một chiếc xe, công cụ Fleet sẽ điền vào
Trường
Mô hình dữ liệu của Tasks
Mô hình dữ liệu về xe
Mã việc cần làm
Tương tự như mã xe trong Fleet Engine, mỗi nhiệm vụ phải chứa một mã nhận dạng để
giúp phân biệt chúng với các nhiệm vụ khác trong hệ thống. Bạn tham chiếu và quản lý
tất cả các tác vụ trong quy trình làm việc của bạn theo ID của chúng. Bạn tạo các ID này bằng cách sử dụng
CreateTaskRequest
và bằng cách cung cấp một chuỗi mã nhận dạng tuân theo
được mô tả trong phần này.
Sau đó, chuỗi này bao gồm một phần tên của chính tài nguyên công việc, một
trường chỉ đầu ra trên đối tượng Task
. Điều này tương tự như cách Fleet Engine
tạo tài nguyên tên xe. Xem phần Đặt tên tài nguyên trong
Giới thiệu về Fleet Engine.
Thuộc tính | Mô tả |
---|---|
Điểm đặc biệt | Mỗi mã nhiệm vụ phải là duy nhất trong quá trình triển khai Fleet Engine để tránh nhầm lẫn và đảm bảo nhận dạng chính xác. |
Định dạng |
|
Ví dụ về mã công việc phù hợp |
|
---|---|
Mã công việc không được phép |
|
Loại việc cần làm
Fleet Engine hỗ trợ nhiều loại tác vụ để thể hiện nhiều hành động trong một hoạt động vận tải. Chúng được mô tả ở đây cùng với khả năng hiển thị và thông tin thanh toán.
Loại việc cần làm | Mô tả | Chế độ hiển thị theo dõi quá trình vận chuyển | Đã lập hoá đơn |
---|---|---|---|
Nhiệm vụ phân phối | Dùng để bỏ hàng hoặc hoàn tất một công việc cho khách hàng. | Người tiêu dùng có thể xem và theo dõi thông tin này. | Có |
Nhiệm vụ đến lấy hàng | Dùng để cho biết khách hàng đến lấy hàng. Bạn phải có nhiệm vụ phân phối tương ứng cho mọi nhiệm vụ đến lấy hàng. | Người tiêu dùng có thể xem và theo dõi thông tin này. | Không |
Nhiệm vụ không sẵn có | Xác định rằng xe không hoạt động để bảo dưỡng, chẳng hạn như khi tài xế nghỉ giải lao hoặc đổ xăng cho xe. | Không hiển thị cho người tiêu dùng. | Không |
Tác vụ dừng theo lịch | Nhiệm vụ không phân phối yêu cầu phải dừng tại một vị trí cụ thể. Sử dụng thao tác dừng theo lịch cho các lượt thu thập hình ảnh đã lên lịch hằng ngày, và sẽ dừng tại một vị trí cụ thể, độc lập với các hoạt động giao hàng hoặc đến lấy hàng khác tại cùng một vị trí. Bạn cũng có thể tạo nhiệm vụ dừng theo lịch cho các bộ sưu tập từ hộp thả xuống hoặc để lập mô hình chuyển xe trung chuyển hoặc dừng tại trung tâm dịch vụ và điểm dịch vụ. | Người tiêu dùng không thể theo dõi tác vụ cụ thể này, nhưng có thể xem nó như một phần của quá trình theo dõi các tác vụ khác. | Không |
Vòng đời của nhiệm vụ và hành trình
Phần này trình bày thông tin chi tiết về vòng đời tác vụ phân phối trong Nhóm Công cụ. Vòng đời tác vụ được kết nối với hành trình của xe vì xe phải dừng lại để người lái xe hoàn thành công việc ở vị trí dự kiến.
1. Tạo việc cần làm
Khi tạo một nhiệm vụ lần đầu trong Fleet Engine, bạn sẽ đặt nhiều trường khác nhau cho nhiệm vụ một cách độc lập với việc liên kết chúng với một điểm dừng.
Thuộc tính | Mô tả |
---|---|
Tiểu bang | Đặt thành MỞ |
ID | Đặt công việc và mã theo dõi nếu bạn sử dụng tính năng theo dõi lô hàng đối với người tiêu dùng. |
Thời gian | Thời lượng dự kiến cho tác vụ và khoảng thời gian mục tiêu của tác vụ. Xem Thời gian của tác vụ để biết thông tin chi tiết. |
Vị trí dự kiến | Đặt toạ độ địa lý chính xác nơi cần thực hiện công việc đã hoàn tất. |
2. Giao việc cần làm
Khi giao một nhiệm vụ cho một chiếc xe, bạn làm việc đó cùng với một chiếc xe dừng. Điểm dừng là toạ độ theo vĩ độ/kinh độ cho biết vị trí mà xe đỗ trong khi người lái xe hoàn thành các nhiệm vụ liên quan đến điểm dừng. Các điểm dừng thường là một điểm ra vào, chẳng hạn như một bến bãi bốc hàng hoặc một con đường vị trí.
3. Đang thực hiện
Trạng thái của tác vụ sẽ là MỞ hoặc ĐÃ ĐÓNG CỬA. Tuy nhiên, sau khi giao nhiệm vụ cho một chiếc xe, bạn có thể theo dõi tiến trình của thiết bị đó thông qua mối liên kết với chiếc xe đó và vị trí của chiếc xe đó với điểm dừng thực hiện nhiệm vụ đã hoàn tất.
Khi xe khởi hành từ điểm dừng hoặc bắt đầu đi theo chỉ dẫn, trạng thái của
điểm dừng sẽ đổi thành ENROUTE
. Bằng cách này, tính năng theo dõi lô hàng của người tiêu dùng có thể
cập nhật thông tin ước tính và số điểm dừng còn lại cho người nhận của một nhiệm vụ
thời gian đến. Công cụ này cũng hỗ trợ mọi hình ảnh trực quan hoá theo thời gian thực cho người tiêu dùng
theo dõi quá trình vận chuyển hoặc theo dõi đội xe.
4. Đến và kết quả nhiệm vụ
Khi xe đến điểm dừng, trạng thái của điểm dừng phải được đặt thành
ARRIVED
. Cũng giống như trạng thái dừng ENROUTE
, điều này không ảnh hưởng đến trạng thái của
chính tác vụ đó, nhưng vẫn hỗ trợ cả thông báo cho người tiêu dùng và mọi thời gian
báo cáo về hoạt động theo dõi hệ thống thiết bị mà nhà điều hành đội xe của bạn sử dụng. Thao tác này cũng sẽ kích hoạt sau này
số liệu phân tích và báo cáo về hoạt động bạn muốn sử dụng để phân phối
tối ưu hoá.
Sau khi xe dừng lại, hệ thống có thể xử lý phần còn lại của nhiệm vụ bằng một trong các phương pháp sau:
Đóng việc cần làm khi đã hoàn thành.
Khi người lái xe đánh dấu nhiệm vụ là hoàn thành, hệ thống của bạn có thể xoá nhiệm vụ đó khỏi dừng lại, nhưng rời khỏi điểm dừng với các nhiệm vụ khác được giao cho nó.
Xoá toàn bộ trạm dừng khỏi xe.
Sau khi người lái xe đánh dấu tất cả các nhiệm vụ là đã hoàn thành và xe đang trên đường đến điểm dừng tiếp theo, bạn có thể loại bỏ toàn bộ điểm dừng đó khỏi xe. Động cơ đội tàu tự động đóng tất cả nhiệm vụ được liên kết với một điểm dừng đã bị xoá.
Việc đóng một tác vụ không cho biết thành công hay thất bại
Việc đóng một công việc chỉ cho biết rằng công việc đó không còn được xem là đang thực hiện nữa.
Đối với các tác vụ ở trạng thái CLOSED
, bạn thiết lập kết quả của chúng thành SUCCEEDED
hoặc
FAILED
. Điều này vừa cần thiết vừa thể hiện kết quả thực tế cho việc vận chuyển
theo dõi và thanh toán phù hợp. Fleet Engine chỉ tính phí các nhiệm vụ giao hàng bằng
trạng thái của SUCCEEDED.
Sau khi đặt kết quả cho việc cần làm, bạn sẽ không thể thay đổi kết quả đó
Khi đánh dấu kết quả của một nhiệm vụ, Fleet Engine sẽ tự động điền vào nhiệm vụ đó vị trí của kết quả cùng với vị trí chiếc xe đã biết gần đây nhất. Tuy nhiên, bạn có thể sửa đổi thời gian kết quả nhiệm vụ và vị trí kết quả nhiệm vụ sau khi chúng được đặt và Fleet Engine sẽ không ghi đè các trường này.
5. Các tình huống tác vụ khác
Không phải nhiệm vụ nào bạn lập mô hình trong Fleet Engine đều phù hợp với quy trình thông thường. Ví dụ:
- Nhiệm vụ đến lấy hàng. Khi bạn có nhiệm vụ đến lấy hàng để trả lại gói hàng vào kho để xử lý sau, bạn nên tạo một tệp giao hàng cho gói hàng đó, với vị trí dự kiến được thiết lập là kho hàng. Nếu không, nhiệm vụ đến lấy hàng thường sẽ tuân theo cùng một quy trình như đối với nhiệm vụ phân phối.
- Giao lại việc cần làm. Bạn không thể trực tiếp giao lại việc cần làm cho một chiếc xe. Thay vào đó, để di chuyển một việc cần làm từ xe này sang xe khác, hãy đóng nhiệm vụ ban đầu, sau đó tạo lại trước khi giao chiếc xe mới. Nếu bạn cập nhật thứ tự tác vụ cho một tác vụ đã được giao cho xe khác, thì Fleet Engine sẽ gặp lỗi.
- Xoá việc cần làm. Tương tự như với phương tiện di chuyển, Fleet Engine sẽ xoá những nhiệm vụ chưa đã được cập nhật sau 7 ngày. Nếu bạn cố gắng sử dụng lại mã công việc cho một công việc đã đã đóng trước đó, Fleet Engine sẽ trả về lỗi nếu mã đó đã được sử dụng trong vòng 7 ngày qua. Ngược lại, nếu bạn muốn lưu giữ dữ liệu công việc lâu hơn hơn 7 ngày, bạn phải tự triển khai khả năng đó, chẳng hạn như thông qua một công việc đã lên lịch để đặt lại đồng hồ 7 ngày.
Chia sẻ hành trình công việc
Nhờ tính năng chia sẻ hành trình của nhiệm vụ trong Fleet Engine, bạn có thể theo dõi tiến trình của nhiệm vụ trong thời gian thực và chia sẻ hành trình của người lái xe theo hai cách chính:
- Chia sẻ hành trình của người tiêu dùng để người tiêu dùng biết trạng thái của khách hàng đơn vận chuyển hoặc yêu cầu dịch vụ.
- Theo dõi đội phương tiện để các đơn vị vận hành đội xe của bạn theo dõi và phân tích trạng thái phương tiện trong đội phương tiện vận chuyển.
Chia sẻ hành trình của người tiêu dùng
Để tích hợp tính năng chia sẻ hành trình của người tiêu dùng vào hoạt động của bạn, hãy thiết lập hành trình bằng cách sử dụng JavaScript Consumer SDK. Với SDK, bạn có thể cải thiện trải nghiệm trực quan trên web hoặc ứng dụng dành cho thiết bị di động để người tiêu dùng có thể theo dõi trạng thái thông tin về thời gian giao hàng dự kiến và thông tin cập nhật vị trí theo thời gian thực cho xe giao hàng. Xem bài viết Tổng quan về tính năng chia sẻ hành trình của người tiêu dùng trong việc cần làm đã lên lịch.
SDK chia sẻ hành trình của người tiêu dùng chứa một bản đồ JavaScript và các thành phần dữ liệu
để kết nối với Fleet Engine. Bản đồ là một lượt ghé thăm thay thế cho
đối tượng google.maps.Map
chuẩn. Khách hàng phải xác thực phía bạn
người dùng và sử dụng vai trò người tiêu dùng Phân phối từ dự án Google Cloud của bạn để
chỉ trả lại thông tin của khách hàng cụ thể. Lọc và loại bỏ tất cả các bộ lọc của Fleet Engine
thông tin khác trong câu trả lời. Ví dụ: trong khi thực hiện một nhiệm vụ không có sẵn,
thông tin vị trí sẽ không được chia sẻ với người dùng cuối.
Trong Fleet Engine, hãy bật các chế độ cài đặt sau đây cho hành trình của người tiêu dùng đang chia sẻ:
- Tasks sử dụng thuộc tính
TaskTrackingViewConfig
. Không bắt buộc. - Tác vụ sử dụng mã theo dõi mà thư viện cần xác định là có liên quan nhiệm vụ cho người tiêu dùng.
Theo dõi đội phương tiện vận chuyển
Thư viện theo dõi nhóm JavaScript cho phép bạn trực quan hoá vị trí của
trong đội ngũ của họ gần như theo thời gian thực. Thư viện sử dụng
Fleet Engine API để cung cấp hình ảnh về xe giao hàng cũng như
nhiệm vụ được giao của họ. Giống như SDK dành cho người dùng JavaScript, SDK này chứa JavaScript
thành phần bản đồ thay thế cho một google.maps.Map
tiêu chuẩn
có thành phần dữ liệu mà bạn dùng để kết nối với Fleet Engine.
Thư viện này cho thấy khả năng hiển thị của các phương tiện giao hàng ngay khi chúng xuất hiện được tạo trong Fleet Engine. Để triển khai, bạn sử dụng Fleet Engine Vai trò Cloud IAM của dịch vụ người dùng cao cấp và bạn cung cấp thông báo xác nhận quyền sở hữu bằng Mã thông báo web Java cho quyền truy cập vào xe giao hàng và các nhiệm vụ liên quan của chúng.
Các trường hợp về việc cần làm đã lên lịch
Phần này trình bày nhiều tình huống tác vụ nhằm tóm tắt thông tin được cung cấp ở điểm này trong hướng dẫn. Khoá học này nhằm giúp bạn nắm được có nhiều cách để lập mô hình hoạt động vận tải trong Fleet Engine, tuỳ thuộc vào doanh nghiệp của bạn.
Giao hàng có theo dõi
Tình huống phân phối này cho thấy một nhiệm vụ dừng theo lịch
được chỉ định cho kho vào cả thời điểm xuất phát từ kho vào đầu ngày
hành trình và đến kho hàng vào cuối hành trình. Điều này cũng
hiển thị hai tác vụ phân phối cho một điểm dừng, một trong số đó không thành công. Dùng bản thảo này
để bật tính năng theo dõi từ và đến kho và như một cách để lập mô hình
thời gian bắt đầu và thời gian kết thúc trong ngày. Không có quyền thanh toán
xảy ra với các nhiệm vụ ngừng hoạt động theo lịch.
Đến lấy hàng bằng dịch vụ giao hàng tại kho hàng
Tình huống này cho biết cách lập mô hình một lượt bán hàng bằng cần có nhiệm vụ phân phối tương ứng. Bạn đặt trường hợp trả lại hàng về kho dưới dạng một phân phối cho mục đích thanh toán.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/maps/documentation/mobility/fleet-engine/essentials/images/taskScenarioPickup.png?authuser=0000&hl=vi)
Xe nạp liệu
Tình huống này cho thấy hai gói phân phối có thời gian dừng được lên lịch ở giữa trong xe trung chuyển hàng, dùng để giúp xe giao hàng quay lại kho hàng để gửi một số gói hàng. Bạn cũng có thể lập mô hình xe trung chuyển với thời gian dừng theo lịch.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/maps/documentation/mobility/fleet-engine/essentials/images/taskScenarioFeeder.png?authuser=0000&hl=vi)
Thời gian tác vụ
Việc lập mô hình thời gian công việc giúp lên kế hoạch tuyến đường, giờ đến dự kiến và quản lý hiệu quả kỳ vọng được phân phối. Fleet Engine cung cấp 2 chức năng chính để lập mô hình và dự đoán thời gian tác vụ, như được mô tả trong phần này.
Thời lượng của việc cần làm
Thời lượng cho việc cần làm được đặt bằng trường task_duration
, đây là trường bắt buộc
mô hình hoá thời gian dự kiến mà người lái xe dành để hoàn thành nhiệm vụ tại một điểm dừng
hoặc để nghỉ ngơi. Đối với điểm dừng, thông tin này bao gồm tất cả các hoạt động cần thiết
sau khi đến một điểm dừng, chẳng hạn như dỡ gói hàng và tương tác với
người nhận. Thông tin này càng cụ thể thì Fleet Engine càng chính xác
cung cấp thời gian đến và giờ đến dự kiến thực tế cho các điểm dừng tiếp theo trong hành trình.
Để biết thông tin chi tiết về trường, hãy xem phần Thời lượng trong Tài liệu về vùng đệm giao thức.
Khoảng thời gian mục tiêu
Thời gian mục tiêu xác định khoảng thời gian đề xuất cho một nhiệm vụ, thường dùng cho
giao tiếp với khách hàng hoặc cho mục đích lập kế hoạch nội bộ. Bạn thiết lập chế độ này bằng
trường target_time_window
, bao gồm thời gian bắt đầu và thời gian kết thúc.
Giá trị này không ảnh hưởng trực tiếp đến bất kỳ phép tính toán tuyến đường nào, nhưng có thể dùng để
một tình huống chẳng hạn như thông báo cho người tiêu dùng về khoảng thời gian mua một gói hàng
hoặc khi nào dự kiến sẽ đến nơi nhân viên dịch vụ theo lịch trình.
Thuộc tính việc cần làm
Các thuộc tính nhiệm vụ trong Fleet Engine giúp thuận tiện để lọc công việc dựa trên
về các đặc điểm cụ thể khi sử dụng yêu cầu ListTasks
. Bạn cũng có thể sử dụng
các thuộc tính tác vụ tuỳ chỉnh để phân tích bằng tính năng Ghi nhật ký trên đám mây, cùng với
trao đổi thông tin trong hoạt động chia sẻ hành trình của người tiêu dùng hoặc theo dõi nhóm thiết bị. Chiến lược phát hành đĩa đơn
mục đích tương tự như đối với các thuộc tính xe: hãy sử dụng thuộc tính này để chế tạo
tập trung vào hoạt động phân phối.
Giới hạn và quy định hạn chế
- Tạo thuộc tính tuỳ chỉnh: Fleet Engine giới hạn số lượng thuộc tính tuỳ chỉnh mà bạn có thể xác định cho mỗi công việc. Liên hệ với đại diện bán hàng của bạn để hãy yêu cầu tăng các hạn mức đó.
- Khả năng lọc: Mặc dù vẫn mang đến khả năng lọc linh hoạt, nhưng tác vụ không thay thế các trường dữ liệu công việc chính. Sử dụng cho bổ sung dựa trên nhu cầu cụ thể của bạn.
- Mỗi thuộc tính phải có một khoá duy nhất.
- Đừng thêm thông tin nhận dạng cá nhân hoặc các thông tin nhạy cảm khác trong giá trị thuộc tính vì người dùng có thể nhìn thấy thông tin này.
- Xác thực dữ liệu: Đảm bảo các loại dữ liệu và định dạng của dữ liệu tuỳ chỉnh đều tương thích với các yêu cầu của Fleet Engine.