• 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.

Sync private iCloud calendar with MagicMirror

Scheduled Pinned Locked Moved Tutorials
162 Posts 58 Posters 337.5k Views 65 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.
  • L Offline
    l0cal
    last edited by Oct 22, 2017, 3:34 PM

    That sounds good for me. Does it work with reminders on the same way?

    B S 2 Replies Last reply Oct 22, 2017, 3:44 PM Reply Quote 0
    • B Offline
      Beh @Doubleve
      last edited by Oct 22, 2017, 3:42 PM

      @Doubleve Hmmm…

      Maybe you have to allow your localhost address to the MagicMirror ipWhiteList option in your config. Just add ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1"], to your config right before the modules option. Maybe the calendar module can not access the .ics file if this is not allowed…

      1 Reply Last reply Reply Quote 0
      • B Offline
        Beh @l0cal
        last edited by Oct 22, 2017, 3:44 PM

        @l0cal Yes this should work.

        Just add "VTODO" to the item_types array in your vdirsyncer config as described in the vdirsyncer docs here: https://vdirsyncer.pimutils.org/en/stable/config.html?highlight=VEVENT#storage-caldav.

        L 1 Reply Last reply Oct 22, 2017, 3:58 PM Reply Quote 0
        • L Offline
          l0cal @Beh
          last edited by Oct 22, 2017, 3:58 PM

          @Beh yeah that are good news for me.

          in the last few weeks I was looking for a solution for it and I did not find anything

          1 Reply Last reply Reply Quote 0
          • R Offline
            ribermon
            last edited by Nov 27, 2017, 11:30 AM

            I have a question

            So far I managed to sync one calendar from one iCloud account, but I would like to sync also a second calendar from a second iCloud account, is this possible?

            Thanks
            Ricardo

            B 1 Reply Last reply Nov 27, 2017, 12:04 PM Reply Quote 0
            • B Offline
              Beh @ribermon
              last edited by Nov 27, 2017, 12:04 PM

              Hey @ribermon!

              Yes, this should be possible. You just have to add another configuration scheme for your second icloud account to the vdirsyncer config. I didn’t try it, but something like that should work:

              # vdirsyncer configuration for MagicMirror.
              #
              # Move it to ~/.vdirsyncer/config or ~/.config/vdirsyncer/config and edit it.
              # Run `vdirsyncer --help` for CLI usage.
              #
              # Optional parameters are commented out.
              # This file doesn't document all available parameters, see
              # http://vdirsyncer.pimutils.org/ for the rest of them.
              
              [general]
              # A folder where vdirsyncer can store some metadata about each pair.
              status_path = "~/.vdirsyncer/status/"
              
              # CALDAV Sync for iCloud 1
              [pair iCloud1_to_MagicMirror]
              a = "Mirror_iCloud1"
              b = "iCloud1"
              collections = ["HERE-GOES-THE-UUID-OF-THE-CALENDAR-YOU-WANT-TO-SYNC"]
              
              # Calendars also have a color property
              metadata = ["displayname", "color"]
              
              [storage Mirror_iCloud1]
              # We need a single .ics file for use with the mirror (Attention! This is really slow on big amounts of events.)
              type = "singlefile"
              # We'll put the calendar file to a readable location for the calendar module
              path = "/home/pi/MagicMirror/modules/calendars/%s.ics"
              
              [storage iCloud1]
              type = "caldav"
              url = "https://caldav.icloud.com/"
              # Authentication credentials
              username = "YOUR-ICLOUD-EMAIL-ADDRESS"
              password = "HERE-GOES-YOUR-APP-SPECIFIC-ICLOUD-PASSWORD"
              # We only want to sync in the direction TO the mirror, so we make iCloud readonly
              read_only = true
              # We only want to sync events
              item_types = ["VEVENT"]
              # We need to keep the number of events low, so we'll just sync the next month
              # Adjust this to your needs
              start_date = "datetime.now() - timedelta(days=1)"
              end_date = "datetime.now() + timedelta(days=30)"
              
              
              # CALDAV Sync for iCloud 2
              [pair iCloud2_to_MagicMirror]
              a = "Mirror_iCloud2"
              b = "iCloud2"
              collections = ["HERE-GOES-THE-UUID-OF-THE-CALENDAR-YOU-WANT-TO-SYNC"]
              
              # Calendars also have a color property
              metadata = ["displayname", "color"]
              
              [storage Mirror_iCloud2]
              # We need a single .ics file for use with the mirror (Attention! This is really slow on big amounts of events.)
              type = "singlefile"
              # We'll put the calendar file to a readable location for the calendar module
              path = "/home/pi/MagicMirror/modules/calendars/%s.ics"
              
              [storage iCloud2]
              type = "caldav"
              url = "https://caldav.icloud.com/"
              # Authentication credentials
              username = "YOUR-ICLOUD2-EMAIL-ADDRESS"
              password = "HERE-GOES-YOUR-APP-SPECIFIC-ICLOUD2-PASSWORD"
              # We only want to sync in the direction TO the mirror, so we make iCloud readonly
              read_only = true
              # We only want to sync events
              item_types = ["VEVENT"]
              # We need to keep the number of events low, so we'll just sync the next month
              # Adjust this to your needs
              start_date = "datetime.now() - timedelta(days=1)"
              end_date = "datetime.now() + timedelta(days=30)"
              
              R 2 Replies Last reply Nov 27, 2017, 10:42 PM Reply Quote 0
              • R Offline
                ribermon @Beh
                last edited by Nov 27, 2017, 10:42 PM

                This post is deleted!
                1 Reply Last reply Reply Quote 0
                • R Offline
                  ribermon @Beh
                  last edited by Nov 27, 2017, 11:25 PM

                  @Beh I manage to discover the calendars from my second iCloud account but then I don’t manage to sync my calendars there, any idea, thanks

                  B 1 Reply Last reply Nov 28, 2017, 1:07 PM Reply Quote 0
                  • B Offline
                    Beh @ribermon
                    last edited by Beh Nov 28, 2017, 1:07 PM Nov 28, 2017, 1:07 PM

                    @ribermon No I have no idea. But since this is actually a vdirsyncer-problem and has nothing to do with the mirror itself, I suggest you dig the vdirsyncer-Documentation:

                    https://vdirsyncer.pimutils.org/en/stable/

                    1 Reply Last reply Reply Quote 0
                    • B Offline
                      bgz
                      last edited by Dec 22, 2017, 11:16 PM

                      Hi Beh

                      Sorry if I´m too newbie… I´m following your step-by step and I get stuck in one place…

                      When creating a config file, I type:

                       touch ~/.vdirsyncer/config
                      

                      and I get:
                      Can´t do ‘touch’ on ‘/home/pi.vdirsyncer/config’: The file or directory doesn´t exist

                      What am I doing wrong?

                      Thanks.

                      B 1 Reply Last reply Dec 22, 2017, 11:22 PM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 16
                      • 17
                      • 2 / 17
                      • 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