Moskus Skrevet 13. august 2019 Skrevet 13. august 2019 Mulig det er selve kalendernavnet jeg ikke har helt grep på. Kalenderen jeg er interessert i heter "Familien" så vidt jeg kan forstå: ... og dette eventet fungerer fint. (Glimrende jobbet, btw! ) Men så dette: ... gir ingenting. Nå har jeg endret plugin-funksjonen fra "GetItemsFromGoogleCalendar" til "GetItemsFromCalendar", og da får jeg feilmelding i loggen: aug-13 12:21:53 GCalSeer-Error Could not find a calendar named '"Familien"' ... EDIT: Og: aug-13 12:24:09 GCalSeer-Error Function GetItemsFromMsCalendar does not exist in this plugin EDIT2: Faen jeg er idiot. Riktig parameter er 3590,Familien,5. Dvs. uten hermetegn. Idiot. Siter
Guahtdim Skrevet 13. august 2019 Forfatter Skrevet 13. august 2019 (endret) GetItemsFromCalendar skal være den generelle som leter igjennom alle kalendere og henter ut hvis man finner navnet i en liste. GetItemsFromGoogleCalendar er for google GetItemsFromMsCalendar er for MS og skulle fungere. Men de scripttingene er vel egentlig mine "stebarn" og har fått litt lite kjærlighet (og jeg bruker det ikke selv). Jeg får kikke på det ikveld. Endret 13. august 2019 av Guahtdim fixed size Siter
Guahtdim Skrevet 13. august 2019 Forfatter Skrevet 13. august 2019 Hah, skriveleif ser jeg. Prøv med GetItemsForMsCalendar Men jeg er usikker på om du får noe mer events ut. Siter
Moskus Skrevet 13. august 2019 Skrevet 13. august 2019 20 minutter siden, Moskus skrev: EDIT2: Faen jeg er idiot. Riktig parameter er 3590,Familien,5. Dvs. uten hermetegn. Idiot. ??? 2 Siter
Guahtdim Skrevet 13. august 2019 Forfatter Skrevet 13. august 2019 @Moskus Så da er du i mål for nå? Siter
Moskus Skrevet 13. august 2019 Skrevet 13. august 2019 Jepp! Sub Main(ByVal Parms As Object) Dim msg As String = "" Try Dim ParmArray() As String ParmArray = Parms.ToString.Split(",") Dim deviceID = ParmArray(0) Dim calendarName = ParmArray(1) Dim numberOfDays = CInt(ParmArray(2)) Dim allEvents As Object allEvents = hs.PluginFunction("GCalSeer", "", "GetItemsFromCalendar", New Object() {calendarName, numberOfDays}) For Each ev As Object In allEvents Dim calendarEventAsString As String = "" If ev.StartDateTimeLocal.Date = Now.Date Then If ev.AllDayEvent Then calendarEventAsString = "Dagens " Else calendarEventAsString = "Kl. " End If End If If ev.StartDateTimeLocal.Date = Now.Date.AddDays(1) Then If ev.AllDayEvent Then calendarEventAsString = "I morgen " Else calendarEventAsString = "I morgen kl. " End If End If If ev.StartDateTimeLocal.Date < Now.Date.AddDays(2) Then If ev.AllDayEvent Then calendarEventAsString = calendarEventAsString & ev.Subject Else calendarEventAsString = calendarEventAsString & Format(ev.StartDateTimeLocal, "HH:mm") & " - " & ev.Subject End If Else If ev.AllDayEvent Then calendarEventAsString = calendarEventAsString & Format(ev.StartDateTimeLocal, "ddd dd.MM") & " (hele dagen) - " & ev.Subject Else calendarEventAsString = calendarEventAsString & Format(ev.StartDateTimeLocal, "ddd dd.MM HH:mm") & " - " & ev.Subject End If End If If ev.StartDateTimeLocal.Date = Now.Date Then calendarEventAsString = "<b>" & calendarEventAsString & "</b>" End If msg = calendarEventAsString & "</br>" & msg Next 'hs.WriteLog("test", "events found: " & msg) If msg = "" Then msg = "No Events Scheduled" End If hs.SetDeviceString(deviceID, msg, True) Catch ex As Exception hs.WriteLog("", "Exception in script: " & ex.Message) End Try 'hs.WriteLog("test", "---=== DONE ===---") End Sub 1 Siter
Guahtdim Skrevet 15. august 2019 Forfatter Skrevet 15. august 2019 (endret) En mindre oppdatering er gjort. Fjernet blant annet de 2 config sidene som ikke fungerte. Scriptmessig kan man nå bruke både GetItemsForMsCalendar og GetItemsFromMsCalendar. Sistnevnte ble beskrevet i dokumentasjon, men virket ikke siden jeg hadde laget GetItemsForMsCalendar isteden. ? Siste versjon finnes linket i første post. Endret 15. august 2019 av Guahtdim 1 Siter
toonwolf Skrevet 15. august 2019 Skrevet 15. august 2019 Er det "trygt" for meg å oppgradere til denne versjonen, eller er det fortsatt en "toonwolf" branch som har egne funksjoner som ikke er i denne? Vil ikke risikere å oppgradere for å finne ut at ingenting fungerer lenger. "Never upgrade a working system" eller noe sånt ? Siter
Guahtdim Skrevet 15. august 2019 Forfatter Skrevet 15. august 2019 40 minutes ago, toonwolf said: Er det "trygt" for meg å oppgradere til denne versjonen, eller er det fortsatt en "toonwolf" branch som har egne funksjoner som ikke er i denne? Vil ikke risikere å oppgradere for å finne ut at ingenting fungerer lenger. "Never upgrade a working system" eller noe sånt ? Haha - If it works don't touch! Denne versjonen (og forrige) skal nå også ha dine spesialtilpassninger i seg. Men du kan alltids la det snurre litt i testsystemet ditt inntil du er sikker. Siter
Moskus Skrevet 16. august 2019 Skrevet 16. august 2019 Hva er reglene for hvilke hendelser som dukker opp i plugin'en? Jeg har en hendelse i morgen som viste fint i på devicen min. Det er kl. 16:00 i morgen. Da jeg sjekket rett over kl. 16 i dag var det borte...? Siter
Guahtdim Skrevet 16. august 2019 Forfatter Skrevet 16. august 2019 (endret) 16 minutes ago, Moskus said: Hva er reglene for hvilke hendelser som dukker opp i plugin'en? Jeg har en hendelse i morgen som viste fint i på devicen min. Det er kl. 16:00 i morgen. Da jeg sjekket rett over kl. 16 i dag var det borte...? Kalenderhendelser hentes i utgangspunktet ved at man henter de som er innefor dagens dato til dagens dato + antall dager spesifisert. Slik at ett kall akkurat nå med 3 dager lagt til ville hentet med datospenn 2019-08-16 00:00 til 2019-08-19 00:00 (mulig jeg burde endret endelsen til 23:59:59). Jeg har ikke testet nok til at jeg kan si hva som gjør at ting forsvinner før tiden. Slik du beskriver det skulle hendelsen ha vært med til 2019-08-17 00:00. Endret 16. august 2019 av Guahtdim Siter
Moskus Skrevet 17. august 2019 Skrevet 17. august 2019 13 timer siden, Guahtdim skrev: Slik du beskriver det skulle hendelsen ha vært med til 2019-08-17 00:00. Ja, det er slik jeg har oppfattet det, men den ER ikke der. Lurte på om det kunne være tidssone-problem, men det skal litt til at det er et døgn på overtid... Jeg har sett det før, men da har hendelsen forsvunnet den siste timen. Det kan også være litt plagsomt for oss som vil bruke HomeSeer som en familiekalender, men denne hendelsen tok kaka. I'll keep an eye on it. Siter
Moskus Skrevet 19. august 2019 Skrevet 19. august 2019 OK, jeg har funnet bug'en. Om det faktisk er en bug eller ei kan sikkert diskuteres, men slik det er nå gir det begrensninger. Funksjonen som henter kalender-entries, gir dem i synkende rekkefølge. Når HomeSeer (eller jeg i scriptet) prøver å begrense visninger, så får det merkelige konsekvenser. Dette kan unngå med å sortere hendelsene til stigende rekkefølge, slik at det første eventet som returneres er det som er nærmest i tid. Burde være enkelt å løse iallfall. 1 Siter
Guahtdim Skrevet 20. august 2019 Forfatter Skrevet 20. august 2019 (endret) 20 hours ago, Moskus said: OK, jeg har funnet bug'en. Om det faktisk er en bug eller ei kan sikkert diskuteres, men slik det er nå gir det begrensninger. Funksjonen som henter kalender-entries, gir dem i synkende rekkefølge. Når HomeSeer (eller jeg i scriptet) prøver å begrense visninger, så får det merkelige konsekvenser. Dette kan unngå med å sortere hendelsene til stigende rekkefølge, slik at det første eventet som returneres er det som er nærmest i tid. Burde være enkelt å løse iallfall. På hvilken måte prøver du å bregrense antallet? Grunnen til sorteringens rekkefølge er for at scriptene som er lagt ved skal fungere "out of the box" Endret 20. august 2019 av Guahtdim Siter
Moskus Skrevet 20. august 2019 Skrevet 20. august 2019 5 timer siden, Guahtdim skrev: Grunnen til sorteringens rekkefølge er for at scriptene som er lagt ved skal fungere "out of the box" Da får vi også endre "the box". La oss si at jeg vil hente hendelser for de neste 7 dager. Har man mange hendelser vil scriptet fjerne de tidligste hendelsene. Jeg vet ikke hvorfor, men de fjernes. Jeg gjør da det (logiske) valget ved å ha de førstkommende hendelsene øverst, slik man leser en kalender. Jeg vil også ha en begrensning på maksimalt de 10 neste hendelser. Dette fordi det er ryddigst i HStouch, samt at HomeSeer selv setter noen merkelige begrensninger når strengen er større enn vinduet den vises i. I noen uker kan antallet hendelser de neste 7 dagene være ganske stort, og derfor kan det være kjekt med denne begrensningen. (I eksempelet under har jeg fjernet antall-begrensningen i scriptet, alt er direkte hentet fra plugin). La oss si at jeg henter eventer for de 3 neste dagene. Da får jeg dette (når jeg fjerner subjektet, privatlivets fred): Parametre: Resultat: Så endrer vi det til 10 neste dager. Parametre: Resultat: .... Altså er det en innebygget begrensning på 10 hendelser, som forsåvidt er det jeg ønsket meg. Så det er bra! MEN siden lista som returneres fra pluginen er sortert feil vei, får jeg de 10 hendelsene i lista som er lengst vekk i tid, og ikke de som er interessante. Altså de som er nærmest nå-tidspunktet i løpet av de 10 neste dagene. Se script: Spoiler Sub Main(ByVal Parms As Object) Dim msg As String = "" Try Dim ParmArray() As String ParmArray = Parms.ToString.Split(",") Dim deviceID = ParmArray(0) Dim calendarName = ParmArray(1) Dim numberOfDays = CInt(ParmArray(2)) Dim allEvents As Object allEvents = hs.PluginFunction("GCalSeer", "", "GetItemsFromCalendar", New Object() {calendarName, numberOfDays}) Dim counter as Integer = 0 For Each ev As Object In allEvents counter += 1 Dim calendarEventAsString As String = "" If ev.StartDateTimeLocal.Date = Now.Date Then If ev.AllDayEvent Then calendarEventAsString = "Dagens " Else calendarEventAsString = "Kl. " End If End If If ev.StartDateTimeLocal.Date = Now.Date.AddDays(1) Then If ev.AllDayEvent Then calendarEventAsString = "I morgen " Else calendarEventAsString = "I morgen kl. " End If End If If ev.StartDateTimeLocal.Date < Now.Date.AddDays(2) Then If ev.AllDayEvent Then calendarEventAsString = calendarEventAsString & ev.Subject & " (" & counter & ")" Else calendarEventAsString = calendarEventAsString & Format(ev.StartDateTimeLocal, "HH:mm") & " - " & ev.Subject & " (" & counter & ")" End If Else If ev.AllDayEvent Then calendarEventAsString = calendarEventAsString & Format(ev.StartDateTimeLocal, "ddd dd.MM") & " (hele dagen) - " & ev.Subject & " (" & counter & ")" Else calendarEventAsString = calendarEventAsString & Format(ev.StartDateTimeLocal, "ddd dd.MM HH:mm") & " - " & ev.Subject & " (" & counter & ")" End If End If If ev.StartDateTimeLocal.Date = Now.Date Then calendarEventAsString = "<b>" & calendarEventAsString & "</b>" End If msg = calendarEventAsString & "</br>" & msg 'If counter = 10 then Exit For Next 'hs.WriteLog("test", "events found: " & msg) If msg = "" Then msg = "No Events Scheduled" End If hs.SetDeviceString(deviceID, msg, True) Catch ex As Exception hs.WriteLog("", "Exception in script: " & ex.Message) End Try 'hs.WriteLog("test", "---=== DONE ===---") End Sub 1 Siter
Guahtdim Skrevet 20. august 2019 Forfatter Skrevet 20. august 2019 Jeg skal se på det ved anledning. Etter en kjapp sjekk i koden så ser jeg at jeg har en begrensning på 10 events når man henter fra Ms. Sånn er det når man ikke har helt tid til det man driver med. Script-delen og Microsoft er lagt til i etterhånd og ikke det jeg selv bruker. Ergo dårlig testing. Jeg skal iallefall endre fra 10 til 100 og så må jeg kikke litt på sortering slik at det blir likt både for MS og Google 1 Siter
Guahtdim Skrevet 21. august 2019 Forfatter Skrevet 21. august 2019 Det ser ut som om det er MS selv som setter begrensningen på 10 stykk kalender hendelser. Jeg har nå gjort om på kode slik at man plukker de første 100 i tidsrommet man har valgt med stigende sortering (med andre ord har man 200 hendelser er det kun de 100 nærmeste i tid som blir hentet ut). I utgangspunktet så kjørte koden med utvalg på nå-tidspunkt from til x antall dager valgt. Gitt at man gjør sjekk 2019-08-21 kl 10:15 og ber om neste 3 dager vil siste tidspunkt man plukker fra være 2019-08-24 kl 10:15. Skal det beholdes eller ønsker man at man henter inn fra hele dager? Da ville tidsrommet her blitt fra 2019-08-21 kl 00:00 til 2019-08-24 kl 23:59:59.997. Siter
Moskus Skrevet 21. august 2019 Skrevet 21. august 2019 1 time siden, Guahtdim skrev: Skal det beholdes eller ønsker man at man henter inn fra hele dager? Da ville tidsrommet her blitt fra 2019-08-21 kl 00:00 til 2019-08-24 kl 23:59:59.997. Jeg ønsker meg hele dager, hvis det er mulig å få til. 1 time siden, Guahtdim skrev: Jeg har nå gjort om på kode slik at man plukker de første 100 i tidsrommet man har valgt med stigende sortering (med andre ord har man 200 hendelser er det kun de 100 nærmeste i tid som blir hentet ut). Da tror jeg, og håper, at det burde være løst. Spesielt stigende rekkefølge vil hjelpe veldig. Siter
Guahtdim Skrevet 22. august 2019 Forfatter Skrevet 22. august 2019 (endret) Ny versjon ute (0.0.3.2) som fikser problemet med uthenting av kalenderhendelser. Kun de som henter fra Microsoft kalender(e) trenger denne oppdateringen. Se første post for link til nedlasting. Endret 22. august 2019 av Guahtdim Info om link 1 Siter
Moskus Skrevet 24. august 2019 Skrevet 24. august 2019 Takk, @Guahtdim. Fungerer tilsynelatende akkurat som jeg ønsker det! 1 Siter
Guahtdim Skrevet 28. august 2019 Forfatter Skrevet 28. august 2019 (endret) Ny versjon ute som håndterer at man har laget en kalenderhendelse uten navn/subject/summary/overskrift. Hvis du lager noen sånne hendelser så vil plugin dø når den prøver å parse feltet. Anbefaler alle å hente ned denne. Link i første post oppdatert. Takk til @toonwolf for å finne bug. Endret 28. august 2019 av Guahtdim 1 1 Siter
toonwolf Skrevet 28. august 2019 Skrevet 28. august 2019 40 minutter siden, Guahtdim skrev: uten navn/subject/summary/overskrift. Hvis du lager noen sånne hendelser så vil plugin dø når den prøver å parse feltet. Takk til @Guahtdim for superrask feilretting. Har blitt helt avhengig av denne fantastiske plug-inen så det setter jeg utrolig pris på ? Når det gjelder å opprette kalenderavtaler uten emne er det noe som selvfølgelig normalt ikke blir gjort og jeg har vel aldri selv gjort dette. Akkurat denne avtalen som ble lagt inn ble gjort i en delt kalender av noen andre enn meg, men uansett er det greit å få lagt inn en sjekk slik at det ikke vil skje i fremtiden. Jeg forsøkte å endre på emne i etterkant i Google Kalender, men det hjalp ikke stort. Mulig dette har sammenheng med at GCalSeer laster ned kalenderaktiviteter og lagrer disse lokalt og at den brukte den "cachede" aktiviteten som jo ikke hadde noe tekst i emnet. Siter
Guahtdim Skrevet 28. august 2019 Forfatter Skrevet 28. august 2019 1 hour ago, toonwolf said: Takk til @Guahtdim for superrask feilretting. Har blitt helt avhengig av denne fantastiske plug-inen så det setter jeg utrolig pris på ? Når det gjelder å opprette kalenderavtaler uten emne er det noe som selvfølgelig normalt ikke blir gjort og jeg har vel aldri selv gjort dette. Akkurat denne avtalen som ble lagt inn ble gjort i en delt kalender av noen andre enn meg, men uansett er det greit å få lagt inn en sjekk slik at det ikke vil skje i fremtiden. Jeg forsøkte å endre på emne i etterkant i Google Kalender, men det hjalp ikke stort. Mulig dette har sammenheng med at GCalSeer laster ned kalenderaktiviteter og lagrer disse lokalt og at den brukte den "cachede" aktiviteten som jo ikke hadde noe tekst i emnet. Det er litt mellomlagring så jeg må se over det også. Men i utgangspunktet skulle en restart av plugin slette alt som jeg mellomlagrer. Uansett så har jeg fått opp en sikring mot dette, men jeg bør kikke litt på mellomlagringen for å sikre meg at jeg ikke tar vare på gamle kalenderoppføringer uten å få med oppdateringer gjort via Google/MS. Siter
Gjelsvik Skrevet 29. august 2019 Skrevet 29. august 2019 Støttes kalendere fra Office365? eller kun gratis løsningene (outlook.com/live/hotmail)? Siter
Guahtdim Skrevet 29. august 2019 Forfatter Skrevet 29. august 2019 Dette er i utgangspunktet hotmail/live/Outlook. Office365 er ett litt annet beist tror jeg (med mindre du har azure admin tilgang for å få gitt rettigheter til plugin). Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.