إضافات تذاكر Google Transit

تحدّد هذه الصفحة مجموعة فرعية من مواصفات تذاكر GTFS، وهي في مرحلة العرض أثناء إنشاء هذا المستند. تتضمن هذه الصفحة أيضًا العديد من القيود الإضافية من Google.

المتطلبات

الحقل departure_time في stop_times.txt ضروري.

أنواع الحقول الإضافية

يوضّح هذا القسم أنواع الحقول الإضافية وأنواع الحقول التي تحتوي على إضافات من Google. بعض الإشعارات تتطلب الحقول قيمًا في شكل عنوان URI.

امتدادات الملفات أو إضافاتها

الملفات النصية ذات الحالة إضافة هي ملفات موجودة من قبل وتحتاج إلى تمديد. يجب إضافة الحقول الجديدة التي نحدِّدها في الجدول التالي.

الملفات النصية التي تتضمّن إضافة الحالة هي ملفات جديدة تقدّمها خدمة Google Transit. إضافات بيع التذاكر: تحتاج إلى إنشاء هذه الملفات وفقًا تعريفات الحقول التي تم تقديمها بعد الجدول التالي. تأكد من تضمين هذه الملفات في خلاصتك.

اسم الملف الحالة يحدد
agency.txt الإضافة تتم إضافة "agency.ticketing_deep_link_id".
routes.txt الإضافة تتم إضافة "routes.ticketing_deep_link_id".
trips.txt الإضافة تتم إضافة trips.ticketing_trip_id وtrips.ticketing_type.
stop_times.txt الإضافة تتم إضافة "stop_times.ticketing_type".
ticketing_identifiers.txt الجمع ملف جديد. للحصول على مزيد من التفاصيل، يُرجى الاطّلاع على تعريفات الحقول.
ticketing_deep_links.txt الجمع ملف جديد. للحصول على مزيد من التفاصيل، يُرجى الاطّلاع على تعريفات الحقول.

تعريفات الحقول

agency.txt (تم تمديد الملف)

اسم الحقل التواجد في المنزل التفاصيل
ticketing_deep_link_id اختياري

(رقم التعريف من ticketing_deep_links.txt) تحديد الرابط لصفحة في التطبيق لاستخدامه في هذا الإجراء الوكالة. يمكن استبداله باللغة routes.txt.

routes.txt (تم تمديد الملف)

اسم الحقل التواجد في المنزل التفاصيل
ticketing_deep_link_id اختياري (رقم التعريف من ticketing_deep_links.txt) تحديد الرابط لصفحة في التطبيق لاستخدامه في هذا الإجراء المسار الصحيح. في حال توفّره، سيتم استبدال الحقل في agency.txt.

trips.txt (تم تمديد الملف)

اسم الحقل التواجد في المنزل التفاصيل
ticketing_trip_id اختياري

(رقم التعريف) المعرِّف الذي يجب تمريره في الرابط لصفحة في التطبيق ولا يُشترط أن تكون فريدة.

إذا كانت ticketing_trip_id فارغة، سيستخدم النظام القيمة trip_id بدلاً من ذلك.

ticketing_type اختياري

(التعداد) تحديد ما إذا كانت التذاكر من خلال رابط لصفحة معيّنة متاحة لهذه الرحلة:

  • 0 أو حقل فارغ:
    • إذا حددت ticketing_deep_link_id للمسار أو الوكالة، تكون المتوفرة.
    • ولا تتوفّر هذه الميزة في الحالات الأخرى.
  • 1: غير متاحة

stop_times.txt (تم تمديد الملف)

اسم الحقل التواجد في المنزل التفاصيل
ticketing_type اختياري

