تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تتوفّر عملية النقل المجمّع، والتي تُعرف أيضًا باسم النقل داخل المقعد، عندما تستوفي مجموعة من
الرحلات الشروط التالية:
الرحلات متتالية.
تُجري المركبة نفسها كلتا الرحلتين.
يتم توفير الرحلات باستخدام قيمة block_id نفسها في ملف
trips.txt في خلاصة النقل العام.
المتطلبات الأساسية
لكي تدرك "خرائط Google" أنّه يمكن نقل بيانات الوحدات بين الرحلات، يجب استيفاء المتطلبات الأساسية التالية:
يجب أن تستخدم الرحلات قيمة block_id نفسها في trips.txt. يشير ذلك
إلى أنّ الرحلات تستخدم المركبة نفسها.
يجب أن تُجرى الرحلات في الأيام نفسها أو في أيام متتالية إذا كانت إحدى الرحلات تتعدى منتصف الليل.
يجب أن تكون الرحلات متتالية وألّا تتداخل.
يجب أن تكون المحطة الأخيرة للرحلة الواردة والمحطة الأولى للرحلة المغادرة
متطابقة (ننصح بذلك) أو قريبة جغرافيًا.
استخدِم block_id لتفعيل عمليات نقل البيانات المجمّعة.
يمكن إجراء عمليات نقل مجمّعة بين رحلات متتالية على مسارات مختلفة أو على
المسار نفسه إذا كان مسارًا دائريًا. استخدِم الحقل block_id لتحديد
الرحلات التي تكون في مجموعة واحدة وأماكن توفّر خدمة نقل الركاب أثناء الرحلة.
المثال 1: حظر عمليات النقل للرحلات المجدوَلة
في هذا المثال، راجِع القيم التالية في كل ملف:
trips.txt
route_id
trip_id
block_id
RouteA
RouteATrip1
Block1
RouteB
RouteBTrip1
Block1
stop_times.txt
trip_id
arrival_time
departure_time
stop_id
stop_sequence
RouteATrip1
12:00:00
12:01:00
A
1
RouteATrip1
12:05:00
12:06:00
B
2
RouteATrip1
12:15:00
C
3
RouteBTrip1
12:18:00
C
1
RouteBTrip1
12:22:00
12:23:00
D
2
RouteBTrip1
12:30:00
E
3
في هذا المثال:
إذا بحث مستخدم عن مسار من المحطة "أ" إلى المحطة "هـ"، سيتم توجيهه إلى ركوب الحافلة
في المحطة "أ" في الساعة 12:00 على المسار "أ" والبقاء في الحافلة عند وصولها
إلى المحطة "ج" بعد انتهاء RouteATrip1. ويعود سبب ذلك إلى أنّ المركبة نفسها توفّر RouteBTrip1 في "المسار ب".
يمكن للركاب في RouteATrip1 الذين يريدون مواصلة الرحلة إلى محطة في
RouteBTrip1 البقاء في المركبة لإجراء عملية النقل هذه.
لا يتوفر
هذا الخيار لركاب الرحلات الأخرى على المركبات الأخرى على طول هذه المسارات نفسها لأنّهم يستخدمون مركبات مختلفة في كل رحلة.
المثال 2: حظر عمليات النقل للرحلات المستندة إلى معدّل التكرار مع تحديد أوقات دقيقة
لا تتوفّر عمليات نقل الكتل إلا للرحلات المستندة إلى معدّل التكرار التي تستوفي أحد
الشروط التالية، بالإضافة إلى المتطلبات الواردة في القسم
المتطلّبات الأساسية:
إذا كانت الرحلة عبارة عن رحلة دائرية، يجب أن تبدأ وتنتهي في المحطة نفسها.
في frequencies.txt، يجب أن تكون قيمة حقل exact_times هي 1.
يوضّح المثال التالي كيفية ضبط قيم الشرط الثاني:
trips.txt
route_id
trip_id
block_id
route1
route1_trip1
block_2
route2
route2_trip1
block_2
stop_times.txt
trip_id
arrival_time
departure_time
stop_id
stop_sequence
route1_trip1
08:00:00
08:04:00
stop1
1
route1_trip1
08:10:00
08:14:00
stop2
2
route1_trip1
08:20:00
stop3
3
route2_trip1
08:24:00
stop3
1
route2_trip1
08:30:00
08:34:00
stop4
2
route2_trip1
08:40:00
08:44:00
stop5
3
frequencies.txt
trip_id
start_time
end_time
headway_secs
exact_times
route1_trip1
08:00:00
08:20:00
600
1
route2_trip1
08:24:00
08:44:00
600
1
في هذا المثال:
يتم توجيه المستخدم الذي يبحث عن مسار من stop1 إلى stop5 إلى
الانطلاق من stop1 في الساعة 08:00 يوم route1. يبقى المستخدم بعد ذلك في المركبة
عند وصولها إلى stop3 بعد نهاية route1_trip1. ويرجع ذلك إلى أنّه
توفّر خدمات المركبات نفسها route2_trip1 في route2.
يمكن للركاب في route1_trip1 الذين يريدون مواصلة الرحلة إلى محطة في
route2_trip1 البقاء في المركبة لإجراء عملية النقل هذه.
لا يتوفر
هذا الخيار لركاب الرحلات الأخرى على المركبات الأخرى على طول هذه المسارات نفسها لأنّهم يستخدمون مركبات مختلفة في كل رحلة.
لنأخذ route1_trip1 على سبيل المثال. قيمة headway_secs هي نصف
الفاصل الزمني بين start_time وend_time. في هذه الحالة، يعني ذلك أنّه هناك
رحلتان. للاطّلاع على مزيد من المعلومات عن استخدام headway_secs، يُرجى الرجوع إلى
مرجع جدول مواعيد GTFS على
gtfs.org.
حظر النقل في خط حلقة
في خطّ دائري، تكون المحطة الأولى والمحطة الأخيرة للرحلة متطابقتَين ويكون لهماstop_id متطابق. هذا الإجراء مطلوب لكل من الرحلات المستندة إلى الجدول الزمني والرحلات المستندة إلى معدّل التكرار.
شرط أن تكون الرحلات المتتالية على مسار دائري لها block_id أو مسار دائري مماثل، يتم تفعيل ميزة التبديل في المقاعد أو الحظر، ما يتيح لركّاب الرحلة الأولى البقاء في المركبة عند مواصلة الرحلة على المسار الدائري التالي.
الوحدات الصالحة في خلاصات GTFS
لكي تتمكّن من نقل مجموعة إعلانية، يجب تحديد مجموعة إعلانية واحدة أو أكثر
بشكل صحيح في الخلاصة. لاجتياز عملية التحقّق، يجب ألا تتعاطف الرحلات التي تنتمي إلى المجموعة نفسها، ويجب أن يكون لها route_type نفسها (المترو أو السكك الحديدية أو الحافلات وما إلى ذلك).
يمكن أن تنتمي الرحلات إلى المجموعة نفسها حتى إذا كانت في أيام مختلفة. إذا تمّ تعريف أيّ
كتل في خلاصة ثابتة، ستظهر في تقرير التحقّق من الصحة، في علامة التبويب
نظرة عامة.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eBlock transfers, or in-seat transfers, allow passengers to stay on the same vehicle across consecutive trips using the same \u003ccode\u003eblock_id\u003c/code\u003e in \u003ccode\u003etrips.txt\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eTo enable block transfers, trips must use the same \u003ccode\u003eblock_id\u003c/code\u003e, operate on the same or consecutive days, be consecutive without overlapping, and have the last/first stops be the same or nearby.\u003c/p\u003e\n"],["\u003cp\u003eBlock transfers work with frequency-based trips if they are loops starting and ending at the same stop, or if \u003ccode\u003eexact_times\u003c/code\u003e is set to \u003ccode\u003e1\u003c/code\u003e in \u003ccode\u003efrequencies.txt\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eIn loop lines, consecutive trips with the same \u003ccode\u003eblock_id\u003c/code\u003e enable in-seat transfers for passengers to remain on the vehicle for the next loop.\u003c/p\u003e\n"],["\u003cp\u003eValid blocks in GTFS feeds require trips within the same block to be non-overlapping, have the same \u003ccode\u003eroute_type\u003c/code\u003e, and can span across different days.\u003c/p\u003e\n"]]],["Block transfers, or in-seat transfers, require consecutive trips using the same vehicle, indicated by the same `block_id` in `trips.txt`. Trips must operate on the same or consecutive days, not overlap, and their start/end stops should be the same or close. Frequency-based trips must have `exact_times=1` in `frequencies.txt`. Loop line trips require identical start and end stops. Correctly defining blocks enables transfers, verified in a feed's Validation Report. Google does not support linked trips via transfer_type 4 or 5.\n"],null,["# Block transfer example\n\n| **Note:** To make block transfer an available option, you need to use `block_id` in `trips.txt`. Google doesn't support the [linked trips](https://gtfs.org/schedule/reference/#linked-trips) feature through `transfer_type` values of `4` or `5`.\n\nBlock transfer, also called in-seat transfer, is available when a set of\ntrips meets the following conditions:\n\n1. The trips are consecutive.\n2. The same vehicle operates both trips.\n3. The trips are provisioned with the same `block_id` value in the `trips.txt` file in the transit feed.\n\nPrerequisites\n-------------\n\nFor Google Maps to recognize that block transfers between trips are\npossible, the following prerequisites must be met:\n\n1. The trips must use the same `block_id` value in `trips.txt`. This indicates that the trips use the same vehicle.\n2. The trips must operate on the same days, or on consecutive days if a trip crosses midnight.\n3. The trips must be consecutive and not overlap.\n4. The last stop of the arriving trip and the first stop of the departing trip must either be the same (recommended) or physically close.\n\nUse `block_id` to enable block transfers\n----------------------------------------\n\nBlock transfers can be made between consecutive trips on different routes or on\nthe same route if the route is a loop line. Use the `block_id` field to specify\nwhich trips are in one block and where in-seat transfers are an available\noption.\n\n### Example 1: Block transfers for scheduled trips\n\nIn this example, consider the following values in each file:\n\n`trips.txt`\n\n| `route_id` | `trip_id` | `block_id` |\n|------------|---------------|------------|\n| `RouteA` | `RouteATrip1` | `Block1` |\n| `RouteB` | `RouteBTrip1` | `Block1` |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\n`stop_times.txt`\n\n| `trip_id` | `arrival_time` | `departure_time` | `stop_id` | `stop_sequence` |\n|---------------|----------------|------------------|-----------|-----------------|\n| `RouteATrip1` | `12:00:00` | `12:01:00` | `A` | `1` |\n| `RouteATrip1` | `12:05:00` | `12:06:00` | `B` | `2` |\n| `RouteATrip1` | `12:15:00` | | `C` | `3` |\n| `RouteBTrip1` | | `12:18:00` | `C` | `1` |\n| `RouteBTrip1` | `12:22:00` | `12:23:00` | `D` | `2` |\n| `RouteBTrip1` | `12:30:00` | | `E` | `3` |\n\n\u003cbr /\u003e\n\nIn this example:\n\n- A user who searches for a route from stop A to stop E is directed to embark at stop A at 12:00 on Route A and to stay on the vehicle when it reaches stop C after the end of `RouteATrip1`. This is because the same vehicle services `RouteBTrip1` for Route B.\n- Passengers on `RouteATrip1` who want to continue on to a stop on `RouteBTrip1` can stay on the vehicle for this transfer.\n- Passengers of other trips on other vehicles along these same routes don't have this option because they use different vehicles for each trip.\n\n### Example 2: Block transfers for frequency-based trips with exact times\n\nBlock transfers are supported only for frequency-based trips that meet one of\nthe following conditions, in addition to the requirements listed in the\n[Prerequisites](#prerequisites) section:\n\n- If the trip is a loop, it must start and end at the same stop.\n- In `frequencies.txt`, the value of the `exact_times` field must be `1`.\n\nThe following example describes how to set the values for the second condition:\n\n`trips.txt`\n\n| `route_id` | `trip_id` | `block_id` |\n|------------|----------------|------------|\n| `route1` | `route1_trip1` | `block_2` |\n| `route2` | `route2_trip1` | `block_2` |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\n`stop_times.txt`\n\n| `trip_id` | `arrival_time` | `departure_time` | `stop_id` | `stop_sequence` |\n|----------------|----------------|------------------|-----------|-----------------|\n| `route1_trip1` | `08:00:00` | `08:04:00` | `stop1` | `1` |\n| `route1_trip1` | `08:10:00` | `08:14:00` | `stop2` | `2` |\n| `route1_trip1` | `08:20:00` | | `stop3` | `3` |\n| `route2_trip1` | | `08:24:00` | `stop3` | `1` |\n| `route2_trip1` | `08:30:00` | `08:34:00` | `stop4` | `2` |\n| `route2_trip1` | `08:40:00` | `08:44:00` | `stop5` | `3` |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\n`frequencies.txt`\n\n| `trip_id` | `start_time` | `end_time` | `headway_secs` | `exact_times` |\n|----------------|--------------|------------|----------------|---------------|\n| `route1_trip1` | `08:00:00` | `08:20:00` | `600` | `1` |\n| `route2_trip1` | `08:24:00` | `08:44:00` | `600` | `1` |\n\n\u003cbr /\u003e\n\nIn this example:\n\n- A user who searches for a route from `stop1` to `stop5` is directed to embark at `stop1` at 08:00 on `route1`. The user then stays on the vehicle when it reaches `stop3` after the end of `route1_trip1`. This is because the same vehicle services `route2_trip1` for `route2`.\n- Passengers on `route1_trip1` who want to continue on to a stop on `route2_trip1` can stay on the vehicle for this transfer.\n- Passengers of other trips on other vehicles along these same routes don't have this option because they use different vehicles for each trip.\n- Take `route1_trip1` for example. The value of `headway_secs` is half the interval between `start_time` and `end_time`. In this case, it means there are two trips. To learn more about the usage of `headway_secs`, refer to the [GTFS Schedule Reference on\n gtfs.org](https://gtfs.org/schedule/reference/#frequenciestxt).\n\nBlock transfer in a loop line\n-----------------------------\n\nIn a loop line, the first stop and the last stop of a trip are the same and have\nthe same `stop_id`. This is required for both schedule-based and frequency-based\ntrips.\n\nProvided that consecutive loop trips have the same `block_id`, block or in-seat\ntransfer is enabled, which lets passengers of the first trip remain on the\nvehicle when it continues on the next loop.\n\nValid blocks in GTFS feeds\n--------------------------\n\nFor block transfer to be possible, you must properly define one or more blocks\nin the feed. To pass validation, trips that belong to the same block can't\noverlap and must have the same `route_type` (subway, rail, bus, and so forth).\nTrips can belong to the same block even if they're on different days. If any\nblocks are defined in a static feed, they show in the Validation Report, on the\n**Overview** tab.\n| **Note:** The feed validator only checks the integrity of the feed. It doesn't check for any of the other conditions that make block transfer possible."]]