# GTFS, GTFS-RT at GBFS: Ano ang mga Pagkakaiba?

> Ihambing ang GTFS, GTFS-RT at GBFS para piliin ang iyong mobility data: naka-iskedyul na oras, na-update na impormasyon, mga estasyon at ibinahaging mga sasakyan.

Source: https://www.roote.ai/fil/guides/gtfs-gtfs-rt-at-gbfs-anong-kakaiba/
Language: fil
Author: ROOTE

Ang GTFS Schedule ay naglalarawan ng naka-iskedyul na alok ng transportasyon. Ang GTFS Realtime, na kadalasang tinatawag na GTFS-RT, ay naglalahad ng mga na-update na impormasyon tungkol sa serbisyo. Ang GBFS ay naglalarawan ng mga serbisyo ng shared mobility, kasama na ang kanilang mga estasyon at mga sasakyan na magagamit ayon sa mga na-publish na daloy. Pumili ng format batay sa tanong na kailangang sagutin ng iyong aplikasyon.

Inaayos ng mga format na ito ang data; hindi nila ginagarantiyahan ang pagkakaroon nito saanman o ang kalidad ng bawat daloy.

## GTFS para ilarawan ang naka-iskedyul na alok

Ang isang set ng GTFS Schedule ay naglalaman ng mga tabular na file na naglalarawan ng mga operator, hintuan, linya, biyahe at kanilang mga pagdaan. Ang mga kalendaryo ay nagsasaad ng mga araw na sakop. Ang mga file ay konektado sa pamamagitan ng mga identifier. [Sanggunian GTFS Schedule](https://gtfs.org/documentation/schedule/reference/).

Nakakatugon ito sa mga tanong tulad ng “nasaan ang hintuang ito?” o “anong mga pagdaan ang naka-iskedyul para sa serbisyong ito?”. Para magamit ang isang iskedyul, kailangang unawain ang kalendaryo at ang mga relasyon sa pagitan ng mga file.

Hindi sapat ang pagbasa lang ng listahan ng mga hintuan para makabuo ng mga pagdaan. Sa kabilang banda, maaring maging kapaki-pakinabang ang posisyon ng hintuan kahit walang ipinapakitang oras sa iskedyul.

## GTFS-RT para i-update ang impormasyon ng serbisyo

Maaaring magbigay ang GTFS Realtime ng mga update sa biyahe, posisyon ng mga sasakyan at mga alerto. Ang mga update sa biyahe ay tumutukoy sa mga pagdaan at pagbabago sa serbisyo. Ginagamit ng mga daloy ang Protocol Buffers, isang structured serialization format. [Panimula sa GTFS Realtime](https://gtfs.org/documentation/realtime/reference/).

Maaaring mag-publish ang isang tagagawa ng ilang kategorya ng impormasyon nang hindi naibibigay ang iba pa. Ang pagkakaroon ng daloy ng posisyon ay hindi nangangahulugang may mga pagtataya para sa lahat ng hintuan.

Para sa interface, pag-ibahin ang naka-iskedyul na pagdaan at ang na-update na pagtataya. Ang aming gabay na [teoretikal na oras at real-time](https://www.roote.ai/fil/guides/oras-ng-bus-anong-kaibahan-ng-teoretikal-at-real-time/) ay nagpapaliwanag ng pagkakaibang ito mula sa pananaw ng gumagamit.

## GBFS para sa shared mobility

Gumagamit ang GBFS ng JSON feeds para ilarawan ang shared mobility service. Depende sa sistema at bersyon, maaari nitong ilahad ang mga estasyon, ang kanilang kalagayan, mga sasakyan at iba pang katangian ng serbisyo. Nakikilala ng dokumentasyon ang impormasyon ng estasyon at mga estado ng availability. [Dokumentasyon ng GBFS](https://github.com/MobilityData/gbfs/blob/v2.3/gbfs.md).

Hatiin sa iyong aplikasyon ang mga lokasyong medyo matatag mula sa mga estado na mabilis magbago. Itabi ang bersyon ng format at kaukulang timestamp sa interpretasyon.

Ang feed ng availability ay hindi isang API para sa pagreserba o pag-unlock. Tumutulong ito para maipakita ang alok; ang proseso ng pag-upa ay sakop ng serbisyo mismo.

## Ihambing ayon sa gamit

| Pangangailangan | Format na dapat tingnan |
| --- | --- |
| Ilarawan ang mga naka-iskedyul na hintuan at linya | GTFS Schedule |
| Ipaliwanag ang mga naka-iskedyul na pagdaan at araw ng serbisyo | GTFS Schedule |
| I-update ang mga pagdaan o tumanggap ng impormasyon tungkol sa serbisyo | GTFS-RT, depende sa mga na-publish na daloy |
| Hanapin ang mga shared mobility na estasyon o sasakyan | GBFS, depende sa mga na-publish na datos |

Halimbawa ng disenyo: ipinapakita ng isang mapa ang mga hintuan ng tram at mga estasyon ng bisikleta. Ginagamit nito ang mga estruktural na datos para sa mga lokasyon at mga na-update na estado para sa availability ng bisikleta. May magkakaibang pangangailangan sa cache at update ang dalawang layer.

## Isaalang-alang ang mga limitasyon ng bawat pinagmulan

Suriin ang mga bersyon, opsyonal na mga field, saklaw at mga karapatan sa paggamit. Ang isang identifier ay may kahulugan lamang sa konteksto nito: maaaring magkasing-string ang dalawang tagagawa para sa magkaibang entity.

Asahan din ang nawawala o lipas na datos. Ang walang laman na listahan mula sa hindi available na daloy ay hindi dapat ituring bilang kawalan ng serbisyo. Iwasan ang tahimik na pagpapalit ng hindi kilalang impormasyon sa zero.

## Gamitin ang mga daloy nang direkta o gamit ang API

Ang direktang integrasyon ay nagbibigay sa iyo ng responsibilidad na kolektahin, suriin at unawain ang mga pinagmulan. Maaaring magbigay ang API ng isang karaniwang kasunduan, ngunit palaging basahin ang saklaw, mga babala at kondisyon nito.

Para sa unang paggamit sa ROOTE, tingnan ang [kung paano hanapin ang mga hintuan sa paligid gamit ang isang API](https://www.roote.ai/fil/guides/paano-maghahanap-ng-mga-hintuan-ng-transportasyon-malapit-gamit-ang-api/). Magsimula sa pangangailangan ng iyong interface, pagkatapos suriin ang mga talagang magagamit na field.

## Magbasa ng mga bahagi at pumili ng arkitektura

Sa GTFS Schedule, isang bahagi ng stop_times.txt ang nag-uugnay ng isang biyahe, isang hintuan, at isang planadong pagdaan. Ang pinaikling halimbawa sa ibaba ay pang-edukasyon: hindi ito isang kumpletong GTFS dataset at ang mga identifier nito ay kailangang iugnay sa trips.txt, stops.txt, at mga kalendaryo.

Para sa GTFS Realtime, hanapin ang mahalagang entidad: maaaring i-update ng TripUpdate ang isang pagdaan, inilalarawan ng VehiclePosition ang posisyon, at nagdadala ang Alert ng impormasyon tungkol sa serbisyo. Ang posisyon ng isang sasakyan ay hindi awtomatikong pagtaya ng pagdating. Ang transmisyong format ay Protocol Buffers; ang JSON na representasyon para sa diagnostic ay hindi ang binary stream na tinutukoy.

Sa GBFS, inilarawan ng station_information ang mga estasyon habang ang station_status ay naglalahad ng kanilang kasalukuyang estado. Ang mga pangalan ng ilang counter at mga magagamit na file ay nagbabago ayon sa bersyon. Ipinapakita ng sumusunod na JSON excerpt ang GBFS 2.3 at ang mga field na num_bikes_available at num_docks_available; siguraduhing suriin ang bersyon bago gamitin ang halimbawa.

Maaaring magsimula ang isang mapa ng mga lugar sa pamamagitan ng struktural na datos. Nangangailangan ang isang screen ng mga paparating na pagdaan ng mga kaukulang update at isang planadong fallback. Kinakailangan ng isang screen ng available na mga bisikleta ang pamamahala sa mga counter, mga kundisyon ng pag-arkila, at bisa batay sa oras. Ang tatlong screen na ito ay hindi awtomatikong nagbabahagi ng iisang patakaran sa cache.

```
# Extrait pédagogique de stop_times.txt
trip_id,arrival_time,departure_time,stop_id,stop_sequence
trip_demo,08:10:00,08:10:00,stop_demo,1

# Extrait pédagogique de station_status en GBFS 2.3
{
  "station_id": "station_demo",
  "num_bikes_available": 3,
  "num_docks_available": 7,
  "is_installed": true,
  "is_renting": true,
  "is_returning": true,
  "last_reported": 1720000000
}
```

[I-format ang pagkakaroon ng bisikleta at ang pagiging napapanahon nito](https://www.roote.ai/fil/guides/real-time-availability-of-bikes-how-to-display-in-app/)

[Pumili ng API o MCP para sa iyong produkto](https://www.roote.ai/fil/guides/api-o-mcp-pilipin-piliin-para-sa-mobility-data/)

## Mga Madalas Itanong

### Awtomatikong may real-time ba ang GTFS?

Hindi. Ang GTFS Schedule ay kumakatawan sa naka-iskedyul na alok; ang na-update na impormasyon ay nanggagaling sa ibang daloy, kabilang ang GTFS-RT.

### Nakakapag-unlock ba ng bisikleta ang GBFS?

Ipinapakita nito ang serbisyo at mga pampublikong datos nito. Ang pag-upa ay depende sa mga kakayahang ibinibigay ng operator.

### Nakakagarantiya ba ang isang standard format ng kumpletong saklaw?

Hindi. Ang format ay nagtatakda ng istraktura; ang saklaw at impormasyong inilalathala ay nakabatay sa mga pinagmulan.