(Enum) تحدد ما إذا كان بيع التذاكر من خلال رابط لصفحة في التطبيق متاحًا لوقت التوقف هذا. في حال حذف التي حددت stop_times.ticketing_type، سيؤدي ذلك إلى إلغاء القيمة المحددة في trip.ticketing_type

  • فارغ: يستخدم القيمة من trip.ticketing_type.
  • 0:
    • إذا حددت ticketing_deep_link_id للمسار أو الوكالة، تكون المتوفرة.
    • ولا تتوفّر هذه الميزة في الحالات الأخرى.
  • 1: غير متاحة

ticketing_identifiers.txt (تمت إضافة الملف)

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

اسم الحقل التواجد في المنزل التفاصيل
ticketing_stop_id مطلوب (ID) تحدد معرّف طلب الدعم التلقائي لهذه المحطة لهذه الوكالة.
stop_id مطلوب (رقم التعريف من stops.txt) المحطة التي يكون الإعداد التلقائي فيها تم تحديد ticketing_stop_id.
agency_id مطلوب (رقم التعريف من agency.txt) وكالة المحطة التي يتم تعيين تم تحديد ticketing_stop_id.

ticketing_deep_links.txt (تمت إضافة الملف)

اسم الحقل التواجد في المنزل التفاصيل
ticketing_deep_link_id مطلوب (رقم التعريف) تحدّد رقم تعريف لرابط الصفحة في التطبيق.
web_url اختياري

(عنوان URL) عنوان URL المطلوب استخدامه للربط بصفحة معيّنة

لا يمكن ترجمة هذا الحقل إلى اللغة translations.txt.

android_intent_uri اختياري

معرِّف الموارد المنتظم (URI) الذي يجب تمريره إلى تطبيق Android أصلي باستخدام هدف واحد (android.intent.action.VIEW).

وإذا كانت فارغة، هذا يعني أنه لا يمكنك الربط بصفحة معيّنة في تطبيق Android أصلي.

لمزيد من المعلومات عن الروابط لمواضع معيّنة على Android، راجع إنشاء روابط لصفحات في التطبيق من أجل محتوى التطبيق.

لا يمكن ترجمة هذا الحقل إلى اللغة translations.txt.

ios_universal_link_url اختياري

(عنوان URL) عنوان URL للرابط العام المطلوب استدعاؤه على نظام التشغيل iOS.

وإذا كانت فارغة، لن يتم عرض الروابط لصفحات في التطبيق على نظام التشغيل iOS.

لمزيد من المعلومات، اطّلِع على الروابط العامة على نظام التشغيل iOS.

لا يمكن ترجمة هذا الحقل إلى اللغة translations.txt.

العناصر النائبة للحقول في طلب بيانات من واجهة برمجة التطبيقات

تطلب Google عناوين URL المحدّدة في ticketing_deep_links.txt بما يلي: المَعلمات:

اسم الحقل التفاصيل
service_date

(التاريخ، قابل للتكرار) يوم الخدمة للرحلة

استخدِم هذا الحقل لتحديد تاريخ انطلاق الرحلة من محطتها الأولى.

يتم تنسيق هذا الحقل كمصفوفة JSON.

ticketing_trip_id

(رقم تعريف الرحلة من trips.txt، قابل للتكرار)

يتم تنسيق هذا الحقل كمصفوفة JSON.

from_ticketing_stop_time_id

(قابل للتكرار) معرّف stop_time الذي تبدأ عنده القدم.

بالنسبة إلى وقت توقف معيّن، تكون القيمة على النحو التالي:

  • سمة ticketing_stop_id المحدّدة في ticketing_identifiers.txt لكل من agency_id وstop_id stop_time

  • إذا لم يكن ذلك، سيعود إلى stop_sequence.

يتم تنسيق هذا الحقل كمصفوفة JSON.

to_ticketing_stop_time_id

(قابل للتكرار) معرّف stop_time الذي تنتهي عنده القدم.

للحصول على شرح عن اشتقاق القيمة، راجع from_ticketing_stop_time_id

يتم تنسيق هذا الحقل كمصفوفة JSON.

boarding_time

