Google Transit bilet işlemleri uzantıları

Bu sayfa, GTFS-Biletleme spesifikasyonunun teklif aşamasındaki bir alt kümesini tanımlar lütfen unutmayın. Bu sayfada, Google'a dokunun.

Şartlar

stop_times.txt tablosundaki departure_time alanı gerekli.

Ek alan türleri

Bu bölümde, diğer alan türleri ve Google'dan uzantılara sahip alanlar özetlenmiştir. Biraz alanları URI biçiminde değerler gerektirir.

Dosya uzantıları veya eklemeleri

Uzantı durumundaki metin dosyaları zaten mevcut olan ve uzatın. Aşağıdaki tabloda tanımladığımız yeni alanları eklemeniz gerekir.

Ekleme durumuna sahip metin dosyaları, Google Transit tarafından kullanıma sunulan yeni dosyalardır. Bilet İşlemleri Uzantıları. Bu dosyaları Aşağıdaki tablodan sonra verilen alan tanımları. Şunları yaptığınızdan emin olun: bu dosyaları feed'inize ekleyin.

Dosya adı Eyalet Tanımlar
agency.txt Uzantı agency.ticketing_deep_link_id ekler.
routes.txt Uzantı routes.ticketing_deep_link_id ekler.
trips.txt Uzantı trips.ticketing_trip_id ve trips.ticketing_type eklenir.
stop_times.txt Uzantı stop_times.ticketing_type ekler.
ticketing_identifiers.txt Toplama Yeni dosya'yı tıklayın. Daha fazla bilgi için Alan tanımları bölümüne bakın.
ticketing_deep_links.txt Toplama Yeni dosya'yı tıklayın. Daha fazla bilgi için Alan tanımları bölümüne bakın.

Alan tanımları

agency.txt (dosya genişletildi)

Alan adı Varlık Ayrıntılar
ticketing_deep_link_id İsteğe bağlı

(ID from ticketing_deep_links.txt) Bunun için kullanılacak derin bağlantıyı tanımlar ajansında çalışır. routes.txt dilinde üzerine yazılabilir.

routes.txt (dosya genişletildi)

Alan adı Varlık Ayrıntılar
ticketing_deep_link_id İsteğe bağlı (ID from ticketing_deep_links.txt) Bunun için kullanılacak derin bağlantıyı tanımlar yol gösterir. Varsa agency.txt içindeki alanın üzerine yazar.

trips.txt (dosya genişletildi)

Alan adı Varlık Ayrıntılar
ticketing_trip_id İsteğe bağlı

(ID) Derin bağlantıda iletilecek tanımlayıcı. Benzersiz olması gerekmez.

ticketing_trip_id boşsa sistem Bunun yerine trip_id.

ticketing_type İsteğe bağlı

(Sıralama) Bu gezide derin bağlantı üzerinden bilet almanın kullanılabilir olup olmadığını belirleyin:

  • 0 veya boş:
    • Rota veya acente için bir ticketing_deep_link_id tanımlarsanız kullanılabilir.
    • Aksi takdirde kullanılamaz.
  • 1: Kullanılamıyor.

stop_times.txt (dosya genişletildi)

Alan adı Varlık Ayrıntılar
ticketing_type İsteğe bağlı

(Sıralama) Bu durdurma süresi için derin bağlantı üzerinden bilet almanın kullanılabilir olup olmadığını tanımlar. Eğer stop_times.ticketing_type değerini tanımlarsanız, bu, trip.ticketing_type.

  • Boş: trip.ticketing_type alanındaki değeri kullanır.
  • 0:
    • Rota veya acente için bir ticketing_deep_link_id tanımlarsanız kullanılabilir.
    • Aksi takdirde kullanılamaz.
  • 1: Kullanılamıyor.

ticketing_identifiers.txt (dosya eklendi)

Bilet işlemleri için en yaygın durum, her durağın faturalandırmayı işleme koyacak bir tanımlayıcıya sahip olmasıdır. Farklı ajanslar, herhangi bir durak için aynı tanımlayıcıyı kullanabilir. Birden fazla ajans, aynı durakta, bu eşlemeyi her ajans için tekrarlayın.

