Komunikacja miejska - rozkłady jazdy

Cześć,
witam wszystkich forumowiczów. Od jakiegoś roku bawię się HA. Ciągle się uczę i staram poszerzać swoją wiedze. Mimo, że nie jestem informatykiem, kod mnie nie przeraża. :slight_smile:
Chciałbym dodać integrację ‘rozkladzik’ (czy jeszcze działa ?) aby wyświetlać informacje o odjazdach w GZM.
Niestety nie potrafię dodać działającej karty HTML.
dodałem sensor w configuration.yaml, doinstalowąłem z HACS HTML Card, ale nie potrafię wyświetlić jakichkolwiek informacji. Próbowałem zastosować przykład z GitHub twórcy, ale przy próbie wklejania kodu wyświetlają mi się błędy…
Czy ktoś mógłby się podzielić działającym przykładem ? Najlepiej komplet czyli fragment z configuration.yaml i wyświetlenie tej samej informacji w karcie. Wystarczy jedna linia autobusowa. Z resztą sobie poradzę.
Dzięki za wyrozumiałość i pomoc.

A.

Prawy górny narożnik, jest lupa. Jak wpiszesz rozkladzik znajdziesz tam tematy które powinny Cię zainteresować :grinning:

Dziekuję za sugestie, ale aż tak początkujący to nie jestem :wink: Zanim napisąłem, przeczytałem wszystko co udało mi się znaleźć nie tylko na tym forum.
:slight_smile:

Pokaż kod karty i błędy jakie wyświetla się przy dodawaniu karty.

Poniżej fragment pliku configuration.yaml
image

oraz efekt przy próbie dodania karty.

Próbowałem oczywiście zmieniać liczby na te ‘id’ z pliku configuration.yaml. Ale nic to nie dąło. Domyślam się, że to jakiś głupi bład składni, czy niewłaściwej ilości spacji etc. Ale jako nieprogramista zwyczajnie tego nie widzę…

EDIT:
dodaję pęłny tekst, bo nie widać na fotce:

type: custom:html-card
title: 'Rozkładzik'
content: |
    <big><center>Departures</center></big>
    [[ sensor.rozkladzik_wroclaw_1709.attributes.html_departures ]]
    <big><center>Timetable</center></big>
    [[ sensor.rozkladzik_wroclaw_1709.attributes.html_timetable ]]
...

Z góry dzięki za pomoc.

Wklej jeszcze źródłowy YAML tworzący encję.

Edit - jest tylko taka istotna kwestia, że u mnie ten serwis nie działa…

być może mam zbanowany IP, bo na połączeniu GSM działa, a na stacjonarnym łączu nie…
w związku z tym nie będę mógł zasymulować działania u siebie…

hmmm… u mnie sam serwis rozkladzik.pl dla metropoli GZM działa (przynajmniej strona www) - od tego zacząłem …
image

No i już wiem w czym problem. Nie mam kodu encji … w FAQ na Github nie było o tym ani słowa (bo pewnie to dla programisty oczywiste - ale dla laika już niekoniecznie) … i prawdę mówiąc nie mam pojęcia jak się za to zabrać. Jakby był pełny opis wszystkich elementów w opisie integracji to nie miałbym problemu, bo modyfikując zapisy doszedłbym do wszystkiego.

Problem jest taki - kiedyś bez problemu przykładowo id przystanku był do znalezienia (oficjalna strona eksponowała jakiś kod html), ale do tego potrzebuję działania strony na komputerze, a nie na telefonie…

Jakkolwiek jeśli dorobiłem się zbanowania IP to chyba nie jest dobry znak dla potencjalnego użytkownika tego komponentu (w eksperymentalnej instalacji jak się okazuje miałem uruchomioną integrację, ale nie działała, ale teraz nie wiem dlaczego - czy po prostu mam trefny adres na światłowodzie czy wskutek działania komponentu został on zbanowany przez operatora rozkładzik.pl).

PS nie wiem co to jest metropolia GZM, możesz jaśniej? (G mi się skojarzyło z Gdańskiem, ale chyba byś napisał Trójmiasto?)

PPS pytałem o to co pokazałeś wyżej ale w formie screenshota, a ja chcę mieć YAML, bo nie będę tego przepisywał - encja MUSI najpierw działać, żeby się ją dało wizualizować…

rokzladzik-2024-11-04_11-54