(ISO 8601، قابل للتكرار) وقت المغادرة، departure_time من stop_time عند بدء الساق.

استخدِم هذا الحقل لعرض التاريخ والوقت الفعليين اللذين يصعد فيهما الراكب المركبة.

تتوافق القيمة الزمنية لهذا الحقل مع وفقًا لمعيار ISO 8601 مع تنسيق السلسلة التالي:

YYYY-MM-DDThh:mm:ss±hh:mm

جميع الأوقات أدناه متطابقة، وفي مناطق زمنية مختلفة:

  • في لندن، المملكة المتحدة: 2019-07-29T18:26:00+01:00
  • في نيويورك، الولايات المتحدة-نيويورك: 2019-07-29T13:26:00-04:00
  • في طوكيو، اليابان: 2019-07-30T02:26:00+09:00

يتم تنسيق هذا الحقل كمصفوفة JSON.

arrival_time

(ISO 8601، قابل للتكرار) وقت الوصول، وقت الوصول وموعد وصول الساق تنتهي.

تتوافق القيمة الزمنية لهذا الحقل مع ISO 8601 بتنسيق السلسلة التالي:

YYYY-MM-DDThh:mm:ss±,hh:mm

جميع الأوقات أدناه متطابقة، وفي مناطق زمنية مختلفة:

  • في لندن، المملكة المتحدة: 2019-07-29T18:46:00+01:00
  • فِي نيويورك، الولايات المتّحدة-نيويورك: 2019-07-29T13:46:00-04:00
  • في طوكيو، اليابان: 2019-07-30T02:46:00+09:00

يتم تنسيق هذا الحقل كمصفوفة JSON.

أمثلة

في هذا المثال، نستعرض ما يلي خطوات رحلة أحد الركاب:

  • في تاريخ الخدمة 20190716، يبدأ معرّف تذاكر الرحلة ti1 من المحطة. معرّف بيع التذاكر بالوقت 11 للتوقف عن بيع التذاكر بالوقت 12. الراكب وتعود إلى الساعة 2:00 بعد الظهر بالتوقيت العالمي المُنسّق، وستصل في الساعة 2:50 بعد الظهر بالتوقيت العالمي المُنسّق.
  • في تاريخ الخدمة 20190716، يبدأ معرّف تذاكر الرحلة ti2 من المحطة. معرّف بيع التذاكر بالوقت 21 للتوقف عن بيع التذاكر بالوقت 22. الراكب وتعود إلى الساعة 3:00 بعد الظهر بالتوقيت العالمي المُنسّق، وستصل في الساعة 3:50 بعد الظهر بالتوقيت العالمي المُنسّق.

في هذا المثال، السمة web_url هي https://examplepetstore.com.

في ضوء كل هذه المعلومات، استخدِم القيم التالية لمَعلمات هذه الخلاصة الرحلة:

اسم الحقل التفاصيل
service_date ["20190716"، "20190716"]
ticketing_trip_id ["ti1"، "ti2"]
from_ticketing_stop_time_id ["11"، "21"]
to_ticketing_stop_time_id ["12"، "22"]
boarding_time ["2019-07-16T14:00:00+00:00"، "2019-07-16T15:00:00+00:00"]
arrival_time ["2019-07-16T14:50:00+00:00"، "2019-07-16T15:50:00+00:00"]

في ما يلي عنوان URI النهائي بعد التشفير:

https://examplepetstore.com?service_date=%5B%2220190716%22,%2220190716%22%5D &ticketing_trip_id=%5B%22ti1%22,%22ti2%22%5D&from_ticketing_stop_time_id=%5B%2211%22,%2221%22%5D &to_ticketing_stop_time_id=%5B%2212%22,%2222%22%5D&boarding_time=%5B%222019-07-16T14:00:00%2B00:00 %22,%222019-07-16T15:00:00%2B00:00%22%5D&arrival_time=%5B%222019-07-16T14:50:00%2B00:00 %22,%222019-07-16T15:50:00%2B00:00%22%5D

