หน้านี้ระบุส่วนย่อยของข้อกำหนดการจำหน่ายตั๋ว GTFS ซึ่งอยู่ในขั้นตอนข้อเสนอ ในระหว่างการสร้างเอกสารนี้ หน้านี้ยังมีข้อจำกัดเพิ่มเติมหลายประการจาก Google
ข้อกำหนด
ฟิลด์ departure_time
ใน stop_times.txt
เป็นสิ่งจำเป็น
ประเภทช่องเพิ่มเติม
ส่วนนี้จะอธิบายประเภทช่องเพิ่มเติมและที่มีส่วนขยายจาก Google ใช้บ้าง ต้องมีค่าในรูปแบบ URI
- URI: Uniform Resource Identifier (URI) ที่สมบูรณ์ซึ่งมีรูปแบบ ช่วง สัญลักษณ์พิเศษใน URI ต้องใช้อักขระหลีกที่ถูกต้อง สำหรับรายละเอียดเกี่ยวกับวิธีสร้าง ค่า URI ที่สมบูรณ์ในตัวเอง โปรดดู RFC 3986 Uniform Resource Identifier (URI): ไวยากรณ์ทั่วไป
นามสกุลหรือการเพิ่มไฟล์
ไฟล์ข้อความที่มีสถานะส่วนขยายคือไฟล์ที่มีอยู่แล้ว และคุณต้อง ขยาย คุณต้องเพิ่มช่องใหม่ที่เรากำหนดในตารางต่อไปนี้
ไฟล์ข้อความที่มีสถานะเพิ่มเติมคือไฟล์ใหม่ที่ Google แผนการเดินทางแนะนำ ส่วนขยายการจำหน่ายตั๋ว คุณต้องสร้างไฟล์เหล่านี้ตาม คำจำกัดความช่องที่ระบุหลังตารางต่อไปนี้ อย่าลืม รวมไฟล์เหล่านี้ไว้ในฟีดของคุณ
ชื่อไฟล์ | รัฐ | นิยาม |
---|---|---|
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 |
ไม่บังคับ |
(รหัสจาก |
routes.txt
(ขยายไฟล์แล้ว)
ชื่อช่อง | การมีบุคคลอยู่ | รายละเอียด |
---|---|---|
ticketing_deep_link_id |
ไม่บังคับ | (รหัสจาก ticketing_deep_links.txt ) กำหนด Deep Link ที่จะใช้สำหรับการดำเนินการนี้
เส้นทาง หากมี ระบบจะเขียนทับช่องใน agency.txt |
trips.txt
(ขยายไฟล์แล้ว)
ชื่อช่อง | การมีบุคคลอยู่ | รายละเอียด |
---|---|---|
ticketing_trip_id |
ไม่บังคับ |
(รหัส) ตัวระบุที่จะส่งใน Deep Link ไม่จำเป็นต้องซ้ำ หาก |
ticketing_type |
ไม่บังคับ |
(Enum) ระบุว่าการจำหน่ายตั๋วผ่าน Deep Link พร้อมใช้งานสำหรับการเดินทางนี้หรือไม่
|
stop_times.txt
(ขยายไฟล์แล้ว)
ชื่อช่อง | การมีบุคคลอยู่ | รายละเอียด |
---|---|---|
ticketing_type |
ไม่บังคับ |
(Enum) กำหนดว่าการจำหน่ายตั๋วผ่าน Deep Link พร้อมใช้งานสำหรับเวลาสิ้นสุดนี้ไหม ถ้า
คุณกำหนด
|
ticketing_identifiers.txt
(เพิ่มไฟล์แล้ว)
กรณีที่พบมากที่สุดสำหรับการจำหน่ายตั๋วคือ ทุกจุดแวะพักจะมีตัวระบุสำหรับประมวลผลการเรียกเก็บเงิน เอเจนซีหลายรายอาจใช้ตัวระบุเดียวกันสำหรับจุดแวะพัก เมื่อมีเอเจนซีหลายรายให้บริการ จุดเดิมซ้ำ ให้ทําการแมปนี้ซ้ำสําหรับแต่ละเอเจนซี
ชื่อช่อง | การมีบุคคลอยู่ | รายละเอียด |
---|---|---|
ticketing_stop_id |
จำเป็น | (รหัส) กำหนดรหัสการจำหน่ายตั๋วเริ่มต้นสำหรับจุดแวะพักนี้ของเอเจนซีนี้ |
stop_id |
จำเป็น | (รหัสจาก stops.txt ) จุดแวะพักที่มีค่าเริ่มต้น
กำหนด ticketing_stop_id แล้ว |
agency_id |
จำเป็น | (รหัสจาก agency.txt ) เอเจนซีของจุดแวะพักที่มีค่าเริ่มต้น
กำหนด ticketing_stop_id แล้ว |
ticketing_deep_links.txt
(เพิ่มไฟล์แล้ว)
ชื่อช่อง | การมีบุคคลอยู่ | รายละเอียด |
---|---|---|
ticketing_deep_link_id |
จำเป็น | (รหัส) กำหนดรหัสสำหรับ Deep Link |
web_url |
ไม่บังคับ |
(URL) URL ที่จะเข้าชมสำหรับการทำ Deep Link ช่องนี้แปลผ่านภาษา |
android_intent_uri |
ไม่บังคับ |
(URI) URI ที่จะส่งไปยังแอป Android ที่มาพร้อมเครื่อง
Intent หากเว้นว่างไว้ หมายความว่าคุณไม่สามารถทำ Deep Link ไปยังแอป Android ที่มาพร้อมเครื่อง สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Deep Link บน Android โปรดดูสร้าง Deep Link เพื่อ เนื้อหาแอป ช่องนี้แปลผ่านภาษา |
ios_universal_link_url |
ไม่บังคับ |
(URL) URL ของลิงก์สากลที่จะเรียกใช้ใน iOS หากเว้นว่างไว้ การทำ Deep Link จะไม่แสดงใน iOS ดูข้อมูลเพิ่มเติมได้ที่ลิงก์ทั่วไปบน iOS ช่องนี้แปลผ่านภาษา |
ตัวยึดตำแหน่งช่องในการเรียก API
Google เรียก URL ที่ระบุไว้ใน ticketing_deep_links.txt
ด้วยข้อมูลต่อไปนี้
ได้แก่
ชื่อช่อง | รายละเอียด |
---|---|
service_date |
(วันที่ ทำซ้ำได้) วันที่ใช้บริการของการเดินทาง ใช้ฟิลด์นี้เพื่อดูวันที่ที่การเดินทางออกจากจุดแวะแรก ช่องนี้จัดรูปแบบเป็นอาร์เรย์ JSON |
ticketing_trip_id |
(รหัสจาก ช่องนี้จัดรูปแบบเป็นอาร์เรย์ JSON |
from_ticketing_stop_time_id |
(ทำซ้ำได้) ตัวระบุของ สำหรับเวลาหยุดที่เจาะจง ค่าจะเป็นดังนี้
ช่องนี้จัดรูปแบบเป็นอาร์เรย์ JSON |
|
(ใช้ซ้ำได้) ตัวระบุ ดูคำอธิบายเกี่ยวกับที่มาของค่านี้ได้ที่
ช่องนี้จัดรูปแบบเป็นอาร์เรย์ JSON |
boarding_time |
(ISO 8601, ทำซ้ำได้) เวลาออกเดินทาง ใช้ฟิลด์นี้สำหรับวันที่และเวลาจริงที่ผู้โดยสารขึ้นรถ ค่าเวลาของฟิลด์นี้สอดคล้องกับ ISO 8601 พร้อม รูปแบบสตริงต่อไปนี้:
เวลาทั้งหมดด้านล่างนี้เหมือนกันในเขตเวลาต่างๆ:
ช่องนี้จัดรูปแบบเป็นอาร์เรย์ JSON |
arrival_time |
(ISO 8601, ทำซ้ำได้) เวลาถึง, เวลาถึงที่หมายเวลา ที่เวลาแวะพัก สิ้นสุด ค่าเวลาของฟิลด์นี้สอดคล้องกับ ISO 8601 ในรูปแบบสตริงต่อไปนี้
เวลาทั้งหมดด้านล่างนี้เหมือนกันในเขตเวลาต่างๆ:
ช่องนี้จัดรูปแบบเป็นอาร์เรย์ JSON |
ตัวอย่าง
ในตัวอย่างนี้ เส้นทางต่อไปนี้เป็นเส้นทางของผู้โดยสาร
- ในวันที่ให้บริการ
20190716
รหัสตั๋วสำหรับการเดินทางti1
จะเริ่มจากจุดแวะพัก รหัสการจำหน่ายตั๋วเวลา11
เพื่อหยุดรหัสตั๋วเวลา12
ผู้โดยสาร ขึ้นเครื่องเวลา 14.00 น. (UTC) และถึงที่หมายเวลา 14:50 น. (UTC) - ในวันที่ให้บริการ
20190716
รหัสตั๋วสำหรับการเดินทางti2
จะเริ่มจากจุดแวะพัก รหัสคำขอแจ้งปัญหา21
เพื่อหยุดรหัสตั๋วเวลา22
ผู้โดยสาร ขึ้นเครื่องเวลา 15.00 น. (UTC) และถึงเวลา 15.50 น. (UTC)
สำหรับตัวอย่างนี้ 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 |
---|
|
routes.txt |
---|
|
trips.txt |
---|
ti1,ทุกวัน,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 |
---|
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 |
---|
si1,agency1,4924 si2,agency1,4676 |
ticketing_deep_links.txt |
---|
tdl1, https://examplepetstore.com/api/gtfs/web, https://examplepetstore.com/api/gtfs/android, https://examplepetstore.com/api/gtfs/ios |
หากส่งคำขอในวันที่ 19-07-2019 และเวลา 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 แผนการเดินทาง
หลักเกณฑ์ | |
---|---|
แชร์ Deep Link ระหว่างเอเจนซีหรือเส้นทางเมื่อเป็นไปได้ |
ในฟีดแบบคงที่ เมื่อใดก็ตามที่เอเจนซีหรือเส้นทางหลายแห่งมี URL ของ Deep Link เดียวกัน
แต่จะต้องใช้ค่าเดียวสำหรับช่อง |
กำหนดค่าที่สอดคล้องกันสำหรับ ticketing_type |
ค่า |
แมป ticketing_stop_id สำหรับจุดแวะพักของทั้งผู้เผยแพร่โฆษณาหลักและย่อย |
ทำการแมปป้ายจอดรถหลักและผู้เผยแพร่โฆษณาย่อยทั้งหมดที่ต้องมีการจำหน่ายตั๋ว ใน
ticketing_identifiers.txt ค่า ticketing_stop_id ไม่
เผยแพร่ระหว่างการหยุดระดับบนและหน่วยโฆษณาย่อย |
แมป ticketing_stop_id สำหรับแต่ละเอเจนซีที่ใช้จุดแวะพักเดียวกันใน
ฟีด |
ในฟีดแบบคงที่ หากเอเจนซีหลายรายที่เปิดใช้การขายตั๋วร่วมแสดงจุดแวะพักเดียวกัน ต้องมีการทำแผนที่สำหรับแต่ละหน่วยงาน ดูรายละเอียดเพิ่มเติมได้ที่ส่วนคำจำกัดความของช่อง
เป็นเวลา |
ใช้ Android App Link เมื่อต้องใช้ Deep Link ไปยังแอป Android |
หากพาร์ทเนอร์ต้องการเปิดแอป Android จาก Deep Link ให้ตั้งค่า Deep Link เป็น Android App Link |
ใช้ Universal Link ของ iOS เมื่อต้องใช้ Deep Link ไปยังแอป iOS | หากพาร์ทเนอร์ต้องการเปิดแอป iOS จาก Deep Link ให้ตั้งค่า Deep Link เป็น Universal Link ของ iOS |