Integracja Kalendarza Google

Chcialem do powiadomień kalendarza do czasu który ustawilem w powiadomieniu dodać czas wyciągnięty z Waze, jeżeli do kalendarza google dodam powiadomienie i dodam lokalizację miejsca dostaje w nodzie debug info o miejscu zdarzenia. Potrzebuje jeszczej jakis sensor który robi się ON gdy miejsce jest wpisane.

Witajcie,
jak z kalendarza wyciągnąć najbliższe wydarzenie, ale nie całodzienne?
Edit:
i jeszcze jedno pytanie jak użyć offset?
chcę widzieć zdarzenie 7 godzin przed rozpoczęciem.

 - device_id: test
    name: test
    track: true
    search: "TEST"
    offset: "07:00"

i to mi nie działa …

@eWuPi edytuj posty - nie pisz jednego pod drugim

pytanie, jak zrobić w drugą stronę, np. wszystkie prania i użycie zmywarki dodawało do kalendarza?

Automatyzacja + Usługa Google Calendars: Add event

- cal_id: "***************************@group.calendar.google.com"
  entities:
  - device_id: calendar
    name: My Calendar
    track: true
    default_offset_time: "-00:15" # Trigger events 15 minutes early

Niestety działa … mam 8:57


  - device_id: sniadanie2
    name: Drugie śniadanie
    track: true
    search: "#śniadanie"
    default_offset_time: "-02:00"
message: Drugie śniadanie
all_day: false
start_time: '2021-10-27 10:30:00'
end_time: '2021-10-27 10:45:00'
location: ''
description: ''
offset_reached: false
friendly_name: Drugie śniadanie

no ale tu muszę podać wszystko na sztywno. Wszystkie eventy będą miały te samą godzinę startu, datę itp. Tu by mi się przydała jakaś zmienna do czasu i daty.

Przeszukałem chyba wszystkie posty z forum CHA i nie mam rozwiązania, wygląda mi na to, że już w treści zdarzeń w kalendarzu musi się znajdować !!-XX gdzie XX to czas (i nie może być większy niż 99 minut), problem w tym, że nie chciałbym modyfikować tematów w kalendarzu.
Czy ktoś anglojęzyczny mógłby zapytać się twórców integracji jak to osiągnąć?
W sumie najlepszym rozwiązaniem byłoby skorzystanie z powiadomień kalendarza Google i na tej podstawie dodać atrybut, z którego można by skorzystać.
image

Mam pytanko, bo chyba sam Google zmienił swój serwis. Przy robieniu integracji przerzuca mnie nie na stronę develop console a na console cloud. Też tak macie teraz?

Czy komuś udało się odczytać więcej niż tylko kolejne wydarzenie w podpiętym kalendarzu Google? Szukałem informacji na ten temat w różnych postach na forum i na zewnątrz, ale znalazłem tylko informacje o możliwości odczytu tylko najbliższego wydarzenia.

Udało mi się. @artur na ostatnim szkoleniu mówiłeś, że też się z tym borykasz.
Jest fajny dodatek:
image

Wchodzisz na google na swój kalendarz i musisz go udostępnić
image
Gdzieś na dole będzie udostępnienie kalendarza w formie iCal
image
Kopiujesz sobie ten link i następnie w integracjach dodajesz integrację iCal i uzupełniasz pola m.in. skopiowanym linkiem w pole URL
image

Standardowo “pobierają się” 5 przyszłych zdarzeń.
Po chwili stworzą się encję na każde zdarzenie oddzielna:

Jakie widzę problemy:

  • Jeśli przy dodawaniu integracji nie zminisz tej wartości 5 to nie wiem czy da się to potem zrobić. chyba nie.
  • Jeśli nie ma zdarzeń w przyszłości to zostają te stare. Zawsze jest pięć encji, nawet jeśli zdarzenia jest już historyczne. Ale można to spokojnie obejść, bo mamy czas danego zdarzenia wiec np. NodeRed sobie z tym spokojnie poradzi.

Jestem na etapie tworzenia automatyzacji informującej przez TTS o zdarzeniach w danym dniu.

3 polubienia

Cześć,
udało Ci się odczytać przez TTS zdarzenia z kalendarza z całego dnia?
Też chciałbym to u siebie uruchomić ale nie wiem czy sobie poradzę bo na razie nie jestem jakiś bardzo zorientowany w temacie HA.
Na chwile obecną zainstalowałem sobie dodatek o którym piszesz tj. iCal sensor.
Jak pokonałeś temat, to może mógłbyś opisać (w miarę dokładnie) po kolei co robić ?:slight_smile:

