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.

    Microsoft To-Do (wunderlist replacement?)

    Scheduled Pinned Locked Moved Unsolved Requests
    45 Posts 17 Posters 30.0k Views 19 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.
    • T Offline
      thobach @Jan
      last edited by

      @Jan You’re welcome. Have you tried adding the module multiple times in the config file with different listId values?

      J 1 Reply Last reply Reply Quote 0
      • T Offline
        thobach @binderth
        last edited by

        @binderth Did the tips from @ThaliaFromPrussia (https://forum.magicmirror.builders/post/68615) work for you to see what error you are getting on the magic mirror front-end?

        1 Reply Last reply Reply Quote 0
        • J Offline
          Jan @thobach
          last edited by

          @thobach Thx for your reply. Your solution has not exactly the effect what i want, but it works fine for me ;-)

          1 Reply Last reply Reply Quote 0
          • A Offline
            andyyy @thobach
            last edited by

            @thobach

            curl -X POST https://login.microsoftonline.com/common/oauth2/v2.0/token

            Length Required

            Length Required


            HTTP Error 411. The request must be chunked or have a content length.

            I am sure curl is installed since other modules with OAuth are working as well.

            T 1 Reply Last reply Reply Quote 0
            • G Offline
              geoffroff
              last edited by

              Hi

              Managed to get the default task list to show but cannot get any other list to show. It just States Loading Tasks but never changes. Selected the list from ToDo but the ‘ID’ is a lot shorter than the example given.

              Is there something I’m missing here?

              It seems like this should work but just having trouble getting it to link. Not overly impressed with ToDo yet but need a shared environment and this was the simple choice having previously used Wunderlist.

              Cheers
              G

              W 1 Reply Last reply Reply Quote 0
              • M Offline
                mherke
                last edited by mherke

                i followed the README.MD on github step by step and now i got it running :) i tried a few weeks ago several times without success and was pretty close to give up.

                thanks an kind regards!

                1 Reply Last reply Reply Quote 0
                • W Offline
                  wazzu @geoffroff
                  last edited by

                  @geoffroff
                  Hi,
                  I had the same problem and I also had a shorter ID than the example. And of course, the status stay on “Loading tasks” for ever.
                  Finally, to solve this and get the full length link, I’ve done the following :

                  • create a share link from the list and open it
                  • click on “Sign in to join list”
                  • on next windows, click on “open”
                    I finally have an error “List not found” but in the url is the correct ID which is working as ListID, e.g :
                    https://to-do.live.com/tasks/AQMkADAwATMwNAItYmQyZS0wNnYxLTAwAi0wMAoALgAAAwyBXwAxHLZDhD1s2yT7wLoBAIZRCieiy1tMpuO70ZBr_R8AA3lr_WoAAAA=

                  Hope it helps,
                  Cheers,

                  G 1 Reply Last reply Reply Quote 1
                  • Z Offline
                    zolabus
                    last edited by

                    HI on the refresh token I have this error

                    curl: (6) Could not resolve host:
                    {“error”:“invalid_request”,“error_description”:“AADSTS900144: The request body must contain the following parameter: ‘grant_type’.\r\nTrace ID: c89030f5-7596-4716-b56b-baafdc670100\r\nCorrelation ID: 3c6c0d5a-8928-47f9-8916-30fb1a369a8e\r\nTimestamp: 2020-04-24 23:29:45Z”,“error_codes”:[900144],“timestamp”:“2020-04-24 23:29:45Z”,“trace_id”:“c89030f5-7596-4716-b56b-baafdc670100”,“correlation_id”:“3c6c0d5a-8928-47f9-8916-30fb1a369a8e”,“error_uri”:“https://login.microsoftonline.com/error?code=900144”}curl: (6) Could not resolve host:
                    curl: (6) Could not resolve host: application
                    curl: (6) Could not resolve host:
                    ‘client_id’ is not recognized as an internal or external command,
                    operable program or batch file.
                    ‘scope’ is not recognized as an internal or external command,
                    operable program or batch file.
                    ‘redirect_uri’ is not recognized as an internal or external command,
                    operable program or batch file.
                    ‘client_secret’ is not recognized as an internal or external command,
                    operable program or batch file.

                    T 1 Reply Last reply Reply Quote 0
                    • G Offline
                      geoffroff @wazzu
                      last edited by

                      @wazzu Excellent worked a treat… ToDo didn’t like the link (List not Found) but when it returned to screen the list had the long ID. I amended the config file and worked like a charm… Thanks G

                      1 Reply Last reply Reply Quote 0
                      • T Offline
                        thobach @andyyy
                        last edited by

                        @andyyy The call seems to be missing some parameters, please check the full command line from https://github.com/thobach/MMM-MicrosoftToDo/blob/master/README.MD, thanks!

                        1 Reply Last reply Reply Quote 0
                        • T Offline
                          thobach @zolabus
                          last edited by

                          @zolabus It seems you faced the same issue as in https://github.com/thobach/MMM-MicrosoftToDo/issues/18. I updated the instructions in https://github.com/thobach/MMM-MicrosoftToDo/blob/master/README.MD#refresh-token-generation-refresh-token to be more Windows friendly, e.g. all in a single line and using double quotes. Could you please try it again with the updated instructions? Thanks!

                          1 Reply Last reply Reply Quote 0
                          • S Offline
                            smoysauce
                            last edited by

                            @thobach: Do you have recommendations to get the due date to show? I have tried to add element.dueDateTime.dateTime in the MMM-MicrosoftToDo.js like I have in the past, but now the module won’t show with that that. And no matter how I try to format it with moment it still doesn’t like it. I tried it with the simple element.id to see if that would show and it does show the todo ID. Thoughts? I know I am missing something simple. Thanks!

                            lavolp3L 1 Reply Last reply Reply Quote 0
                            • lavolp3L Offline
                              lavolp3 Module Developer @smoysauce
                              last edited by lavolp3

                              @smoysauce if your element does not have a dueDateTime (null) this could lead to an error (cannot get property of undefined).

                              Maybe something like this?

                              if (element.dueDateTime) {
                                var dueDate = moment(element.dueDateTime.dateTime).format("LL");
                              }
                              

                              How to troubleshoot modules
                              MMM-soccer v2, MMM-AVStock

                              S 2 Replies Last reply Reply Quote 0
                              • S Offline
                                smoysauce @lavolp3
                                last edited by

                                @lavolp3 Oh good call-out! I tried your example as well as a few other tweaks but it doesn’t seem to like it when I add that snippet in. I don’t know why it’s being so weird. I’ll keep toying around with it, but any other thoughts would be appreciated!

                                1 Reply Last reply Reply Quote 0
                                • S Offline
                                  smoysauce @lavolp3
                                  last edited by

                                  @lavolp3 said in Microsoft To-Do (wunderlist replacement?):

                                  if (element.dueDateTime) {
                                  var dueDate = moment(element.dueDateTime.dateTime).format(“LL”);
                                  }

                                  So after some tinkering, I figured out that the node.js was not pulling in the due date so I removed the ‘select’ filter so the call URL has '/tasks?$top='

                                  After that, I was able to add moment(new Date(element.dueDateTime.dateTime)).format("ddd MMM DD") to the output string and got the date to show. But for the life of me, I cannot get the var or if statements to work. If I try to use either the module doesn’t load. I have tried them in all different spots and it just doesn’t like it.

                                  lavolp3L 1 Reply Last reply Reply Quote 0
                                  • lavolp3L Offline
                                    lavolp3 Module Developer @smoysauce
                                    last edited by

                                    @smoysauce
                                    First, moment(new Date(element.dueDateTime.dateTime)).format("ddd MMM DD") is redundant. You don’t need the new Date part.
                                    moment(element.dueDateTime.dateTime).format("ddd MMM DD")should be enough.

                                    Second, where have you put it?
                                    I had my own problems with the code, that’s why I’m working on an own version including due dates, but it’s not finished.

                                    Here’s how I would try to include it.

                                    if (this.list.length !== 0) {
                                          this.list.forEach(element => (listItemsText += '<li style="list-style-position:inside; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">' + checkbox + element.subject + ((element.dueDate) ? moment(element.dueDateTime.dateTime).format("ddd MMM DD") : '') + '</li>'))
                                        } else {
                                          // otherwise indicate that there are no list entries
                                          listItemsText += '<li style="list-style-position:inside; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">' + this.translate('NO_ENTRIES') + '</li>'
                                        }
                                    

                                    How to troubleshoot modules
                                    MMM-soccer v2, MMM-AVStock

                                    S 1 Reply Last reply Reply Quote 0
                                    • S Offline
                                      smoysauce @lavolp3
                                      last edited by

                                      @lavolp3 said in Microsoft To-Do (wunderlist replacement?):

                                      if (this.list.length !== 0) {
                                      this.list.forEach(element => (listItemsText += ‘

                                    • ’ + checkbox + element.subject + ((element.dueDate) ? moment(element.dueDateTime.dateTime).format(“ddd MMM DD”) : ‘’) + ‘
                                    • ’))
                                      } else {
                                      // otherwise indicate that there are no list entries
                                      listItemsText += ‘
                                    • ’ + this.translate(‘NO_ENTRIES’) + ‘
                                    • ’
                                      }

                                      Thanks for pointing that out, I am still figuring things out and piecing things together and if they work I just stick with it! That snippet worked, I had to change the section element.dueDate to element.dueDateTime but other than that seems to be doing the trick. I’ll probably toy around with it a bit more to see if I can learn formatting it with CSS to left align the subject and right align the date. Thanks for the help and tips!

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

                                        @thobach thanks for your effort. Just got this up and running from your instructions in the README. Very pleased. :thumbs_up:

                                        sudo insert motivational.quote

                                        1 Reply Last reply Reply Quote 0
                                        • M Offline
                                          Mighty Mouseq @thobach
                                          last edited by Mighty Mouseq

                                          @thobach said in Microsoft To-Do (wunderlist replacement?):

                                          I don’t plan to implement a fade-option, sorry, it would require quite some effort given the current implementation.

                                          I have been able to add a fade-option by looking at how this option has been implemented in the MMM-nstreinen module by @qistoph. Since I am not familiair with JS coding I don’t know wether it has been coded as it should.

                                          My addition takes two parameters from config.js: ‘fade’, which can be true or false and ‘fadePoint’, which takes a decimal value between 0 and 1 and marks the point where the fade starts.

                                          I added the code after the listItem styling.

                                          // needed for the fade effect
                                                  itemCounter += 1
                                                  
                                                  // Create fade effect.
                                                  if (self.config.fade && self.config.fadePoint < 1) {
                                                    if (self.config.fadePoint < 0) {
                                          	          self.config.fadePoint = 0;
                                          	        }
                                          	        var startingPoint = self.config.itemLimit * self.config.fadePoint;
                                          	        var steps = self.config.itemLimit - startingPoint;
                                          	        if (itemCounter >= startingPoint) {
                                                      var currentStep = itemCounter - startingPoint;
                                                      listItem.style.opacity = 1 - (1 / steps * currentStep);
                                                    }    
                                                  }
                                          
                                          T 1 Reply Last reply Reply Quote 0
                                          • T Offline
                                            thobach @Mighty Mouseq
                                            last edited by

                                            @Mighty-Mouseq Nice! Do you want to create a pull request? I could then merge it into the main branch for everyone.

                                            M 2 Replies Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 3 / 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