Bu belgede, Fleet Engine'deki planlanmış görevler hizmeti açıklanmaktadır. Varsayımda Fleet Engine nedir? başlıklı makaleyi okudunuz ve belirli bir Filo hakkında İhtiyacınız olan motor hizmeti.
Bu dokümanları okurken aşağıdakileri göz önünde bulundurun:
- Görevler oluşturup bir araç durağıyla ilişkilendirirsiniz. konum arasındaki gerçek ilişki hakkında bir model oluşturabilirsiniz. Sürücünün görevi tamamlayabilmesi için aracın durması beklenir. Daha iyi bilgi edinmek için Taşıtlara giriş konusunu okuyun araçların Fleet Engine'deki işleyişini kavrayabilir.
- Planlanmış görevler için Fleet Engine şu kaynakları kullanır:
Task
veDeliveryVehicle
. Fleet Engine, hem gRPC hizmeti hem de REST sunar arayüzler:
Planlanmış görev nedir?
Fleet Engine'de planlanmış bir görev, yapılması gereken bağımsız bir işlemi daha geniş bir bağlamda araç kullanan bir sürücünün Ulaşım operasyonu. Sürücü için özel hedefi tanımlar. Örneğin:
- bir eve mal teslim etmek
- kargo deposuna geri dönmek üzere bir paket almak
- Müşteriye tesis içinde hizmet sağlamak üzere bir konumda durmak
- aracı çalıştırmak için planlı bir duraklama ayarlamak
Görev öğeleri
Aşağıdaki resimde, bu görev öğeleri standart bir zaman çizelgesinde bir araç yolculuğu.
Temel görev alanları
Alan | Açıklama |
---|---|
Tür | Görevle ilişkili eylem türünü tanımlar. |
Görev Kimliği | Sistem içindeki görevi benzersiz şekilde tanımlayan bir dize. |
Planlanan konum | Görevin gerçekleştirilmesi gereken konumu belirtir. Bu konum, söz konusu işletmenin planlanan yeriyle her zaman aynı değildir aracı durdurmasına izin verir. |
Eyalet | Görevin açık mı yoksa kapalı mı olduğunu belirtir. |
Görevin Sonucu | Görevin başarılı mı yoksa başarısız mı olduğunu gösterir. |
Görevler için veri modeli
Aşağıdaki diyagramlarda Task
kaynağının veri modeli gösterilmektedir
yanında, ilişkilendirilmiş DeliveryVehicle
kaynağında bulunan şemayla birlikte gösterilir. Şunları yapabilirsiniz:
iki kaynak arasındaki ilişkileri keşfetmek için her iki diyagramı da inceleyin.
şunları unutmayın:
- Planlanan konum: Hem araç durakları hem de görevler için planlanmış konumlar vardır.
benzersiz bir deneyim sunar.
- Görevler için planlanan konum, sürücünün eyleminin nerede olduğunu gösterir meydana gelecektir. Örneğin, büyük bir konuta 15 paket teslimat karmaşık bir yapı içindeki farklı posta odası konumlarına teslim edilmesini karmaşık bir yapıya sahip.
- Araç durakları için, planlanan konum bu durakların durağını gösterir. araç, sürücü görevleri tamamlarken Örneğin, Araç bir apartman kompleksinin girişinde duruyor ve sürücü paketleri, kompleks içindeki ayrı posta odalarına el ile teslim eder.
- Durum: Hem görevler hem de araç durakları,
bir iletişim kurmaktır.
- Araç durma durumu, aracın filo izleme amacıyla kullanılır.
- Görevin durumu, görevin etkin olup olmadığını gösterir. Bu görevler üzerinde yapılacak diğer operasyonları etkiler. Örneğin, bir araca atamaktır.
Görev sonucu: Görevin sonucu veri modelinde önemli bir alandır. Çünkü bir görevin başarısını veya başarısızlığını göstermek için kullanılır, görevi görebilir.
Kimlikler:
- Bir araca görev atadığınızda, Filo motoru,
deliveryVehicleId
alanı boş bırakılamaz. Bu salt okunur alan, aracın bu özelliği kullanabilirsiniz. - Görev kimlikleri, sisteminizdeki tüm görevler için benzersiz tanımlayıcılardır.
- İzleme kimlikleri, kargo takibi amacıyla bir görev tanımlar.
- Bir araca görev atadığınızda, Filo motoru,
Görevler veri modeli
Araç veri modeli
Görev Kimlikleri
Fleet Engine'deki araç kimliklerine benzer şekilde, görevlerin her biri için
ve onları sistemdeki diğer görevlerden
ayırmanıza yardımcı olur. Siz referans verir ve yönetirsiniz
kimliklerine göre kontrol edebilirsiniz. Bu kimlikleri
CreateTaskRequest
hizmetini kullanarak ve
bu bölümde açıklanan koşullara tabidir.
Bu dize daha sonra görev kaynağının adının bir kısmını oluşturur.
Task
nesnesindeki salt çıkış alanıdır. Bu, Fleet Engine'in benzer bir grup
araç adı kaynakları oluşturur. Kaynak adlandırma bölümüne bakın:
Fleet Engine'e Giriş.
Özellik | Açıklama |
---|---|
Benzersizlik | Karışıklığı önlemek ve tanımlamanın doğru şekilde yapılmasını sağlamak için, Fleet Engine uygulamanızda her görev kimliğinin benzersiz olması gerekir. |
Biçim |
|
Doğru görev kimliği örnekleri |
|
---|---|
İzin verilmeyen görev kimlikleri |
|
Görev türleri
Fleet Engine, bir projede farklı eylemleri temsil etmek için Ulaşım operasyonu. Görünürlüğüyle birlikte burada açıklanmıştır. ve fatura bilgileridir.
Görev Türü | Açıklama | Gönderim Takibi Görünürlüğü | Faturalandırıldı |
---|---|---|---|
Teslim Görevi | Öğeleri bırakmak veya müşteri adına bir görevi tamamlamak için kullanabilirsiniz. | Tüketiciler bunu görebilir ve takip edebilir. | Evet |
Teslim Alma Görevi | Müşterilerden ürün teslim almayı belirtmek için kullanın. Şunu yapmalısınız: herhangi bir teslim görevi için ilgili teslimat görevleri oluşturmanız gerekir. | Tüketiciler bunu görebilir ve takip edebilir. | Hayır |
Kullanılamama Görevi | Sürücünün mola vermesi veya araca yakıt doldurması gibi durumlarda aracın servis için kullanılamadığını tanımlar. | Tüketicilere gösterilmez. | Hayır |
Planlanmış Durdurma Görevi | Belirli bir konumda durmayı gerektiren teslim edilmeyen görev. Belirli bir konumdaki günlük programlanmış teslim noktaları için (aynı konumdaki diğer teslimat veya teslim alma işlemlerinden bağımsız olarak) planlanmış durak görevlerini kullanın. Ayrıca, açılır kutulardan yapılan koleksiyonlar için veya servis merkezlerinde ve hizmet noktalarında bulunan besleyici-araç aktarımları ya da duraklarını modellemek üzere planlanmış durdurma görevleri oluşturabilirsiniz. | Tüketiciler bu belirli görevi takip edemez, ancak diğer görevlerin takibinin bir parçası olarak görebilirler. | Hayır |
Görev ve yolculuk yaşam döngüsü
Bu bölümde, Filo'daki teslim görevi yaşam döngüsüyle ilgili ayrıntılar sunulmaktadır Motor. Görev yaşam döngüsü, araç yolculuğuyla bağlantılıdır çünkü Sürücünün bir görevi yerine getirebilmesi için aracın durağa gidebilmesi gerekir. planlandığı gibi gitmez.
1. Görev oluşturma
Fleet Engine'de ilk kez bir görev oluşturduğunuzda çeşitli alanları ayarlarsınız. bir durakla ilişkilendirmek yerine görev için ayrıntı gözden geçirmeniz gerekir.
Özellik | Açıklama |
---|---|
Eyalet | AÇIK olarak ayarla |
Kimlikler | Kargo takibini kullanıyorsanız görevi ve izleme kimliğini ayarlayın sahip olmalısınız. |
Zamanlama | Görev için planlanan süre ve hedef zaman aralığı. Görüntüleyin Ayrıntılar için görev zamanlaması bölümüne bakın. |
Planlanan konum | Görevin gerçekleştirileceği yerin kesin coğrafi koordinatını belirleyin tamamlandı. |
2. Görev ataması
Bir araca görev atadığınızda, bunu bir araçla birlikte yaparsınız dur. Duraklar, Google Ads'de konumun Google tarafından nasıl kesileceğine ve Sürücü durakla ilgili görevleri tamamlarken araç parkları. Duraklar genellikle bir yükleme iskelesi veya kilitlenmiş bir yol gibi bir erişim noktasıdır. konum.
3. Devam ediyor
Görevlerin durumu AÇIK veya KAPALI'dır. Ancak ekip üyelerine bir görev atandığında, o aracın araçla ilişkilendirmesi yoluyla ilerlemesini Aracın, görevin yapılacağı durağa göre nerede olduğu tamamlandı.
Araç duraktan ayrıldığında veya navigasyona başladığında
durak ENROUTE
olarak değişmelidir. Bu şekilde, tüketicinin gönderi takibi
Bir görev için alıcıyı kalan durak sayısı ve tahmini duraklarla güncelleyin.
varış saati var. Bu yöntem, tüketiciler için her türlü gerçek zamanlı görselleştirmeyi de
veya filo takibi için de kullanılabilir.
4. Varış ve görevin sonucu
Araç bir durağa geldiğinde, durak durumu
ARRIVED
ENROUTE
durdurma durumunda olduğu gibi, bu durum
aynı zamanda hem tüketici bildirimlerini hem de gerçek zamanlı
filo operatörleriniz tarafından kullanılan filo izleme için raporlama. Ayrıca daha sonra
teslim için kullanacağınız operasyonunuza ilişkin analiz ve raporlar
optimize edebilirsiniz.
Araç durağa geldiğinde sisteminiz görevin geri kalanını gerçekleştirebilir en iyi uygulamaları paylaşacağım:
Tamamlanan görevleri tamamlama.
Sürücü görevi tamamlandı olarak işaretlediğinde sisteminiz, görevi durabilir, ancak başka görevler atanmış bir şekilde durun.
Durağı tamamen araçtan kaldırın.
Sürücü tüm görevleri tamamlandı olarak işaretlediğinde ve araç yola çıktığında bir sonraki duraksa, durağın tamamını araçtan kaldırabilirsiniz. Filo Motoru kaldırılan bir durakla ilişkili tüm görevleri otomatik olarak kapatır.
Görevin kapatılması başarılı veya başarısız olduğu anlamına gelmez
Bir görevin kapatılması yalnızca görevin artık devam ediyor olarak kabul edilmediği anlamına gelir.
CLOSED
durumundaki görevlerin sonucunu SUCCEEDED
veya
FAILED
. Bu bilgi, hem gönderimin asıl sonucunu belirtmek için gereklidir
doğru faturalandırma için çok önemlidir. Fleet Engine, yalnızca
durumu: SUCCEEDED.
Bir görev sonucu belirledikten sonra bunu değiştiremezsiniz
Fleet Engine bir görevin sonucunu işaretlerken görevi otomatik olarak doldurur bilinen son araç konumuyla birlikte sonuç konumu Bununla birlikte, görevler belirlendikten sonra belirlenen görevlerle ilgili süre ve görev Fleet Engine bu alanları geçersiz kılmaz.
5. Diğer görev senaryoları
Fleet Engine'de modellediğiniz bazı görevler, tipik bir yolculuk akışına uymaz. Örneğin:
- Teslim alma görevleri. Bir paketin iade edilmesi için teslim alma göreviniz olduğunda daha sonra işlenmek üzere depoya koyduğunuzda, teslimat görevi görebilir. Aksi takdirde, teslim alma görevleri genellikle teslimat görevleriyle aynı akışı izler.
- Görevi yeniden atama. Bir görevi başka bir kullanıcıya doğrudan yeniden atayamazsınız kullanabilirsiniz. Bunun yerine, bir görevi bir araçtan diğerine taşımak için yeni araca atamadan önce görevi yeniden oluşturmak ile çalışmak. Eğer atanmış bir göreve atanan bir görevin görev sıralamasını güncellerseniz kullandığında, Fleet Engine hata veriyor.
- Görevleri silme. Araçlarda olduğu gibi, Fleet Engine, yedi gün sonra güncellenir. Aynı görev kimliği bulunan bir görev için veya daha önce kapatılmışsa, söz konusu kimlik kullanılmışsa Fleet Engine bir hata döndürür. yüzde 10' olabilir. Öte yandan görev verilerinizi daha uzun süre saklamak istiyorsanız veya yedi günden daha uzun sürede bu yeteneği planlanmış bir işi yeniden belirleyebilirsiniz.
Görev yolculuğu paylaşımı
Fleet Engine'deki görev yolculuğu paylaşımı ile görevlerdeki ilerlemeyi gerçek zamanlı sağlayın ve sürücünün yolculuğunu iki temel şekilde paylaşın:
- Tüketici yolculuğu paylaşımı sayesinde tüketiciler, veya talep edilen hizmet siparişini belirlemelisiniz.
- Filo operatörlerinizin durumu izleyip analiz etmeleri için filo izleme filodaki araçların sayısı.
Tüketici yolculuğu paylaşımı
Tüketici yolculuğu paylaşımını operasyonunuza entegre etmek için yolculuğu ayarlayın JavaScript Tüketici SDK'sını kullanarak paylaşabilirsiniz. SDK ile, uygulamanızın görsel web veya mobil uygulama deneyiminden bahsetmek istiyorum. Böylece tüketiciler tahmini varış saatleri ve gerçek zamanlı konum güncellemeleriyle birlikte gönderim teslimat aracı. Aşağıdaki hesap için tüketici yolculuğu paylaşımına genel bakış: planlanmış görevler hakkında bilgi edinin.
Tüketici yolculuğu paylaşımı SDK'sı bir JavaScript haritası ve veri bileşenleri içerir
başka bileşenler de vardır. Harita, yeni bir
standart google.maps.Map
nesnesidir. İstemciniz, sizin tarafınızda kimlik doğrulamalıdır
ve Google Cloud projenizde Yayınlama tüketici rolünü kullanarak
yalnızca müşteriye özel bilgileri döndürebilmelidir. Fleet Engine, tümünü filtreleyip çıkarır
geri bildirim vermelisiniz. Örneğin, "kullanılamayan" görevi sırasında
Son kullanıcıyla konum bilgisi paylaşılmaz.
Fleet Engine'de, tüketici yolculuğu için aşağıdaki ayarları etkinleştirirsiniz paylaşma:
- Görevler,
TaskTrackingViewConfig
özelliğini kullanır. İsteğe bağlı. - Görevler, kitaplığın ilgili alanı tanımlaması gereken bir izleme kimliği kullanır. hem de son derece önemli.
Filo İzleme
JavaScript Filo İzleme Kitaplığı, büyük ölçekli araçların yer aldığı
filolarındaki araçları neredeyse gerçek zamanlı olarak kontrol edebilir. Kitaplıkta
Teslimat araçlarının yanı sıra teslimat araçlarının görselleştirmesini sağlayan Fleet Engine API
görevlerden sorumlu tutmalısınız. JavaScript tüketici SDK'sı gibi, JavaScript'in
standart bir google.maps.Map
için yerleşik olarak bulunan bir harita bileşeni
kullandığınız veri bileşenlerinin yer aldığı bir varlık görürsünüz.
Bu kitaplık, teslimat araçlarının görünürlüğünü hemen gösterir Fleet Engine'de oluşturuldu. Bu uygulama için Fleet Engine'i kullanırsınız. Hizmetin Süper Kullanıcı Cloud IAM rolü ve sizin için Java Web Jetonu talebi sağlamanız teslimat araçlarına ve ilişkili görevlerine erişim sağlar.
Planlanmış görev senaryoları
Bu bölümde bilgileri özetleyen çeşitli görev senaryoları ele alacağız. Bu özellik, markanızın ve Fleet Engine'deki ulaşım operasyonlarınızı modellemenin Bu da işinize göre değişir.
Takipli teslimat
Bu teslim senaryosunda bir planlanmış durdurma görevi gösterilir. başlangıcında, depodan kalkışta depoya atanır. yolculuğa ve yolculuğun sonunda depoya varışı. Aynı zamanda durmak için iki teslim görevi gösteriyor ve bunlardan biri başarısız oluyor. Bunu kullan atamanın yolunu bulmanın ve bir modellemenin bir yolu olarak, ve bitiş zamanlarını görebilirsiniz. Faturalandırma yok zamanlanmış durma görevleriyle karşılaşabilirsiniz.
Depo teslimatıyla teslim alma
Bu senaryoda, bir teslim alma işleminin teslimat görevini yerine getirmeniz gerekir. Depoya dönüşü teslimat.
Besleme araç
Bu senaryoda, ortasında planlanmış bir durak olan iki teslimat gösterilmektedir Burada amaç, teslimat aracının bir dizi kargoyla depoya geri dönecek. Siz besleyici aracını planlanmış bir durakla modelleyebilir.
Görev Zamanlaması
Görev zamanlarının modellenmesi etkili rota planlamasına, tahmini varış sürelerine ve teslim beklentileri olabilir. Fleet Engine, modelleme ve analiz için iki temel işlev sunar. bu bölümde açıklandığı gibi görev zamanlamasını öngörmelisiniz.
Görev süresi
Görev süresi, task_duration
alanı kullanılarak ayarlanır.
sürücünün duraktaki görevleri tamamlamak için harcayacağı öngörülen süreyi modeller
ara vermek isteyebilir. Duraklar için bu, gerekli tüm aktiviteleri kapsar
toplu taşımayı kaldırarak ve araçla etkileşime geçerek (örneğin,
dokunun. Bu bilgi ne kadar spesifik olursa Fleet Engine bunu
Yolculuğun sonraki durakları için gerçekçi varış saatleri ve TVS'ler sağlama.
Alan ayrıntıları için Protokol Arabellekleri Belgeleri'ndeki Süre bölümüne bakın.
Hedef zaman aralığı
Hedef süre, bir görev için önerilen bir zaman aralığını tanımlar ve genellikle
yalnızca müşterilerle iletişim kurmak veya şirket içi planlama yapmak için kullanılmış olabilir. Bu ayarı şununla yapabilirsiniz:
target_time_window
alanı, başlangıç zamanı ve bitiş zamanından oluşur.
Bu, rota hesaplamalarını doğrudan etkilemez, ancak gerektiğinde
örneğin tüketiciyi bir paketin zaman aralığı konusunda uyarmak
ya da planlanmış bir hizmet çalışanına ne zaman ulaşacağını belirleyebilir.
Görev Özellikleri
Fleet Engine'deki görev özellikleri, görevleri duruma göre filtrelemek için kullanışlı bir yöntem sunar.
ListTasks
isteğini kullanırken belirli özelliklere göre ayarlamanız gerekir. Ayrıca şunu da kullanabilirsiniz:
Cloud Logging ile analizler için özel görev özellikleri ve
tüketici yolculuğu paylaşımı veya filo izlemede bilgileri iletme. İlgili içeriği oluşturmak için kullanılan
Amaç, araç özelliklerine benzer: Aracın amacını daha yüksek ve daha iyi
bir bakış açısına sahip olmanızı sağlar.
Sınırlamalar ve Kısıtlamalar
- Özel özellik oluşturma: Fleet Engine, özelleştirilebilen tanımlayabileceğiniz çeşitli özellikler içerir. Satış temsilcinizle iletişime geçerek bu sınırların artırılmasını isteyebilirsiniz.
- Filtreleme özellikleri: Filtreleme esnekliği sunarken görev özellikleri temel görev veri alanlarının yerine geçmez. Şunlar için kullanın: Özel ihtiyaçlarınıza göre ek filtreleme yapabilirsiniz.
- Her özelliğin benzersiz bir anahtarı olmalıdır.
- Kimliği tanımlayabilecek bilgiler veya diğer hassas bilgiler eklemeyin bilgi eklememeniz gerekir, çünkü bunlar kullanıcı tarafından görülebilir.
- Veri doğrulama: Özel reklam öğenizin veri türlerini ve biçimlerini özellikleri, Fleet Engine'in gereksinimleriyle uyumludur.