Přihlásím se k odběru několika externích zdrojů kalendáře ze svého Kalendáře Google (v rámci účtu Google Apps) a jsem zvědavý, jak často se aktualizují.

Mám například předplatné kalendáře TripIt.com. Pokud provedu změnu v TripIt, může to trvat několik dní, než se tato změna objeví v mém Kalendáři Google.

Jak často Kalendář Google tyto zdroje aktualizuje?

Komentáře

  • to je opravdu otravné … vícekrát moje žena naštěstí “ připomněla “ mě o důležité události během několika hodin, kterou si vložila do kalendáře, který jsem nikdy neviděl, protože tyto události se nezobrazují včas. Všimli jste si, že díky ručnímu obnovení se to objeví dříve?

Odpovědět

Google říká every několik hodin , což podle mých zkušeností znamená 6-24.

V současné době jsou kalendáře automaticky aktualizovány Kalendářem Google každých několik hodin. Chápeme, že někteří uživatelé chtějí mít možnost ručně aktualizovat kalendáře, které přidali, a zkoumáme různé způsoby, jak to povolit.

Pokud kalendář, ke kterému se přihlásíte k odběru pomocí Kalendáře Google, nebude obnoven po 24 hodin, pošlete nám adresu kalendáře a podrobnosti problému, abychom jej mohli prošetřit.

Zdroj

Komentáře

Odpověď

Pro každého, kdo je v tomto vlákně nebo jej v budoucnu uvidí, jsem vytvořil Program Google Apps Script pro aktualizaci kalendáře tak často, jak chcete (až každou minutu). Je k dispozici zde: https://script.google.com/d/1BOk8MDLbLaHh6SwG1M1tsgNXjkcC-79LE0QoipRuTDxbO3fMVvqoROQD/edit?usp=sharing

Skript analyzuje soubor ics / ical a vytvoří události v kalendáři založeném na tom pomocí verze Google Apps Script rozhraní Google Calendar API.

Doufejme, že to pomůže vám a někomu, kdo to v budoucnu uvidí

Komentáře

  • Máte šanci přidat funkci pro mazání událostí, pokud byly odebrány ze získaného kalendáře?
  • @ABrothers That ‚ s zde sledovány: github.com/derekantrican/Google-Apps-Script-Library/issues/5
  • Nemohu ‚ ho spustit pro práci s facebook ‚ s webcal. Např .: webcal: //www.facebook.com/ical/ u.php? uid = 100001 …. říká neplatná URL?
  • @LeoUfimtsev Jak jsem řekl, když jste otevřeli problém , pošlete mi prosím e-mail a mohu vám pomoci
  • Právě jsem to objevil a doufal, že to bude Vyzkoušejte dlouhou nepříjemnost pomalé synchronizace. Bohužel vidím, že skript ‚ t nepodporuje opakující se události a naše společnost je používá hodně. Pokud ‚ nenajdu jinou alternativu, ‚ zvážím rozvětvení a pokus o implementaci podpory opakovaných schůzek.

Odpověď

Oficiálním zdrojem je https://support.google.com/calendar/answer/37100?hl=en&ref_topic=1672445#add_via_link (v části „Přidat pomocí odkazu“).

Může trvat až 12 hodin, než se změny projeví v váš kalendář Google.

V dřívějších verzích této odpovědi psali „až 8 hodin“ – svou odpověď jsem aktualizoval podle níže uvedených komentářů.

Komentáře

  • Nyní je v poznámce uvedeno It might take up to 12 hours for changes to show in your Google Calendar.
  • Tento odkaz nyní přejde na stránku, která se věnuje poněkud odlišnému tématu: Add someone else's Google calendar.
  • informace stále existují v “ Přidejte stránku někoho jiného ‚ s kalendářem Google „, ‚ jsou právě skryty v “ Přidat pomocí odkazu “ rozbalitelné části.

Odpověď

Všiml jsem si, že nyní může trvat několik dní, než se změny projeví. Vypadá to, že Google na své stránce nápovědy kalendáře zvýšil čas z „každých pár hodin“ na „až 8 hodin“ a nyní na „až 12 hodin“.

Poznámka: Změny ve vašem Kalendáři Google mohou trvat až 12 hodin.

Zdroj: Přidat kalendář Google někoho jiného: Přidat pomocí odkazu

Odpověď

Zdá se, že to závisí na zdroji. Např .: Zdroj událostí Facebooku se zdá být aktualizován poměrně rychle, zatímco (menší ?) aplikacím může trvat mnohem více hodin.

Odpověď

Vyzkoušel jsem mnoho řešení, včetně skriptu Google Apps uvedeného v jiná odpověď, ale má několik rohových případů (viz komentáře tam).

Takže tady je moje dočasné řešení, dokud Google nepřidá tlačítko Refresh now:

  • Jakmile si myslím, že ve zdroji kalendáře mohla být přidána nová událost, pokud chci sledovat pouze nové změny , používám pouze tento kód Pythonu:

    URL = "YOURURLHERE" DISPLAYPASTEVENTS = False import urllib.request, datetime try: import icalendar except: import pip._internal.main ; pip._internal.main.main(["install", "icalendar"]) data = urllib.request.urlopen(URL).read().decode() gcal = icalendar.Calendar.from_ical(data) for component in gcal.walk(): if component.name == "VEVENT": dtstart = component.get("dtstart").dt.astimezone() dtend = component.get("dtend").dt.astimezone() if dtend > datetime.datetime.now().astimezone() or DISPLAYPASTEVENTS: print("%s - %s %s" % (datetime.datetime.strftime(dtstart, "%a %d %b %Y %H:%M"), datetime.datetime.strftime(dtend, "%H:%M"), component.get("summary"))) 

    Příklad výstupu:

    St 13. listopadu 2019 09:00 – 10:30 Akce A
    St 13. listopadu 2019 10:30 – 12:00 Setkání B
    Pá 15. listopadu 2019 10:30 – 12:00 Akce C
    Po 18. listopadu 2019 15:00 – 17:30 Setkání D

  • Pak jsem zkontroloval nové události a znám ty nové. To je v podstatě vše, co chci. (Kalendář Google poté aktualizuje displej o 6–24 hodin později, ale alespoň vím nyní nové události).

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *