• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
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 18.4k 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.
  • P Offline
    poekel
    last edited by Mar 5, 2017, 1:07 PM

    Hi,
    Thanx for all the help. It looks like a short workshop Baikal :)
    I dont know if i am on the right track. I want to automate it. That is that items in the calendar show up on the mirror.
    Is’nt there a simple way ? ( Export to some ics file ?)

    Thanx!
    Poekel

    B 1 Reply Last reply Mar 5, 2017, 1:10 PM Reply Quote 0
    • B Offline
      Beh @poekel
      last edited by Mar 5, 2017, 1:10 PM

      @poekel I don’t know, if I understand this right. But the ?export option already triggers a download for an .ics file (with all calendar events). I’m using this on my mirror with baikal and it works fine…

      1 Reply Last reply Reply Quote 0
      • P Offline
        poekel
        last edited by Mar 5, 2017, 1:28 PM

        Hi,
        The command works fine and i converted the time/datestamps. I think there is something wrong with the stamps, because
        i get a file of 146 bytes whatever i do…
        I have to play with it. :)
        How do you keep the calendar up-to-date on the mirror ?
        ( my wife holds the calendars for all the family members so …)

        1 Reply Last reply Reply Quote 0
        • P Offline
          poekel
          last edited by Mar 5, 2017, 10:41 PM

          Hi,
          How do you append the username and password ?
          I think it works but it gives me a Authorization failed.

          Poekel

          1 Reply Last reply Reply Quote 0
          • P Offline
            poekel
            last edited by Mar 6, 2017, 11:26 AM

            Beh,
            I think i have got the right syntax to retrieve the ics files from baikal.
            Can you explain how you did it on the mirror?

            1 Reply Last reply Reply Quote 0
            • P Offline
              poekel
              last edited by Mar 6, 2017, 10:38 PM

              @beh

              I have read your workaround…
              I am using Baikal on my synology.
              i do NOT have this > https://dav.example.org/dav.php/calendars/[username]/Events?export folder

              http://192.168.1.xx/baikal/html/dav.php/calendars/xxxx/calendar-name?export&startdate=1488672000 (=example)

              How do i get the record from Baikal in 1 file given a certain start-end date in a file from the command line.
              If that works i can change the url in the MM2 config.js file and point to that created file
              Please help …

              B 1 Reply Last reply Mar 7, 2017, 12:16 PM Reply Quote 0
              • B Offline
                Beh @poekel
                last edited by Mar 7, 2017, 12:16 PM

                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 Mar 7, 2017, 1:57 PM Reply Quote 1
                • P Offline
                  poekel @Beh
                  last edited by Mar 7, 2017, 1:57 PM

                  @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 ?

                  B 1 Reply Last reply Mar 7, 2017, 3:01 PM Reply Quote 0
                  • B Offline
                    Beh @poekel
                    last edited by Mar 7, 2017, 3:01 PM

                    @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
                    • B Offline
                      Beh
                      last edited by Beh Mar 7, 2017, 8:37 PM Mar 7, 2017, 8:36 PM

                      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
                      • 1
                      • 2
                      • 3
                      • 2 / 3
                      2 / 3
                      • First post
                        11/26
                        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