LoxBerry: CalDAV-4-Lox Plugin verfügbar.

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • blacksun
    MS Profi
    • 20.01.2016
    • 582

    #676
    Hallo,

    ruft jemand einen freigebenen Kalender von outlook.com ab. DAs hat bisher immer einwandfrei funktioniert. Jetzt erscheint aber eine Fehlermeldung.

    Code:
    error loading eventsSabre\VObject\ParseException Object
    (
    [message:protected] => This parser only supports VCARD and VCALENDAR files
    [string:Exception:private] =>
    [code:protected] => 0
    [file:protected] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/vendor/sabre/vobject/lib/Parser/MimeDir.php
    [line:protected] => 163
    [trace:Exception:private] => Array
    (
    [0] => Array
    (
    [file] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/vendor/sabre/vobject/lib/Parser/MimeDir.php
    [line] => 90
    [function] => parseDocument
    [class] => Sabre\VObject\Parser\MimeDir
    [type] => ->
    )
    
    [1] => Array
    (
    [file] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/vendor/sabre/vobject/lib/Reader.php
    [line] => 47
    [function] => parse
    [class] => Sabre\VObject\Parser\MimeDir
    [type] => ->
    )
    
    [2] => Array
    (
    [file] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/caldav.php
    [line] => 241
    [function] => read
    [class] => Sabre\VObject\Reader
    [type] => ::
    )
    
    )
    
    [previous:Exception:private] =>
    )
    {
    "Schulferien": {
    "Start": -1,
    "End": -1,
    "Summary": "",
    "Description": "",
    "fwDay": -1,
    "wkDay": -1,
    "now": 525534101
    },
    "now": 525534101
    }
    
    
    
    mögliche Befehlserkennungen wären:
    
    Schulferien:[LIST][*]Anfang
    : Schulferien": {\i"Start"\i: \v[*]Ende
    : Schulferien": {\i"End"\i: \v[*]Tage bis
    : Schulferien": {\i"fwDay"\i: \v[*]Wochentag
    : Schulferien": {\i"wkDay"\i: \v[/LIST]
    
    
    aktuelle LoxBerry Zeit: "now": \v
    Hat sich da was am Plugin geändert oder hat outlook.com was geändert?

    Kommentar

    • Prof.Mobilux
      Supermoderator
      • 25.08.2015
      • 5051

      #677
      Du kannst mal das PreRelease testen: https://wiki.loxberry.de/plugins/caldav_4_lox/start

      Je nach Zugriff kannst du mit der downhelper oder auch httpauth Option mal testen. Doku dazu findest du im Wiki.

      svethi weigert sich zwar meine PullRequests einzuarbeiten , aber es funktioniert
      🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


      LoxBerry - Beyond the Limits

      Kommentar


      • svethi
        svethi kommentierte
        Kommentar bearbeiten
        Waaas. Habe Urlaub ;-)
        Außerdem nutze ich CalDAV Server. Da geht’s;-)
        Zuletzt geändert von svethi; 27.08.2025, 16:27.
    • blacksun
      MS Profi
      • 20.01.2016
      • 582

      #678
      Auch mit dem PreRelease funktioniert der Abruf nicht.

      Ich habe einen Testkalender erstellt und diesen freigegeben.

      Code:
      https://outlook.live.com/owa/calendar/00000000-0000-0000-0000-000000000000/890e5126-1f3f-4456-9cf6-21d2f713e62e/cid-E09CEBC7A08A5A84/calendar.ics
      Wenn ich die URL in einen Browser kopiere, auch in einen privaten Modus, wird mir die ics ohne Authentifizierung runtergeladen.

      Es kommt aber anscheinend schon beim Download zu einem Fehler. Warum, kann ich aber nicht sagen.

      Code:
      curl-Error: The requested URL returned error: 500
      calendar returned: 500error loading eventsInvalidArgumentException Object
      (
      [message:protected] => This parser can only read from strings or streams.
      [string:Exception:private] =>
      [code:protected] => 0
      [file:protected] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/vendor/sabre/vobject/lib/Parser/MimeDir.php
      [line:protected] => 135
      [trace:Exception:private] => Array
      (
      [0] => Array
      (
      [file] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/vendor/sabre/vobject/lib/Parser/MimeDir.php
      [line] => 83
      [function] => setInput
      [class] => Sabre\VObject\Parser\MimeDir
      [type] => ->
      )
      
      [1] => Array
      (
      [file] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/vendor/sabre/vobject/lib/Reader.php
      [line] => 47
      [function] => parse
      [class] => Sabre\VObject\Parser\MimeDir
      [type] => ->
      )
      
      [2] => Array
      (
      [file] => /opt/loxberry/webfrontend/html/plugins/caldav4lox/caldav.php
      [line] => 285
      [function] => read
      [class] => Sabre\VObject\Reader
      [type] => ::
      )
      
      )
      
      [previous:Exception:private] =>
      )
      {
      "Schulferien": {
      "Start": -1,
      "End": -1,
      "Summary": "",
      "Description": "",
      "Location": "",
      "fwDay": -1,
      "wkDay": -1,
      "now": 525599814,
      "regexUrlEnc": ".%2A%28Schulferien%29%5B%5E%0D%0A%5D%2A"
      },
      "now": 525599814
      }
      Wenn ich in Windows mittel curl die ics runterlade, brauche ich keine weiteren Parameter angeben.

      Code:
      C:\Users\mk>curl "https://outlook.live.com/owa/calendar/00000000-0000-0000-0000-000000000000/890e5126-1f3f-4456-9cf6-21d2f713e62e/cid-E09CEBC7A08A5A84/calendar.ics"
      BEGIN:VCALENDAR
      METHOD:PUBLISH
      PRODID:Microsoft Exchange Server 2010
      VERSION:2.0
      X-WR-CALNAME:Test
      BEGIN:VTIMEZONE
      TZID:W. Europe Standard Time
      BEGIN:STANDARD
      DTSTART:16010101T030000
      TZOFFSETFROM:+0200
      TZOFFSETTO:+0100
      RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=10
      END:STANDARD
      BEGIN:DAYLIGHT
      DTSTART:16010101T020000
      TZOFFSETFROM:+0100
      TZOFFSETTO:+0200
      RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=3
      END:DAYLIGHT
      END:VTIMEZONE
      BEGIN:VEVENT
      DESCRIPTION:\n
      UID:040000008200E00074C5B7101A82E00800000000EC85F7D9DF17DC01000000000000000
       010000000F01AE4CC67B1EC499B77FC9021A04B88
      SUMMARY:Loxberry
      DTSTART;TZID=W. Europe Standard Time:20250828T080000
      DTEND;TZID=W. Europe Standard Time:20250828T083000
      CLASS:PUBLIC
      PRIORITY:5
      DTSTAMP:20250828T060829Z
      TRANSP:OPAQUE
      STATUS:CONFIRMED
      SEQUENCE:0
      LOCATION:
      X-MICROSOFT-CDO-APPT-SEQUENCE:0
      X-MICROSOFT-CDO-BUSYSTATUS:BUSY
      X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
      X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
      X-MICROSOFT-CDO-IMPORTANCE:1
      X-MICROSOFT-CDO-INSTTYPE:0
      X-MICROSOFT-DONOTFORWARDMEETING:FALSE
      X-MICROSOFT-DISALLOW-COUNTER:FALSE
      X-MICROSOFT-REQUESTEDATTENDANCEMODE:DEFAULT
      X-MICROSOFT-ISRESPONSEREQUESTED:FALSE
      END:VEVENT
      END:VCALENDAR
      Zuletzt geändert von blacksun; 28.08.2025, 07:10.

      Kommentar

      • blacksun
        MS Profi
        • 20.01.2016
        • 582

        #679
        Fehler gefunden. Habe hier was dazu gefunden. Post #3. Office365 akzeptiert nur noch gültige User-Agent.



        User-Agent ist zu alt. Aktuellen User-Agent verwendet und schon funktioniert der Abruf von freigegebenen Kalendern von Outlook.com.

        Code:
        function curl_get_contents($url,$user,$pass,$httpauth) {
               $ch=curl_init($url);
               if (!empty($httpauth)) {
                   $auth = explode(":", $httpauth);
                   //curl_setopt($ch, CURLOPT_HTTPAUTH, "CURLAUTH_" . strtoupper($auth[0]));
                   if (array_key_exists(1, $auth)) {
                    //curl_setopt($ch, CURLOPT_XOAUTH2_BEARER, $auth[1] );
                   }
               }
               curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
               curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
               curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
               curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass");
               curl_setopt($ch, CURLOPT_FAILONERROR, true);
               curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
               //curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
               //curl_setopt($ch, CURLOPT_TIMEOUT, 20);
               //curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0'));
               curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:142.0) Gecko/20100101 Firefox/142.0'));
               $result = curl_exec($ch);
               if (curl_errno($ch)) {
                echo "curl-Error: ".curl_error($ch)."\n";
               }
               $curl_code = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
               if ($curl_code >= 400) {
                echo "calendar returned: $curl_code";
               }
               return $result;
        }
        Zuletzt geändert von blacksun; 28.08.2025, 08:01.

        Kommentar

        • Benjamin Jobst
          Lox Guru
          • 25.08.2015
          • 1199

          #680
          Hi blacksun ich habe das gleiche Problem mit unserem Firmen-Outlook. Wenn ich das richtig verstehe, ist in den aktuellen Versionen das mit dem User-Agent aber noch nicht drin, selbst kann ich das auch nicht einstellen im Loxberry, richtig?
          MfG Benny

          Kommentar

          • blacksun
            MS Profi
            • 20.01.2016
            • 582

            #681
            Benjamin Jobst, das ist auch im PreRelease bzw. im Master noch nicht enthalten. Du kannst es selber in der caldav.php ändern.


            Klicke auf die Grafik für eine vergrößerte Ansicht  Name: image.png Ansichten: 0 Größe: 22,7 KB ID: 468571

            Ändere die Zeile 136, sofern du das PreRelease installiert hast, andernfalls könnte sich die Zeile an einer anderen Stelle befinden.

            Klicke auf die Grafik für eine vergrößerte Ansicht  Name: image.png Ansichten: 0 Größe: 75,9 KB ID: 468572

            curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:142.0) Gecko/20100101 Firefox/142.0'));
            So läufts bei mir jetzt wieder einwandfrei.
            Zuletzt geändert von blacksun; In den letzten 4 Wochen.

            Kommentar

            • Benjamin Jobst
              Lox Guru
              • 25.08.2015
              • 1199

              #682
              Hi funktioniert super vielen Dank!
              MfG Benny

              Kommentar

              Lädt...