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.

    Dynamic travel time

    Scheduled Pinned Locked Moved Development
    12 Posts 5 Posters 10.3k Views 3 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.
    • D Offline
      darrene @mochman
      last edited by darrene

      Thanks for the suggestions @mochman - I didn’t even think about a crontab and restart approach - it’s a sledgehammer but would get the job done whilst I figure out how to implement one of the other options (or plead for someone to do it) :)

      The separate co-ordinator module approach using a payload notification feels like a really good solution - that could be fed the results of the calendar refresh, generate the destination payload and push it to the traffic module - in effect, negating the need for the traffic module updateinterval.

      1 Reply Last reply Reply Quote 0
      • yawnsY Offline
        yawns Moderator
        last edited by

        Maybe you can use the scheduler module, add your map module two times with different locations and schedule for workdays and weekend

        D 1 Reply Last reply Reply Quote 0
        • D Offline
          darrene @yawns
          last edited by

          Ooo! Good thinking @yawns - that’d possibly reduce a bunch of coding down to a bit of tweaking. I’ll investigate this option first. Thank you.

          1 Reply Last reply Reply Quote 0
          • MichMichM Offline
            MichMich Admin
            last edited by

            For what it’s worth: I’ll be working on a change to the default calendar module this week to broadcast the events to other modules, including any location data. This way any module that want’s to show data based on the calendar can use the calendar data.

            Keep an eye on the forum about any announcements. And check out the develop branch for new features like this.

            D 1 Reply Last reply Reply Quote 2
            • D Offline
              darrene @MichMich
              last edited by darrene

              Fabulous! Thanks for the heads-up @MichMich - it’s the rate of development of your mirror by everyone, that makes it so awesome.

              I’ll stay tuned to the announcements

              MichMichM 1 Reply Last reply Reply Quote 0
              • MichMichM Offline
                MichMich Admin @darrene
                last edited by

                @darrene It’s available in the develop branch now. Happy coding!

                D 1 Reply Last reply Reply Quote 0
                • D Offline
                  darrene @MichMich
                  last edited by darrene

                  Woo! Excellent stuff. Thank you @MichMich - I’ll give it a test-drive over the weekend and feed anything constructive back

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    darrene
                    last edited by darrene

                    So having realised the simplest approach to a week/weekend commute display would simply be to code the date information into MM-Traffic’s MMM-Traffic.js file, I’ve added the following logic to the getParams function;

                    getParams: function() {
                    var params = '?';
                    

                    -> var d = new Date();
                    -> var n = d.getDay();

                        params += 'mode=' + this.config.mode;
                        params += '&origin=' + this.config.origin;
                    

                    -> if (n < 6) {params += ‘&destination=’ + “Cheltenham”;}
                    -> else {params += ‘&destination=’ + “Gloucester”;}

                        params += '&key=' + this.config.api_key;
                        params += '&traffic_model=' + this.config.traffic_model;
                        params += '&language=' + this.config.language;
                        return params;
                    },
                    

                    Which works like a dream :) My first bit of javascript. I’m so excited!

                    I’d like to round it off by adjusting the
                    ‘current commute is’
                    and
                    'origin to destination displays to be along the lines of ‘Work Commute’/‘Town Commute’ and ‘Home to Work’/‘Home to town’ but I’m struggling to find how to inject the logic.

                    I can see the current commute is in the defaults and symbols section. Ideally I want to change the defaults section.

                    The other is in the //routename section, but again I can’t work out how to make the alteration.

                    1 Reply Last reply Reply Quote 1
                    • D Offline
                      darrene
                      last edited by

                      Solved! I don’t think my code-hacking is going to win any awards for elegance but it works - I get a different message and journey time depending on whether it’s the week or the weekend! :)

                      D 1 Reply Last reply Reply Quote 0
                      • D Offline
                        Deepgear @darrene
                        last edited by

                        @darrene said in Dynamic travel time:

                        Solved! I don’t think my code-hacking is going to win any awards for elegance but it works - I get a different message and journey time depending on whether it’s the week or the weekend! :)

                        Hi darrene,
                        So you just changed the MMM-Traffic.js? Could you upload it for us?
                        I like to display the Journey time “home to work” in the morning (for me) and the time “work to home” in the evening (for my family).

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 2 / 2
                        • 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