Jeszcze nie zrobiłem automatyzacji z tego. Nie miałem jeszcze czasu. Ale mam to w planach. Jak tylko coś zrobię to na pewno się podzielę.

1 polubienie

U mnie integracja z kalendarzem google kończy się tak… ktoś wie może co może być przyczyną? Wszystkie kroki zgodnie z filmem Artura i instrukcją… po wprowadzeniu kodów i zatwierdzeniu integracji pojawia się właśnie Error w logu nic nie widzę…

Trudno coś tu zobaczyć :slight_smile: To że nic nie widać jest czasami wina użytego motywu, zmień na jakiś inny i spróbuj jeszcze raz .

mam zwykły motyw, Overwiew

takie coś w logu znalazłem

Source: components/google/config_flow.py:148
First occurred: 5:43:45 PM (10 occurrences)
Last logged: 6:41:15 PM

Error handling request
Traceback (most recent call last):
File “/usr/local/lib/python3.10/site-packages/aiohttp/web_protocol.py”, line 435, in _handle_request
resp = await request_handler(request)
File “/usr/local/lib/python3.10/site-packages/aiohttp/web_app.py”, line 504, in _handle
resp = await handler(request)
File “/usr/local/lib/python3.10/site-packages/aiohttp/web_middlewares.py”, line 117, in impl
return await handler(request)
File “/usr/src/homeassistant/homeassistant/components/http/security_filter.py”, line 60, in security_filter_middleware
return await handler(request)
File “/usr/src/homeassistant/homeassistant/components/http/forwarded.py”, line 100, in forwarded_middleware
return await handler(request)
File “/usr/src/homeassistant/homeassistant/components/http/request_context.py”, line 28, in request_context_middleware
return await handler(request)
File “/usr/src/homeassistant/homeassistant/components/http/ban.py”, line 82, in ban_middleware
return await handler(request)
File “/usr/src/homeassistant/homeassistant/components/http/auth.py”, line 236, in auth_middleware
return await handler(request)
File “/usr/src/homeassistant/homeassistant/components/http/view.py”, line 136, in handle
result = await result
File “/usr/src/homeassistant/homeassistant/components/config/config_entries.py”, line 171, in get
return await super().get(request, flow_id)
File “/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py”, line 96, in get
result = await self._flow_mgr.async_configure(flow_id)
File “/usr/src/homeassistant/homeassistant/data_entry_flow.py”, line 280, in async_configure
result = await self._async_handle_step(
File “/usr/src/homeassistant/homeassistant/data_entry_flow.py”, line 367, in _async_handle_step
result: FlowResult = await getattr(flow, method)(user_input)
File “/usr/src/homeassistant/homeassistant/components/google/config_flow.py”, line 130, in async_step_creation
return await super().async_step_creation(user_input)
File “/usr/src/homeassistant/homeassistant/helpers/config_entry_oauth2_flow.py”, line 314, in async_step_creation
return await self.async_oauth_create_entry(
File “/usr/src/homeassistant/homeassistant/components/google/config_flow.py”, line 148, in async_oauth_create_entry
primary_calendar = await calendar_service.async_get_calendar(“primary”)
File “/usr/local/lib/python3.10/site-packages/gcal_sync/api.py”, line 330, in async_get_calendar
return Calendar.parse_obj(result)
File “/usr/local/lib/python3.10/site-packages/pydantic/main.py”, line 526, in parse_obj
return cls(**obj)
File “/usr/local/lib/python3.10/site-packages/pydantic/main.py”, line 342, in init
raise validation_error
pydantic.error_wrappers.ValidationError: 1 validation error for Calendar
accessRole
field required (type=value_error.missing)

Jaka wersja HomeAssistant ?

wersja Home Assistant 2022.11.2

Error integrating Google Calendar

Zainstaluj najnowszą wersje 2022.11.3

```2nd December should be 2022.12.0, the fix should be available in 2022.11.3 which should be earlier.``

1 polubienie

Ok, spróbuje zainstalować 2022.11.3 i zobaczymy, jak nie to poczekam na 2022.12.0. Dzięki za pomoc.

Edit:

@artpc Po updatecie do wersji 2022.11.3 poszło wszystko! Dzięki za pomoc