Ta strona zawiera listę błędów weryfikacji i ostrzeżeń dotyczących pliku danych dotyczącego transportu w czasie rzeczywistym, a także wskazówki dotyczące rozwiązywania tych problemów.
Błędy weryfikacji w czasie rzeczywistym
Aby podawać pasażerom dokładne informacje, napraw błędy weryfikacji w pliku danych w czasie rzeczywistym.
Aby debugować błędy weryfikacji w czasie rzeczywistym, skorzystaj z informacji podanych w tabeli poniżej.
- Kolumna „Wartość wyliczeniowa” zawiera krótką nazwę problemu w pliku danych w czasie rzeczywistym, która wyświetla się w raporcie weryfikacji w panelu partnera Transportu publicznego.
- Kolumna „Komunikat o błędzie” zawiera komunikat, który wyświetla się w raporcie weryfikacji w panelu partnera Transportu publicznego. Podsumowuje on błąd.
- Kolumna „Wskazówki dotyczące rozwiązywania problemów” zawiera główne czynności, które musisz wykonać, aby naprawić błąd.
Wartość wyliczeniowa | Komunikat o błędzie | Rozwiązywanie problemów |
---|---|---|
PROTO_MISSING_FIELDS_ERROR |
W buforze protokołu binarnego brakuje pól %(field). | Otwórz plik w edytorze tekstu i sprawdź, czy zawiera on wszystkie pola oznaczone w buforze protokołu FeedMessage jako Wymagane. |
PROTO_ASCII_ERROR |
Nie można przeanalizować bufora protokołu ASCII. Błędy: %(field). | Otwórz plik w edytorze tekstu i sprawdź, czy plik danych zawiera wszystkie wymagane pola i czy ma prawidłową składnię. |
PROTO_PARSE_ERROR |
Nie można przeanalizować bufora protokołu binarnego. | Otwórz plik w edytorze tekstu i sprawdź, czy kanał można przetworzyć jako FeedMessage . Przykłady kodu znajdziesz w artykule Przykłady plików danych. |
URL_DNS_ERROR |
Błąd DNS dla adresu URL. | Sprawdź połączenie z internetem i ustawienia DNS. |
FETCHER_CONNECTION_ERROR |
Nie udało się połączyć z witryną URL. | Sprawdź adres URL podany w celu pobrania. Sprawdź, czy URL jest poprawny. |
CUSTOM_PARSE_ERROR |
Nie udało się przeanalizować pliku danych w formacie niestandardowym: %(value_string) | Sprawdź zawartość pliku w edytorze tekstu. Sprawdź, czy plik jest generowany prawidłowo i nie jest uszkodzony podczas przesyłania. Jeśli błąd będzie się powtarzał, poproś o pomoc przedstawiciela Google Transportu publicznego. |
FEED_TOO_OLD |
Sygnatura czasowa pliku danych %(timestamp) (%(timestamp_string)) minęła o %(diff_time) s (%(difftime_string)). Obecna godzina to %(localtime) (%(localtime_string)). Plik danych został odrzucony. | Sprawdź, czy nie zostały zgłoszone żadne inne problemy z pobraniem kanału. Regularnie generuj plik danych i dbaj o jego aktualność. Sprawdź, czy sygnatura czasowa pliku danych prawidłowo reprezentuje czas utworzenia pliku danych w sekundach po epoki (w strefie czasowej UTC). |
FETCHER_HTTP_ERROR |
Błąd HTTP: %(value). | Sprawdź zwrócony kod błędu HTTP i odpowiednio zbadaj problem. |
FULL_DATASET_REQUIRED |
Maksymalna liczba plików danych, jaką można przesłać, to FULL_DATASET . |
Ustaw wartość incrementality na FULL_DATASET . |
FEED_TIMESTAMP_CONSISTENTLY_IN_THE_FUTURE |
Sygnatura czasowa pliku danych jest wyświetlana w przyszłości o %(diff_time) s (%(difftime_string)). | Pamiętaj, aby podać sygnaturę czasową w strefie czasowej UTC, w sekundach po początku epoki. Sprawdź zegary serwera, aby upewnić się, że są zsynchronizowane (np. z NTP). |
INVALID_TIMESTAMP_RANGE |
Wartość sygnatury czasowej pliku danych jest poza zakresem (%(timestamp)). | Podaj sygnaturę czasową pliku danych, która określa czas utworzenia pliku danych w sekundach po epoki (w strefie czasowej UTC). |
PROTO_ENCODING_UNKNOWN |
Nieznane kodowanie kanału. | Skonfiguruj kanał przy użyciu prawidłowego kodowania. Ostateczny plik danych musi być w formacie binarnym, ale do testowania możesz użyć formatu ASCII. |
VEHICLE_POSITION_INTERNAL_ERROR |
Nie udało się przeprowadzić konwersji VehiclePosition na TripUpdate (%(trip_id)) z powodu ogólnego błędu „%(value_string)”. |
Ten błąd oznacza, że VehiclePosition nie jest używany do szacowania wartości TripUpdate . Aby uzyskać pomoc, skontaktuj się z przedstawicielem Transportu publicznego Google. |
Ostrzeżenia dotyczące weryfikacji w czasie rzeczywistym
Aby poprawić jakość danych w pliku danych, musisz naprawić ostrzeżenia dotyczące weryfikacji, które wskazują na potencjalne problemy z plikiem danych w czasie rzeczywistym.
Aby debugować ostrzeżenia dotyczące weryfikacji w czasie rzeczywistym, przeszukaj wpisy w poniższej tabeli.
- Kolumna „Wartość wyliczeniowa” zawiera krótką nazwę problemu w pliku danych w czasie rzeczywistym, która wyświetla się w raporcie weryfikacji w panelu partnera Transportu publicznego.
- Kolumna „Ostrzeżenie lub komunikat informacyjny” zawiera komunikat, który wyświetla się w raporcie weryfikacji w panelu partnera Transportu publicznego. Podsumowuje ostrzeżenie lub informacje.
- Kolumna „Wskazówki dotyczące rozwiązywania problemów” zawiera główne czynności, które musisz wykonać, aby usunąć ostrzeżenie.
Wartość wyliczeniowa | Ostrzeżenie lub komunikat informacyjny | Rozwiązywanie problemów |
---|---|---|
TRIP_UPDATE_SOME_STU_NOT_MATCHED |
Nie udało się dopasować %(value) z prawidłowych elementów (StopTimeUpdates ) typu trip_id „%(trip_id)” do podróży GTFS. Na przykład pozycja: %(index) stop_sequence: %(next_seq) stop_id : „%(stop_id)”. |
Sprawdź, czy wartości StopTimeUpdates są podane w odpowiedniej kolejności. |
VEHICLE_POSITION_DUPLICATE_TRIP_BLOCK_TRANSFER |
Kilka pojazdów zgłosiło przejazd blokowy: $(trip_id) i start_time
$(timestamp_string). |
Upewnij się, że tylko 1 pojazd reprezentuje podróż o określonej godzinie rozpoczęcia. |
INVALID_ALERT_ROUTE_NOT_MATCHED |
Alert odrzucony: nie udało się dopasować zasobu „%(route_id)” typu route_id do pliku danych GTFS. |
Sprawdź, czy statyczny harmonogram jest prawidłowy, i dodaj informacje o trasie, jeśli ich brakuje. Po uruchomieniu nowego statycznego harmonogramu popraw odwołanie do: route_id w pliku danych Czas rzeczywisty. |
INVALID_ALERT_STOP_NOT_MATCHED |
Alert został odrzucony: nie udało się dopasować zasobu „%(stop_id)” typu stop_id do pliku danych GTFS. |
Sprawdź, czy statyczny harmonogram jest prawidłowy, i dodaj informacje o przystankach, jeśli ich brakuje. Po uruchomieniu nowego statycznego harmonogramu popraw odwołanie do: stop_id w pliku danych czasu rzeczywistego. |
INVALID_ALERT_TRIP_NOT_MATCHED |
Alert został odrzucony: nie udało się dopasować zasobu „%(trip_id)” typu trip_id do pliku danych GTFS. |
Sprawdź, czy statyczny harmonogram jest prawidłowy, i dodaj informacje o podróży, jeśli ich nie ma. Po uruchomieniu nowego statycznego harmonogramu popraw odwołanie do: trip_id w pliku danych czasu rzeczywistego. |
STOP_TIME_UPDATE_PREMATURE_ARRIVAL |
Przylot StopTimeUpdate w przypadku podróży „%(trip_id)” z stop_id „%(stop_id)” i stop_sequence
%(next_seq) jest o %(value) s wcześniej niż poprzednio
StopTimeUpdate (stop_id „%(other_id)” i
stop_sequence %(prev_seq)). |
Sprawdź godzinę przyjazdu i odjazdu w przypadku tego miejsca (stop_id ) lub poprzednich rezerwacji. Popraw nieprawidłowe wartości, aby czasy się nie zmniejszały. |
INVALID_ALERT_NO_INFORMED_ENTITIES |
Należy podać co najmniej 1 poinformowany podmiot. | Umieść w alercie odpowiednie pole informed_entity . |
PROTO_ENCODING_MISMATCH |
Skonfigurowane kodowanie proto różni się od kodowania odebranego. | Prześlij plik danych w prawidłowym formacie. Jeśli problem nie ustąpi, poproś o pomoc przedstawiciela Google Transportu publicznego. |
STOP_TIME_UPDATE_PREMATURE_DEPARTURE |
Odjazd linii StopTimeUpdate z podróży „%(trip_id)” stop_id „%(stop_id)” i stop_sequence
%(next_seq) jest o %(value) s wcześniej niż w porównaniu z poprzednim: StopTimeUpdate (stop_id „%(other_id)” i stop_sequence %(prev_seq)). |
Sprawdź godzinę odjazdu tego pociągu (stop_id ) lub poprzednich lotów. Popraw nieprawidłowe wartości, aby czas odjazdu nie zmniejszył się. |
DETOUR_MUST_SPECIFY_TIME |
Objazd podróży „%(trip_id)” do przystanku „%(stop_id)” musi określać czas bezwzględny. | Podaj dokładny czas w elemencie stop_id , którego dotyczy problem, w przypadku określonego zasobu (trip_id ). |
ENTITY_MUST_HAVE_ALERTS |
Encja musi mieć alerty. | Sprawdź, czy zawartość kanału jest pełna i czy każda wiadomość FeedEntity zawiera informacje o alertach dotyczących usług. |
ENTITY_MUST_HAVE_POSITIONS |
Encja musi mieć pozycje. | Sprawdź, czy treści w pliku danych są kompletne i czy każdy komunikat FeedEntity zawiera informacje o położeniu pojazdu. |
ENTITY_MUST_HAVE_UPDATES |
Podmiot musi mieć aktualizacje dotyczące podróży. | Sprawdź, czy treści w pliku danych są kompletne i czy każda wiadomość FeedEntity zawiera informacje o aktualizacjach podróży. |
TIMESTAMP_FUTURE |
Sygnatura czasowa źródła treści w pliku danych %(timestamp) (%(timestamp_string)) przypada w przyszłości o %(diff_time) s (%(difftime_string)). Zawiera sygnaturę czasową pozyskania, która to %(localtime) (%(localtime_string)). | Pamiętaj, aby podać sygnaturę czasową w strefie czasowej UTC, w sekundach po początku epoki. Sprawdź zegary serwera, aby upewnić się, że są zsynchronizowane, np. z NTP. |
TIMESTAMP_PAST |
Sygnatura czasowa źródła treści %(timestamp) (%(timestamp_string)) przypada w przeszłości o %(diff_time) s (%(difftime_string)). Zawiera sygnaturę czasową pozyskania, która to %(localtime) (%(localtime_string)). | Generuj ponownie kanał w czasie rzeczywistym częściej, nawet jeśli jego zawartość pozostaje taka sama lub pusta. |
NO_VALID_TEXT |
Pole %(field) nie ma prawidłowych tłumaczeń. | Zapoznaj się z wiadomościami TranslatedString i rozwiąż wszelkie istotne problemy, takie jak HTML_TAGS_FOUND , INVALID_URL_LENGTH , INVALID_TEXT_LENGTH i INVALID_URL . |
HTML_TAGS_FOUND |
Pole %(field)(%(index)) zawiera tagi HTML. | Usuń z pola wszystkie tagi HTML. |
INVALID_LANGUAGE |
Pole %(field)(%(index)) zawiera nieprawidłowy kod języka „%(language)”. | W polu języka ustaw prawidłowy kod języka BCP-47. |
INVALID_URL |
Pole %(field)(%(index)) ma nieprawidłowy adres URL (oczekiwano bezwzględnego http lub https). | Dołącz prawidłowy adres URL alertu. |
INVALID_TEXT_LENGTH |
Pole %(field)(%(index)) ma długość %(length) (maksymalnie %(max_length)). | Skróć przesłany tekst, który często wyświetla się na małych ekranach, np. na telefonach komórkowych. Jeśli chcesz podać użytkownikom więcej informacji, podaj odwołanie do adresu URL. |
INVALID_URL_LENGTH |
Pole %(field)(%(index)) ma długość adresu URL %(length) (maksymalnie %(max_length)). | Podaj adres URL, który nie przekracza limitów. |
MULTIPLE_UNSPECIFIED_LANGUAGE |
Pole %(field)(%(index)) to tłumaczenie powtarzane bez ustawionego języka. | Przejrzyj wiadomości (TranslatedString ). Ustaw poprawne wartości w polu language , w którym podano więcej niż 1 tłumaczenie. |
INVALID_TRIP_UPDATE_DELAY |
Nieprawidłowe opóźnienie w aktualizacji podróży: %(value). | Sprawdź pole delay wybranego elementu entity_id i popraw nieprawidłową wartość. |
INVALID_TRIP_UPDATE_EVENT_TIME |
Nieprawidłowy czas zakończenia zdarzenia: %(timestamp). | Uwzględnij TripUpdates tylko w przypadku podróży trwających lub odbywających się w najbliższej przyszłości. |
INVALID_TRIP_UPDATE_DEPARTURE_NO_TIME |
Nie podano informacji o odjazdach: time ani delay . |
W każdej wiadomości StopTimeEvent dodaj pole time , pole delay lub oba te pola. Jeśli informacje są niedostępne, pomiń pole departure . |
INVALID_TRIP_UPDATE_ARRIVAL_NO_TIME |
Ani time , ani delay nie potwierdziły przyjazdu. |
W każdej wiadomości StopTimeEvent dodaj pole time , pole delay lub oba te pola. Jeśli informacje są niedostępne, pomiń pole arrival . |
MISSING_CONTENT_AND_EFFECT |
Brak prawidłowej treści lub prawidłowego efektu. | Dodaj do alertu effect , header_text lub description_text . Jeśli nie ma dostępnych informacji, usuń alert . |
CUSTOM_PARSE_WARNING |
Częściowy błąd podczas analizowania pliku danych w formacie niestandardowym: %(value_string) | Ten błąd oznacza, że części kanału w czasie rzeczywistym nie udało się przeanalizować. Otwórz edytor tekstu, aby sprawdzić zawartość pliku danych, lub prześlij go ponownie. Jeśli błąd będzie się powtarzał, poproś o pomoc przedstawiciela Google Transit. |
VEHICLE_POSITION_BAD_START_TIME |
Określony czas rozpoczęcia podróży $(trip_id) znajduje się za %(diff_time) s od faktycznego uruchomienia pojazdu. | Określ czas rozpoczęcia przejazdu pojazdu zbliżającego się do faktycznej godziny rozpoczęcia podróży. |
INVALID_TRIP_UPDATE_INCONSISTENT_IDS |
stop_sequence %(value) nie pasuje do przystanku „%(stop_id)” dla podróży „%(trip_id)”. Zastępuje go stop_sequence
%(next_seq) z indeksu statycznego. |
Sprawdź, czy wartość w polu stop_sequence jest prawidłowa i czy odpowiada wartości stop_sequence w przypadku tych samych elementów stop_id i trip_id w bieżącym statycznym pliku danych. |
INVALID_STOP_STOP_ID |
Odrzucono: StopTimeUpdate : nie udało się dopasować kryterium stop_id „%(stop_id)” do podróży „%(trip_id)” do pliku danych GTFS.
stop_sequence [jeśli istnieje] %(value). |
Sprawdź poprawność statycznego pliku danych. W razie potrzeby popraw wartość stop_id w stop_times.txt dla podróży. Poczekaj, aż nowa wersja statycznego pliku danych będzie dostępna. Zaktualizuj plik referencyjny stop_id w pliku danych w czasie rzeczywistym. |
INVALID_STOP_SEQUENCE_ID |
Odrzucono: StopTimeUpdate : nie udało się dopasować stop_sequence %(value) w podróży „%(trip_id)” do pliku danych GTFS. |
Sprawdź poprawność statycznego pliku danych. W razie potrzeby popraw wartość stop_sequence . Poczekaj, aż nowa wersja statycznego pliku danych będzie dostępna. Zaktualizuj plik referencyjny stop_sequence w pliku danych w czasie rzeczywistym. |
INVALID_TRIP_UPDATE_ORDER |
Odrzucono: StopTimeUpdate : naruszenie zasad dotyczących zamówienia (stop_sequence ) dla: trip_id „%(trip_id)” stop_id [jeśli występuje]
„%(stop_id)”, stop_sequence %(prev_seq), a następnie
%(next_seq). |
Pamiętaj, aby ustawić kolejność elementów StopTimeUpdates w polu stop_sequence . |
FEED_TIMESTAMP_CONSISTENTLY_IN_THE_PAST |
Sygnatura czasowa pliku danych jest zgodna z przeszłymi czasami w przeszłości o %(diff_time) s (%(difftime_string)). | Sprawdź, czy wartość sygnatury czasowej jest podana w strefie czasowej UTC, w sekundach po początku epoki. Sprawdź, czy zegary Twojego serwera są synchronizowane, np. z NTP. Pamiętaj, aby regularnie aktualizować plik danych. |
TIMESTAMP_MISSING |
W elemencie FeedHeader pliku danych brakuje pola timestamp . |
Wypełnij pole timestamp w polu FeedHeader w sekundach po zakończeniu epoki, w strefie czasowej UTC. Sygnatura czasowa musi prawidłowo odzwierciedlać czas generowania pliku danych. |
ENTITY_MORE_THAN_ONCE |
Identyfikator elementu FeedEntity pojawia się w pliku danych więcej niż raz. |
Upewnij się, że wszystkie identyfikatory elementów w pliku danych są unikalne. |
PROTO_ASCII_HAS_BOM |
Podany kanał zaczyna się od znacznika kolejności bajtów (BOM). | Usuń znacznik kolejności bajtów. Sprawdź, czy bufor protokołu w formacie tekstowym ma format UTF-8 bez BOM. Zalecamy udostępnienie bufora protokołu w formacie binarnym. |
TRIP_UPDATE_TIMESTAMP_CONSISTENTLY_IN_THE_FUTURE |
timestamp w przypadku niektórych aktualizacji związanych z podróżą wyświetla się w przyszłości o %(diff_time) s (%(difftime_string)). |
Potwierdź, że wartość timestamp jest sformatowana jako strefa czasowa UTC w sekundach po początku epoki. Sprawdź, czy zegary Twojego serwera są synchronizowane, na przykład z NTP. Usuń z pliku danych TripUpdates w przypadku podróży zakończonych ponad godzinę temu. |
VEHICLE_POSITION_TIMESTAMP_CONSISTENTLY_IN_THE_FUTURE |
Sygnatura czasowa jest stale przesuwana w przyszłość o %(diff_time) s (%(difftime_string)). | Potwierdź, że wartość timestamp jest sformatowana jako strefa czasowa UTC w sekundach po początku epoki. Sprawdź, czy zegary Twojego serwera są synchronizowane, na przykład z NTP. |
VEHICLE_POSITION_TIMESTAMP_CONSISTENTLY_IN_THE_PAST |
Wartość timestamp jest wyświetlana w przeszłości o %(diff_time) s (%(difftime_string)). |
Potwierdź, że wartość timestamp jest sformatowana jako strefa czasowa UTC w sekundach po początku epoki. Sprawdź, czy zegary Twojego serwera są synchronizowane, na przykład z NTP. Usuń z pliku danych VehiclePositions w przypadku podróży zakończonych ponad godzinę temu. |
UNKNOWN_TRIP_ID |
Identyfikator podróży „%(trip_id)” jest nieznany w statycznym pliku danych GTFS. | Sprawdź statyczny plik danych, aby mieć pewność, że zawiera on prawidłowe i aktualne informacje.
Sprawdź, czy używana jest prawidłowa wersja statycznego pliku danych, lub w razie potrzeby prześlij prawidłową wersję. Podaj istniejącą i poprawną wartość trip_id w TripDescriptor . |
TRIP_OUTSIDE_SERVICE_WINDOW |
Podróż o identyfikatorze „%(trip_id)” nie jest dostępna w określonym czasie. | Sprawdź poprawność statycznego pliku danych. Dodaj informacje o podróży, jeśli ich brakuje. Poczekaj, aż nowa wersja statycznego pliku danych będzie dostępna. Popraw odwołanie do trip_id w pliku danych czasu rzeczywistego. |
AMBIGUOUS_TRIP_DESCRIPTOR |
Atrybut TripDescriptor jest niejednoznaczny i nie odnosi się do pojedynczej podróży w określonym czasie. |
Jeśli podróż jest zależna od częstotliwości, podaj w polu TripDescriptor prawidłową wartość start_time i start_date . |
INVALID_TRIP_UPDATE_FUTURE_TIMESTAMP |
Sygnatura czasowa elementu TripUpdate %(timestamp) (%(timestamp_string)) przypada w przyszłości o %(diff_time) s (%(difftime_string)) w porównaniu z sygnaturą czasową pliku danych, która jest %(localtime) (%(localtime_string)). |
Sprawdź, czy źródło zegara ma ustawioną prawidłową godzinę. Sprawdź, czy wszystkie konwersje stref czasowych są wykonywane poprawnie. Pole Vehicle.Position.timestamp musi być sformatowane jako strefa czasowa UTC w sekundach po epoki. |
INVALID_VEHICLE_POSITION_FUTURE_TIMESTAMP |
Sygnatura czasowa elementu VehiclePosition %(timestamp) (%(timestamp_string)) przypada w przyszłości o %(diff_time) s (%(difftime_string)) w porównaniu z sygnaturą czasową pliku danych, która jest %(localtime) (%(localtime_string)). |
Sprawdź, czy źródło zegara ma ustawioną prawidłową godzinę. Sprawdź, czy wszystkie konwersje stref czasowych są wykonywane poprawnie. Pole Vehicle.Position.timestamp musi być sformatowane jako strefa czasowa UTC w sekundach po epoki. |
INVALID_VEHICLE_POSITION_STALE_TIMESTAMP |
Sygnatura czasowa elementu VehiclePosition %(timestamp) (%(timestamp_string)) przypada w przeszłości o %(diff_time) s (%(difftime_string)) w porównaniu z sygnaturą czasową w pliku danych, która jest %(localtime) (%(localtime_string)). |
Usuń z pliku danych pojazdy niesprawne. Sprawdź, czy zegar jest zsynchronizowany i czy konwersja strefy czasowej jest prawidłowa. |
INVALID_ALERT_TIME_RANGE_END_PAST |
Zakres czasowy zakończył się ponad miesiąc temu: %(time_end). | Usuń alerty (lub active_periods ), których godzina zakończenia przypada w przeszłości i jest już nieaktywna. |
INVALID_ALERT_TIME_RANGE_ORDER |
Kolejność zakresów czasu jest odwrócona: (%(time_start), %(time_end)). | Sprawdź wartość pól active_period . Kolejność tych pól może być odwrócona. |
INVALID_ALERT_TIME_RANGE_START_FUTURE |
Zakres czasowy rozpoczyna się za ponad rok: %(time_start). | Uwzględnij w alertach godzinę rozpoczęcia active_period w najbliższej przyszłości. |
STOP_TIME_AND_DELAY_MISMATCH |
Podróż „%(trip_id)” na przystanku „%(stop_id)” określa sygnaturę czasową %(timestamp) i opóźnienie (%(delay)), które są ze sobą sprzeczne. Ustawiam opóźnienie na %(value). | Sprawdź, czy kanał w czasie rzeczywistym odpowiada opublikowanemu statycznemu kanałowi. Upewnij się, że pola delay i time w StopTimeEvent są poprawne i spójne. Możesz też całkowicie pominąć pole delay i podać tylko pole time . |
INVALID_START_DATE |
Podróż „%(trip_id)” ma nieprawidłową datę rozpoczęcia „%(value_string)”, zakładając, że dzisiaj. Oczekiwany format: „RRRRMMDD”. | Sprawdź wartość parametru start_date dla określonej podróży. Upewnij się, że wartość jest prawidłowa. |
INVALID_START_TIME |
Podróż „%(trip_id)” ma nieprawidłową godzinę rozpoczęcia „%(value_string)”. Oczekiwany format to „GG:MM:SS”. | Sprawdź wartość i format start_time dla określonej podróży. Upewnij się, że wartość i format są prawidłowe. |
VEHICLE_POSITION_DUPLICATE_TRIP |
Kilka pojazdów zgłosiło trasę $(trip_id) i start_time $(timestamp_string). |
Zmień start_time podróży i zmień ScheduleRelationship na ADDED w przypadku podróży niezwiązanych z częstotliwością. |
VEHICLE_POSITION_CONVERTED_TO_ADDED |
Relacja w harmonogramie podróży $(trip_id) została zmieniona na podróż ADDED . |
Ten błąd jest efektem ubocznym innego problemu. Aby naprawić ten błąd, najpierw rozwiąż ten problem. |
INVALID_TRIP_UPDATE_MISSING_IDS |
Aktualizacja podróży zawiera parametr stop_update , który nie zawiera ani stop_sequence , ani stop_id . |
Do wiadomości StopTimeUpdate dodaj element stop_id , stop_sequence lub oba te elementy. |
MULTIPLE_ENTITIES_PER_TRIP |
Aktualizacja podróży została odrzucona: reprezentuje ten sam obiekt trip_id „%(trip_id)” z tym samym czasem rozpoczęcia co inny element o identyfikatorze %(value_string). |
Upewnij się, że dla każdej rzeczywistej podróży występuje maksymalnie 1 TripUpdate .
Upewnij się, że TripDescriptor jest unikalny w pliku danych. |
INVALID_TRIP_UPDATE_MISSING_CONTENT |
Aktualizacja podróży dla zaplanowanego celu trip_id „%(trip_id)” powinna zawierać dane co najmniej 1 przystanku lub określić opóźnienie. |
Prześlij jedną z tych informacji:
|
TRIP_UPDATE_SUSPICIOUS_DELAY |
Podróż z: trip_id „%(trip_id)” zawiera podejrzanie bezzasadne opóźnienie wynoszące %(difftime_string). |
Sprawdź, czy TripDescription jest jasno zdefiniowany i musi mieć właściwości trip_id , start_date i start_time . Sprawdź, czy StopTimeUpdates ma wartości czasu pasujące do określonej podróży. Sprawdź, czy nie występują problemy z niezgodnością strefy czasowej, np. czy start_date i start_time znajdują się w lokalnej strefie czasowej, ale wszystkie całkowite pola czasu w FeedMessage są podane w sekundach po epoce. |
TRIP_UPDATE_OBSOLETE |
Podróż „%(trip_id)” z użytkownikiem trip_id zakończyła się %(difftime_string) temu. |
Usuń podróże z pliku danych kilka minut po dotarciu do ostatniego przystanku. |
UNSUPPORTED_ADDED_WITH_BLOCK_TRANSFER |
Pole TripDescriptor o wartości schedule_relationship o wartości ADDED w przypadku podróży %(trip_id) z transferem blokowym nie jest obsługiwane. |
Używaj tylko wartości ADDED dla atrybutu ScheduleRelationship , aby wskazać wyizolowane podróże. |
UNSUPPORTED_ADDED_WITHOUT_TIMES |
TripDescriptor z schedule_relationship o wartości ADDED w przypadku podróży %(trip_id) bez podanych godzin. |
Podaj start_date i start_time , aby wskazać, kiedy rozpoczęła się dodana podróż. |
TRIP_UPDATE_TOO_OLD |
Sygnatura czasowa %(timestamp) (%(timestamp_string)) elementu TripUpdate minęła o %(diff_time) s (%(difftime_string)). Obecna godzina to %(localtime) (%(localtime_string)). Wartość TripUpdate została odrzucona. |
Regularnie generuj plik danych i dbaj o aktualność danych. Sprawdź, czy sygnatura czasowa TripUpdate jest poprawna (w sekundach od początku epoki) i sformatowana jako strefa czasowa UTC. Usuń podróże z pliku danych kilka minut po dotarciu do ostatniego przystanku. |
INVALID_TRIP_UPDATE_DELAY_USAGE |
Pole delay obiektu TripUpdate zostało określone wraz z czasem w StopTimeUpdates . |
Podaj informacje o czasie, używając tylko jednego z tych sposobów:
|
INVALID_VEHICLE_POSITION_VEHICLE_ID_MISSING |
VehiclePosition nie ma identyfikatora pojazdu. |
Podaj identyfikator pojazdu. Upewnij się, że ta wartość jest stabilna we wszystkich wersjach pliku danych, w których używany jest pojazd. |
INVALID_VEHICLE_POSITION_INVALID_POSITION |
VehiclePosition nie ma prawidłowych informacji o pozycji. |
Podaj prawidłowe wartości w polach latitude i longitude . |
INVALID_VEHICLE_POSITION_TIMESTAMP_MISSING |
Brak sygnatury czasowej elementu VehiclePosition . |
Podaj wartość sygnatury czasowej określającą czas zebrania informacji o VehiclePosition (w sekundach od początku epoki) sformatowaną jako strefa czasowa UTC. |