Alan adı Varlık Ayrıntılar
ticketing_stop_id Zorunlu (Kimlik) Bu acente için bu durakla ilgili varsayılan bilet işlemleri kimliğini tanımlar.
stop_id Zorunlu (Kimlik tarihi: stops.txt) Varsayılan olarak belirlenen durak ticketing_stop_id tanımlandı.
agency_id Zorunlu (Kimlik kaynağı: agency.txt) Varsayılan olarak belirlenen durağın ajansı ticketing_stop_id tanımlandı.

ticketing_deep_links.txt (dosya eklendi)

Alan adı Varlık Ayrıntılar
ticketing_deep_link_id Zorunlu (ID) Derin bağlantı için bir kimliği tanımlar.
web_url İsteğe bağlı

(URL) Derin bağlantı için ziyaret edilecek URL.

Bu alan translations.txt aracılığıyla çevrilemiyor.

android_intent_uri İsteğe bağlı

(URI) android.intent.action.VIEW intent.

Boşsa yerel bir Android uygulamasına derin bağlantı veremeyeceğiniz anlamına gelir.

Android'de derin bağlantılar hakkında daha fazla bilgi için şurada derin bağlantılar oluşturma: uygulama içeriği.

Bu alan translations.txt aracılığıyla çevrilemiyor.

ios_universal_link_url İsteğe bağlı

(URL) iOS'te çağrılacak evrensel bağlantı URL'si.

Boş bırakılırsa derin bağlantılar iOS'te gösterilmez.

Daha fazla bilgi için iOS'ta Geçiş Bağlantıları konusuna bakın.

Bu alan translations.txt aracılığıyla çevrilemiyor.

API çağrısındaki alan yer tutucuları

Google, ticketing_deep_links.txt içinde tanımlanan URL'leri aşağıdaki gibi çağırır parametre:

Alan adı Ayrıntılar
service_date

(Tarih, tekrarlanabilir) Gezinin servis günü.

Seyahatin ilk durağından ayrıldığı tarih için bu alanı kullanın.

Bu alan bir JSON dizisi olarak biçimlendirilir.

ticketing_trip_id

(Kimlik kaynağı: trips.txt, tekrarlanabilir) Gezinin tanımlayıcısı.

Bu alan bir JSON dizisi olarak biçimlendirilir.

from_ticketing_stop_time_id

(Tekrarlanabilir) Bacağın başladığı stop_time öğesinin tanımlayıcısı.

Belirli bir durma süresi için değer şu şekildedir:

  • ticketing_identifiers.txt içinde tanımlanan ticketing_stop_id agency_id ve stop_id için stop_time.

  • Aksi takdirde stop_sequence sayfasında yer alır.

Bu alan bir JSON dizisi olarak biçimlendirilir.

to_ticketing_stop_time_id

(Tekrarlanabilir) Ayağın sona erdiği stop_time tanımlayıcısı.

Değerin türeviyle ilgili açıklama için bkz. from_ticketing_stop_time_id

Bu alan bir JSON dizisi olarak biçimlendirilir.

boarding_time

(ISO 8601, tekrarlanabilir) Kalkış saati, departure_time, Bacağın başladığı stop_time.

Yolcunun araca bindiği gerçek tarih ve saat için bu alanı kullanın.

Bu alanın zaman değeri şuna uygundur: ISO 8601, şu dize biçimini seçin:

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

Aşağıdaki saat dilimlerinin tümü aynı (farklı saat dilimlerindedir:)

  • Londra, Birleşik Krallık'ta: 2019-07-29T18:26:00+01:00
  • NYC'de, ABD-NY: 2019-07-29T13:26:00-04:00
  • Tokyo, Japonya'da: 2019-07-30T02:26:00+09:00

Bu alan bir JSON dizisi olarak biçimlendirilir.

arrival_time

(ISO 8601, tekrarlanabilir) Varış saati, bacağın bulunduğu stop_time noktasında varış saati sona eriyor.

Bu alanın zaman değeri şuna uygundur: ISO 8601 ile uyumludur:

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