Jestem ze Śląska. Górnośląsko-Zagłębiowska Metropolia (GZM) ma API, może ktoś kiedyś stworzy integrację do HA ( i dorzuciliby do tego rowery miejskie dostępne na stacjach… Chyba do nich napiszę nawet w tej sprawie …

fragment kodu:

sensor:
    - platform: abalin_nameday
      country: pl
      time_zone: Europe/Prague
     
    - platform: rozkladzik
      city: 'wroclaw'
      scan_interval: 3600
      stops:
        - id: 1281
          name: 'Plac Grunwaldzki'
          directions:
            - "Reja"
        - id: 94
          name: 'Rynek'
          stops_group_mode: true
          lines:
            - "33"

No dobra widzę, że to kod żywcem 1:1 z dokumentacji, ale kto powiedział, że to nadal działa (ani czy w ogóle kiedyś działało)?

Na telefonie sprawdziłem że rozkładzik dla Wrocławia działa, ale nie mogę niestety z telefonu pobrać jakichkolwiek danych potrzebnych dla integracji.

1 polubienie

Tak, kod żywcem z dokumentacji. Zazwyczaj tak się uczę. Próbuję coś co wg twórcy działa (składnia, opisy etc.) a później dopiero modyfikuję pod swoje potrzeby i rozszerzam. Do tej pory to nawet cąłkiem nieźle działa :wink: Bo trochę tych integracji mam za sobą. Ale tutaj utknąłem.

rowery to u mnie akurat działają dla Wrocławia, u nas operatorem jest Nextbike

komponent jest w HACS

widzę, że twoja okolica jest też obsługiwana


tak z innej beczki

masz ustawioną czeską strefę czasową

      time_zone: Europe/Prague

u nas jest

      time_zone: Europe/Warsaw

Na Górnym Śląsku też. Powinno zadziałać :slight_smile:

Jeszcze raz wielkie dzięki za chęć pomocy !
Może komuś działają autobusy i podpowie co robię źle.

Nic nie robisz źle (a może wszystko?) - musisz po prostu wyciągnąć narzędziami deweloperskimi przeglądarki identyfikatory miasta i przystanku

to jest ten kluczowy fragment dokumentacji

  • How to get values for configuration parameters? To find out values for configuration parameters follow the following steps:
    • Go to rozkladzik.pl and find desired stop.
    • Activate developer tools using [F12] button.
    • Click on chosen stop and in network tab look for call to https://www.rozkladzik.pl/<name_of_city>/timetable.txt?... URL
    • Value for stops_group_mode is determined by value of query parameter c. If it is equal to bsa you have to enable group mode.
    • Value for city comes from <name_of_city> path fragment.
    • Value for id comes from query parameter t or b for group mode.

możesz spróbować wejść pod taki adres i przełączyć się w tryb starego HTMLa
https://www.m.rozkladzik.pl
edit nie jest potrzebny tryb starego html’a

mając fokus na pinezce (link do mapy) w dymku na dole (to jest firefox, ale w innych przeglądarkach jest podobnie) widać identyfikator przystanku


przykład na podstawie Gdańska tu dworzec główny to przystanek 93 (tzn. ten konkretny przystanek, bo pod taką samą nazwą może być i inny, choćby w przeciwną stronę)

OK. pobawię się z jakimś przystankiem z mojej okolicy.
Założyłem, że problem jest w wyświetlaniu informacji a nie jej pobieraniem i że jak integracja nawet nie pobiera danych to wyświetli jakiś inny komunikat.

Niestety nie mam możliwości tego na szybko przetestować.

Rozkładzik działa i pobiera dane, mój yaml:

  - platform: rozkladzik
    city: 'lodz'
    stops:
      - id: 1866
        name: 'Warszawska 16'
      - id: 1876
        name: 'Wojska Polskiego - Południowa'

Teraz karta
Przechwytywanie

type: custom:html-template-card
ignore_line_breaks: true
content: >

  <big><span style="color: sienna;"


  data-darkreader-inline-color=""><center>Rozkład jazdy: Wojska Polskiego -
  Południowa</center></big>
    {{ state_attr('sensor.rozkladzik_lodz_1876','html_timetable') }}

Ale jak już dodasz coś nowego do integracji rozkładzik i zrestartujesz HA to sprawdź w opcjach developera czy masz jakieś dane dla swojej encji u mnie to np. sensor.rozkladzik_lodz_1876

A no i teraz zauważyłem że ja używam html-template-card a nie html-card :rofl:

2 polubienia

Super ! Dzięki :slight_smile: W wolnej chwili wrzucę i potestuję. Doinstaluję Htlml-Template-card i myślę, że sobie poradzę :slight_smile:

Powodzenia!

A jakbyś chciał odjazdy na żywo z przystanków to daj znać, myślę że da się też z GZM wyciągnąć, szczególnie że wspomniałeś że mają API. W Łodzi udało się coś takiego zrobić używając NodeRED

Przechwytywanie

3 polubienia

Zadziałało !!! Teraz tylko musze dopracować wersję wizualną.
Twoja wygląda świetnie. Nie znam NodeRED (mam w planach naukę), ale bardzo mi się podoba. !!!
Jeśli mogę prosić o jakieś wskazówki jak się za to zabrać - będę wdzięczny.

No a jakby udało się wyciągnąć rzeczywiste czasy przyjazdów z API to byłaby rewelacja. Na to jednak jednak jestem już za cienki i pewnie to sporo roboty o którą nie ośmielam się nikogo prosić.
Jakby jednak ktoś chciał się pobawić, to dokumentację można znaleźć chyba tutaj:
https://otwartedane.metropoliagzm.pl/en/dataset

1 polubienie