أمثلة على أنواع قيم ticketing_stop_id

يمكن أن يكون لكل محطات معرفات مختلفة لأغراض بيع التذاكر الحقل "ticketing_identifiers.txt". القيم التي تظهر بالخط العريض هي تلك التي تم العثور عليها في مكالمة الويب الموضحة بعد الملفات.

stop.txt

stop_id،stop_name

si1، "باريس غار دو ليون"

si2،"Lyon Part-Dieu"

routes.txt

route_id،route_long_name،ticketing_deep_link_id

ri1,"TGV inOui Paris-Lyon",tdl1

trips.txt

trip_id,service_id,route_id,trip_short_name, ticketing_trip_id

ti1,totalday,ri1,"TGV INOUI 6603",FR_SNCF_6603

ti2,كليوم,ri1,"TGV INOUI 6681",FR_SNCF_6681

ti3,كليوم,ri1,"TGV INOUI 6607",FR_SNCF_6607

stop_times.txt

trip_id,stop_sequence,stop_id,arrival_time, departure_time

ti1,1,si1,06:59:00,06:59:00

ti1,2,si2,08:56:00,08:56:00

ti2,1,si1,07:53:00,07:53:00

ti2,2,si2,10:00:00,10:00:00

ti3,1,si1,08:59:00,08:59:00

ti3,2,si2,10:56:00,10:56:00

ticketing_identifiers.txt

stop_id،agency_id،ticketing_stop_id

si1،الوكالة1,4924

si2,proxy1,4676

ticketing_deep_links.txt

ticketing_deep_link_id، web_url، android_intent_uri، ios_universal_link_url

tdl1، https://examplepetstore.com/api/gtfs/web https://examplepetstore.com/api/gtfs/android، https://examplepetstore.com/api/gtfs/ios

إذا تم تقديم الطلب في 2019-07-19 وكانت أوقات GTFS بتوقيت المنطقة الزمنية UTC+1، يتم التالي هو دعوة الويب:

https://examplepetstore.com/api/gtfs/web?service_date=%5B%2220190719%22%5D&ticketing_trip_id= %5B%22FR_SNCF_6603%22%5D&from_ticketing_stop_time_id=%5B%224924%22%5D&to_ticketing_stop_time_id= %5B%224676%22%5D&boarding_time=%5B%222019-07-19T05:59:00%2B00:00%22%5&arrival_time=%5B%222019-07-19T07:56:00%2B00:00%22%5D

اتّبِع الاقتراحات التالية لتطبيق إضافات تذاكر Google Transit:

الإرشادات
شارِك روابط لصفحات معيّنة بين الوكالات أو المسارات كلما أمكن ذلك.

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

ضبط قيم متسقة للسمة ticketing_type

يجب أن تكون قيمة ticketing_type لمحطة معيّنة متسقة على مستوى كل الصفوف في ملف stop_times.txt.

خريطة ticketing_stop_id لكلّ من المحطات الرئيسية والفرعية نفِّذ عملية الربط لجميع محطات التوقف الأساسية والثانوية التي تتطلب تذاكر. في جلسة المعمل، ticketing_identifiers.txt، وليس من قيم ticketing_stop_id الانتشار بين المحطة الرئيسية وعناصرها الثانوية.
خريطة ticketing_stop_id لكل وكالة تستخدم المحطة نفسها في الخلاصة.

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

لمزيد من التفاصيل، يُرجى الرجوع إلى قسم تعريفات الحقول. مقابل ticketing_identifiers.txt.

يمكنك استخدام ميزة Android App Links عند الحاجة إلى رابط لصفحة معيّنة في تطبيق Android.

إذا أراد الشريك فتح تطبيق Android من رابط لصفحة في التطبيق، يجب إعداد رابط لصفحة في التطبيق رابط تطبيق Android.

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