Aşağıdaki saat dilimlerinin tümü aynı (farklı saat dilimlerindedir:)

  • Londra, Birleşik Krallık'ta: 2019-07-29T18:46:00+01:00
  • NYC'de, ABD-NY: 29.07.2019T13:46:00-04:00
  • Tokyo'da, Japonya: 2019-07-30T02:46:00+09:00

Bu alan bir JSON dizisi olarak biçimlendirilir.

Örnekler

Bu örnekte bir yolcunun ayakları:

  • 20190716 hizmet tarihinde, seyahat bileti kimliği ti1 olan duraktan başlıyor zaman bilet işlemleri kimliğini (12) durdurmak için 11. Yolcu biniş saati, 14:00 (UTC) ve 14:50 (UTC) arasında varıyor.
  • 20190716 hizmet tarihinde, seyahat bileti kimliği ti2 olan duraktan başlıyor zaman bilet işlemleri kimliğini (22) durdurmak için 21. Yolcu biniş saati, 15:00 (UTC) ve saat 15:50'de (UTC) varıyor.

Bu örnekte web_url, https://examplepetstore.com değeridir.

Tüm bu bilgileri göz önünde bulundurarak, bu etkinlik için feed parametrelerinde aşağıdaki değerleri kullanın: seyahat:

Alan adı Ayrıntılar
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"]

Aşağıda, kodlamadan sonraki son URI verilmiştir:

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

Farklı kullanım örnekleri ticketing_stop_id değerleri

Duraklar, ticketing_identifiers.txt alanı boş bırakılamaz. Kalın karakterlerle gösterilen değerler, web görüşmesinde bulunan değerlerdir bazı işaretler bulabilirsiniz.

stop.txt

stop_id,stop_name

si1,"Paris Gare-de-Lyon"

si2,"Lyon Part-Dieu"

routes.txt

route_id,route_long_name,ticketing_deep_link_id

ri1,"Oui Paris-Lyon bölgesinde TGV",tdl1

trips.txt

trip_id,service_id,route_id,trip_short_name, ticketing_trip_id

ti1,her gün,ri1,"TGV INOUI 6603",FR_SNCF_6603

ti2,her gün,ri1,"TGV INOUI 6681",FR_SNCF_6681

ti3,her gün,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,ajans1,4924

si2,ajans1,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

İstek 19.07.2019 tarihinde yapılmışsa ve GTFS saatleri UTC+1 saat dilimindeyse web için yapılan çağrı şöyle:

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 bilet işlemleri uzantılarını uygulamak için aşağıdaki önerileri uygulayın:

Yönergeler
Mümkün olduğunda ajanslar veya rotalar arasında derin bağlantılar paylaşın.

Statik feed'de, birden fazla ajans veya rota aynı derin bağlantı URL'sine sahip olduğunda, ticketing_deep_link_id alanı için tek bir değer paylaşmaları gerekir. Bu acenteler ya da rotalar arasında aktarma yapılmasını sağlar.

ticketing_type için tutarlı değerler ayarlayın.

Belirli bir durak için ticketing_type değeri tüm platformlarda tutarlı olmalıdır stop_times.txt dosyasındaki satırlar.

ticketing_stop_id konumunu hem üst hem de alt duraklar için eşleyin. Bilet işlemleri gerektiren tüm üst ve alt duraklar için eşlemeyi yapın. ticketing_identifiers.txt dosyası varsa ticketing_stop_id değerleri bir üst durak ile alt noktaları arasında yayılır.
Aynı durağı kullanan her ajans için ticketing_stop_id feed'i seçin.

Statik feed'de, bilet işlemlerini etkinleştiren birden fazla ajans aynı durağı paylaşıyorsa her ajans için mevcut olması gerekir.

Daha fazla ayrıntı için Alan tanımları bölümüne bakın ticketing_identifiers.txt için.

Android uygulaması için derin bağlantı gerektiğinde Android App Links'i kullanın.

İş ortağı derin bağlantıdan Android uygulaması açmak isterse derin bağlantıyı şu şekilde oluşturun: Android uygulama bağlantısı.

iOS uygulaması için derin bağlantı gerektiğinde iOS Geçiş Bağlantılarını kullanın. İş ortağı derin bağlantıdan bir iOS uygulamasını açmak isterse derin bağlantıyı iOS Geçiş Bağlantısı.