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.

    MMM-CalDAV

    Scheduled Pinned Locked Moved Productivity
    93 Posts 9 Posters 27.3k 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.
    • M Offline
      MMRIZE @Guest
      last edited by

      @matt216
      More details about your environment are needed to know what happens.

      Let’s start with the concept.

      Some CALDAV Providers don’t serve any public iCAL(.ics) URL to be consumed externally. You don’t need this module if your CALDAV service can host iCAL URLs. I have no idea about baikal, but I think you know whether that service would provide iCAL or not.

      MMM-CALDAV can access the CALDAV server(which would not host any public iCAL URL) to get target calendar events. Then, this module converts the event data to a real iCAL file(.ics). And this module also hosts that file as a URL accessible from the default calendar module or some iCAL consuming modules with security. MMM-CALDAV will work like a private iCAL provider service.

      So, to show your event on MM, you may need both MMM-CALDAV and calendar module together.

      .env file is needed to connect/authenticate CALDAV server and some security features. Calendar events are very private so I want to block the security hole on working this module. You should put .env in MMM-CALDAV directory.

      So, where are you stuck now? Tell me what happens.

      M 1 Reply Last reply Reply Quote 0
      • M Offline
        matt216 @MMRIZE
        last edited by

        @MMRIZE Thank you for your help, but I managed to figure out getting baikal to generate the ics file, so I don’t need this module anymore.

        Thanks anyway

        1 Reply Last reply Reply Quote 1
        • M Offline
          MMRIZE
          last edited by

          Update 2.1.0

          • Birthday calendar enabled. (CardDAV implementation)
          • Some code refactoring.
          • calendars: [], is changed to targets: []. you have to reconfigure your config.js

          Now you can get Birthdays calendar from iCloud or Google Contacts. (Of course, other CardDAV supported contacts services.)

          T 1 Reply Last reply Reply Quote 0
          • T Offline
            Tiller @MMRIZE
            last edited by

            @MMRIZE

            Hello I’m trying to sync my synology calendar to the MagicMirror calendar with the MMM_CalDAV module. Sadly it’s not working and I don’t know why. I tried different settings and everything I could find online.

            My config.js (without the standard stuff) looks like this:

            {
              module: "MMM-CalDAV", 
              config: {
                timeRangeStart: -30,
                servers: [
                  { 
                    envPrefix: "SYOLOGY_", 
                    serverUrl: "http://192.168.xxx/caldav/",
                    targets: ["family" ], 
              },
            },
            },
            
            
            {
              module: "calendar",
              position: "top_left",
              config: {
                servers: [
                  {
                    symbol: "calendar-check",
                    url: "http://localhost:8080/CALDAV/SYNOLOGY_family.ics",
                    auth: { 
                      user: 'username1',
                      pass: 'password1', 
                      method: 'basic'
                    }
                  },
            

            The .env looks like this:

            CALDAV_SERVICE_USERNAME=
            CALDAV_SERVICE_USERNAME=
            
            ### For SYNOLOGY
            SYNOLOGY_username=username1
            SYNOLOGY_password=password1
            

            Do you have any idea what I could try to do, to sync it?

            Thank you

            Tillmann

            S M 2 Replies Last reply Reply Quote 0
            • S Offline
              sdetweil @Tiller
              last edited by

              @Tiller can you show any of the output from
              npm start

              if using pm2 to autolaunch, then

              pm2 logs --lines=xxxx

              xxxx is the number of the most recent lines in the logs, default 15

              note that the log data will have full urls for calendar , so this could expose info

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • M Offline
                MMRIZE @Tiller
                last edited by MMRIZE

                @Tiller said in MMM-CalDAV:

                CALDAV_SERVICE_USERNAME=
                CALDAV_SERVICE_USERNAME=

                For SYNOLOGY

                SYNOLOGY_username=username1
                SYNOLOGY_password=password1

                I think you may have confusing the username and password for the server and the module.

                SYNOLOGY_username=username1
                SYNOLOGY_password=password1
                

                This is for your Synology Caldav Server, usually it is your account id/password to login Synology Server (Or Synology calendar account)

                CALDAV_SERVICE_USERNAME=username2
                CALDAV_SERVICE_PASSWORD=password2
                

                This is a different thing. It is used for your MM calendar module. This module provide a secure calendar ics host by itself with this auth information. You should need to set your calendar config like this;

                // default calendar module.
                {
                  module: "calendar",
                  position: "top_left",
                  config: {
                    calendars: [
                      {
                        symbol: "calendar-check",
                        url: "http://localhost:8080/CALDAV/SYNOLOGY_Family.ics",
                        auth: { // REQUIRED
                          user: 'username2', // <= used here (CALDAV_SERVICE_USERNAME)
                          pass: 'password2', // <= used here (CALDAV_SERVICE_PASSWORD)
                          method: 'basic'
                        }
                      },
                ...
                
                T 1 Reply Last reply Reply Quote 0
                • T Offline
                  Tiller @MMRIZE
                  last edited by

                  Thank you for your quick reply.

                  @sdetweil I’m not using pm2 at the moment, but I could try to do it and check the logs.

                  @MMRIZE sorry, my bad. I changed the password for the post, it’s correct in my .env but not working.

                  I’m not exactly sure about the Synology url
                  synology.com says I should use
                  http://192.168.x.x:5000/caldav
                  and than log in with my username and password

                  But an older link is (seems there was an update)
                  http://192.168.x.x:5000/caldav/username/ejialfjl/

                  If I’m using the last one in the browser, it is downloading an .ics file.

                  But it’s not working with both urls.

                  Maybe I should try to reinstall everything?

                  S M 3 Replies Last reply Reply Quote 0
                  • S Offline
                    sdetweil @Tiller
                    last edited by

                    @Tiller if you are not using pm2 then the errors would be shown where you do npm start

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • S Offline
                      sdetweil @Tiller
                      last edited by

                      @Tiller no reinstall

                      can you show us the new url(#2) in config.js,
                      assume you are still using the env variables

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • M Offline
                        MMRIZE @Tiller
                        last edited by

                        @Tiller
                        CalDAV is different to general ics hosting.

                        Usually, the URL of Synology CalDAV accessing would be;

                        https://IP_OR_URL:5001/caldav/
                        http://IP_OR_URL:5000/caldav/
                        

                        Anyway, there would be some log to diagnosis. Can you show the frontend and backend logs?

                        C T 2 Replies Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 9
                        • 10
                        • 3 / 10
                        • 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