تحديد كيفية تضمين بيانات حركة المرور وما إذا كان ذلك ممكنًا

إنّ الإعدادات المفضّلة لحركة المرور التي تختارها توازن بين دقة تفاصيل المسار وأداء الطلب. عندما تقدّم طلبًا، فكِّر في تحديد ما إذا كان من الأفضل عرض نتائج أكثر دقة ممكنة أو عرض النتائج في أسرع وقت ممكن. توفّر Routes API خيارات تتيح لك التحكّم في جودة بيانات الاستجابة مقابل وقت استجابة الاستجابة.

تعيين مستوى بيانات حركة المرور

توفر واجهة برمجة تطبيقات Routes RoutingPreference (REST) و RoutingPreference (gRPC) التي تتيح لك تحديد الإعدادات المفضّلة للتوجيه لحساب المسارات. وتختلف هذه التفضيلات في مدى أنها تأخذ في الاعتبار ظروف حركة المرور في حساب المسار. يؤدي كل تفضيل للتوجيه إلى الحصول على نتائج تختلف إلى حد ما في ما يتعلق بجودة المسار والوقت المقدّر للوصول ووقت الاستجابة للاستجابة.

تميز أحوال حركة المرور معدل تدفق حركة المرور. مثال:

  • عندما لا يكون هناك ازدحام، تعتبر أحوال حركة المرور طبيعية، وتدفقات حركة المرور بالسرعة العادية دون عوائق.
  • ومع اقتراب ساعة الذروة، تزداد كثافة حركة المرور، مما يؤدي إلى بطء حركة المرور، ما يؤدي إلى أحوال حركة المرور الخفيفة إلى المعتدلة.
  • في حركة المرور من اصطدام إلى السيارة، يتوقف معدل التدفق، ما ينتج عنه ظروفًا كثيفة في حركة المرور.

عدم وإدراك الزيارات

عند ضبط الإعداد المفضّل للتوجيه "TRAFFIC_UNAWARE"، يتم حساب المسارات بدون مراعاة ظروف حركة المرور الحالية. يوفر تفضيل التوجيه هذا أقل وقت استجابة للاستجابة (يتم عرض الردود الأسرع).

TRAFFIC_UNAWARE هو الإعداد التلقائي.

في الرد:

  • يتم تضمين الوقت المقدّر للوصول في سمة الاستجابة duration.

  • تحتوي سمتا الاستجابة duration وstaticDuration على القيمة نفسها.

استخدِم هذا الإعداد المفضّل للتوجيه عندما تريد أن يتم عرض الردود بأسرع شكل، وتكون تفاصيل التوجيه التقريبية جيدة بما فيه الكفاية.

إدراك كثافة حركة المرور

عند ضبط الإعداد المفضّل للتوجيه "TRAFFIC_AWARE"، يتم احتساب المسارات مع مراعاة أحوال حركة المرور الحالية. نتيجة لذلك، تعكس تفاصيل المسار والمسار بشكل أكثر دقة الظروف الواقعية. بما أنّ هذه الزيادة في جودة البيانات تنتج على حساب وقت استجابة الاستجابة، يتم تطبيق تحسينات الأداء لتقليل وقت الاستجابة.

في الرد:

  • ويتم تضمين الوقت المقدّر للوصول الذي يأخذ في الاعتبار حركة المرور في الوقت الفعلي في خاصية الاستجابة duration.

  • تحتوي سمة الاستجابة staticDuration على مدة التنقّل عبر المسار بدون وضع أحوال حركة المرور في الاعتبار.

يمكنك استخدام هذا الإعداد المفضّل للتوجيه إذا كنت تريد الحصول على تفاصيل توجيه أكثر دقة من "TRAFFIC_UNAWARE"، ولا داعي للقلق إذا تم عرض الردود بزيادة معتدلة في وقت الاستجابة.

الأمثل إدراك حركة المرور

عند ضبط الإعداد المفضّل للتوجيه TRAFFIC_AWARE_OPTIMAL، يتم احتساب المسارات مع مراعاة أحوال حركة المرور الحالية، ولكن لا يتم تطبيق أي تحسينات على الأداء. في هذا الوضع، يقوم الخادم بإجراء بحث أكثر شمولاً عن شبكة الطرق للعثور على الطريق الأمثل.

إنّ الإعداد المفضّل للتوجيه TRAFFIC_AWARE_OPTIMAL مماثل للوضع المستخدَم في maps.google.com والوضع المتوافق مع الأجهزة الجوّالة في "خرائط Google".

عند استخدام هذا الخيار مع مصفوفة مسار Compute، لا يمكن أن يتجاوز عدد العناصر في الطلب (عدد الأصول × عدد الوجهات) 100. للحصول على مزيد من المعلومات حول حدود مصفوفة المسارات، يمكنك الاطّلاع على المقالة احتساب مصفوفة مسار.

في الرد:

  • ويتم تضمين الوقت المقدّر للوصول الذي يأخذ في الاعتبار حركة المرور في الوقت الفعلي في خاصية الاستجابة duration.

  • تحتوي سمة الاستجابة staticDuration على مدة التنقّل عبر المسار بدون وضع أحوال حركة المرور في الاعتبار.

يوفر تفضيل التوجيه هذا أعلى وقت استجابة للاستجابة (أي أن الردود تعود بأطول تأخير). استخدم هذا التفضيل للتوجيه عندما تريد نتائج عالية الجودة، بغض النظر عن المدة التي تستغرقها الردود.

تأثير إعداد وقت المغادرة

يمكنك استخدام السمة departureTime لتحديد وقت المغادرة للرحلة. إذا لم تضبط السمة departureTime، سيتم ضبط الوقت الذي يتم فيه تقديم الطلب تلقائيًا.

  • بالنسبة إلى TRAFFIC_UNAWARE، لا يمكنك ضبط departureTime لأن اختيار المسار والمدة يعتمد على شبكة الطرق ومتوسط أحوال حركة المرور التي لا تعتمد على الوقت.

  • وبالنسبة إلى TRAFFIC_AWARE وTRAFFIC_AWARE_OPTIMAL، اللذان يضعان ظروف حركة المرور المباشرة في الاعتبار، تصبح حركة المرور المباشرة أكثر أهمية مع اقتراب departureTime إلى الآن. كلما ابتعدت عن وقت المغادرة في المستقبل، تم إيلاء مزيد من الاهتمام لظروف حركة المرور السابقة.

مثال على الإعداد المفضّل للتوجيه

يوضح رمز JSON التالي كيفية ضبط الإعداد المفضّل للتوجيه في نص عنصر الرسالة الخاص بالطلب.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}

ضبط عدد الزيارات على الخطوط المتعددة

تتيح لك Routes API طلب معلومات عن أحوال حركة المرور من خلال خطوط متعدّدة مراعية لحركة المرور. يمكنك الاطّلاع على طلب الخطوط المتعددة للحصول على مزيد من المعلومات.