MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    CalDAV

    Scheduled Pinned Locked Moved Troubleshooting
    26 Posts 8 Posters 20.8k Views 8 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BehB Offline
      Beh @poekel
      last edited by

      Hey @poekel
      you have to use the keyword start instead of startdate.
      It’s described in the sabre/dav documentation here: http://sabre.io/dav/ics-export-plugin/

      So your request should look like this:
      http://192.168.1.xx/baikal/html/dav.php/calendars/xxxx/calendar-name?export&start=1488672000

      You can use this URL in your MM2 config file. It returns a valid .ics file. I’m using this on my mirror too.

      And please note, that your calendar-name must be the internal name in Baikal (you can look this name up in the admin settings when you edit a calendar)

      P 1 Reply Last reply Reply Quote 1
      • P Offline
        poekel @Beh
        last edited by

        @Beh

        Thanx for the link!.
        It works, it creates a file with nothing more than this:
        BEGIN:VCALENDAR
        VERSION:2.0
        CALSCALE:GREGORIAN
        PRODID:-//SabreDAV//SabreDAV 3.1.3//EN
        X-WR-CALNAME:XXXXXXXXXXXX
        X-APPLE-CALENDAR-COLOR:#FF2968
        END:VCALENDAR

        164 bytes

        How do you handle the username and password that goes with the calendar in baikal?
        Does the link in the config.js not ask for a username and password for the baikal calendar ?

        BehB 1 Reply Last reply Reply Quote 0
        • BehB Offline
          Beh @poekel
          last edited by

          @poekel

          I will try a request with a start parameter when I’m home and test if it works with my Baikal server.

          For user credentials:

          Just add user and pass to your calendar config like this:

          config: {
              calendars: [
                  {
          		url: 'http://192.168.1.xx/baikal/html/dav.php/calendars/xxxx/calendar-name?export&start=1488672000',
          		symbol: 'calendar',
          		user: 'USERNAME',
          		pass: 'PASSWORD'
                  },
              ],
          }
          

          Additionally, Baikal uses Digest authentication. To use this, you have to change the sendImmediately option in the calendarfetcher.js to false. (As I already described above)

          The option is located here. The file is located in MagicMirror/modules/default/calendar/calendarfetcher.js

          In a future version of MM2, there will be an option for this directly in the config file so you don’t have to change this in calendarfetcher.js. I already submitted a pull request for that.

          1 Reply Last reply Reply Quote 0
          • BehB Offline
            Beh
            last edited by Beh

            Hey, @poekel

            after some trying on my Baikal server, I found out, that just the use of the start parameter alone is not working indeed.

            However, I was able to get a request, if you add the componentType option to the request URL. You have to filter the type to VEVENT. But thats no problem, because the documentation says, that this is the only working type for export anyway.

            So I got valid answers with the following URL scheme (including recognized timestamp):

            https://dav.example.com/dav.php/calendars/USERNAME/calendarname?export&start=1490745600&componentType=VEVENT

            1 Reply Last reply Reply Quote 0
            • P Offline
              poekel
              last edited by

              Your the Greatest!

              Man , it works ! Unbelievable ! Many thanks!!!

              1 Reply Last reply Reply Quote 0
              • O Offline
                OsCourt
                last edited by

                Hi gentlemen,

                I’m sorry to reopen this old topic.
                What you are succeeded to do here it’s exactly what I search to do but it doesn’t work on my MagicMirror.

                • I have a Syno with Baikal (http://ipaddress/baikal/admin)
                • I have a user (homemagic) with his calendar (default)
                • My calendarfetcher.js is up-to-date (v2.2.0)

                URL I use for :
                http://ipaddress/baikal/cal.php/calendars/homemagic/default?export&start= 1514761200&componentType=VEVENT

                • Work on my android mobile with Caldav Sync Free Beta (PlayStore)
                • Work on ThunderBird
                • Doesn’t work on my MagicMirror :'(
                • My web browser (IE) return an error when I try to export

                Someone could help me please :)

                BehB 1 Reply Last reply Reply Quote 0
                • BehB Offline
                  Beh @OsCourt
                  last edited by

                  @OsCourt I think you need to use dav.php instead of cal.php on newer baikal versions. Also you need to use digest authentication with the calendar module of the mirror. It’s described in the readme of the module.

                  1 Reply Last reply Reply Quote 0
                  • O Offline
                    OsCourt
                    last edited by

                    Thanks @Beh.

                    I don’t have dav.php file in my baikal folder on my Syno :/
                    I had already read the readme and I have the digest authentication in the mirror:

                    config: {
                                                    calendars: [
                                                            {
                                                                    symbol: "calendar-check-o ",
                                                                    url: 'http://ipaddress/baikal/cal.php/calendars/homemagic/default?export&start=1514761200&componentType=VEVENT',
                                                                    auth: {
                                                                           user: "homemagic",
                                                                           password: "pass",
                                                                           method: "digest"
                                                                          }
                                                            },
                                                    ]
                                            }
                    
                    
                    P 1 Reply Last reply Reply Quote 0
                    • O Offline
                      OsCourt
                      last edited by

                      Hi @poekel,

                      How have you installed baikal on your Syno ?

                      1 Reply Last reply Reply Quote 0
                      • P Offline
                        poekel @OsCourt
                        last edited by

                        @Beh

                        Since sometime my calendar will not start. It keeps saying “loading”

                        Does anyone have an idea to solve this ?

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 2 / 3
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy