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.

    Train status tracker

    Scheduled Pinned Locked Moved Requests
    22 Posts 6 Posters 15.2k Views 6 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.
    • nwoottonN Offline
      nwootton Module Developer
      last edited by

      I’ve now added this to the Modules > Showcase >Transport section of the forum.

      1 Reply Last reply Reply Quote 0
      • J Offline
        jamielola @nwootton
        last edited by

        @nwootton sorry for the lack of response I have been away. Wow it looks great! I am going to install the updated module on my mirror tonight. Also thanks for the above ^^ explaining the late and early issue, this has been a good learning experience. @Reggiejagger it looks like @nwootton has set the columns in the same order as my screenshot so I wont post that old code.

        nwoottonN 1 Reply Last reply Reply Quote 0
        • nwoottonN Offline
          nwootton Module Developer @jamielola
          last edited by

          @jamielola Just an update. I looked at the RealTimeTrains API and it gives the same information, but allows for less filtering of your request. For example you can’t filter to only show trains that have stopped at station X or are going through station Y. While this is something that might be of no use to the majority of users, there are bound to be some people who could make good use of this.

          It’s also much easier to sign up for an account at the TransportAPI.com that at RealTimeTrains (rtt.api.io).

          I’ll keep the module based on the TransportAPI unless we come up with a good reason to migrate.

          {
          locationDetail: {
          realtimeActivated: true,
          tiploc: "SURBITN",
          crs: "SUR",
          description: "Surbiton",
          gbttBookedArrival: "1526",
          gbttBookedDeparture: "1527",
          origin: [
          {
          tiploc: "WATRLMN",
          description: "London Waterloo",
          workingTime: "150300",
          publicTime: "1503"
          }
          ],
          destination: [
          {
          tiploc: "GUILDFD",
          description: "Guildford",
          workingTime: "160200",
          publicTime: "1604"
          }
          ],
          isCall: true,
          isPublicCall: true,
          realtimeArrival: "1526",
          realtimeArrivalActual: false,
          realtimeDeparture: "1527",
          realtimeDepartureActual: false,
          platform: "4",
          platformConfirmed: false,
          platformChanged: false,
          displayAs: "CALL"
          },
          serviceUid: "W36325",
          runDate: "2017-03-29",
          trainIdentity: "2G41",
          runningIdentity: "2G41",
          atocCode: "SW",
          atocName: "South West Trains",
          serviceType: "train",
          isPassenger: true
          },
          
          1 Reply Last reply Reply Quote 0
          • J Offline
            jamielola
            last edited by jamielola

            Thanks @nwootton from that explanation what you are saying makes sense.

            I imported the module and it looks great! I thought the platform would be good (in my case anyway) so added it in

            first row of table in JS script-

            			var trainplatCell = document.createElement("td");
            			trainplatCell.innerHTML = trains.platform;
            			trainplatCell.className = "align-left bright platform";
            			row.appendChild(trainplatCell);
            
            

            added this in the getprams function

            params += "&platform=" + this.config.platform;
            
            

            and this to the css

            .platform {
            
            color:Green;
            padding:5px;
            }
            

            https://imgur.com/a/nHDhs

            With Platform

            I have ambitions to try and calculate how many minutes late it is from its planned departure to its estimated departure, so its say “x minutes late”.I will let you know how I progress if I manage to figure JS out properly, think I have to create a function somewhere then do the calcualtion and save it in a var

            1 Reply Last reply Reply Quote 0
            • nwoottonN Offline
              nwootton Module Developer
              last edited by

              @jamielola Nice. As our station only has an In and an out platform I never considered it!

              If you want I can try to add you code to the repo and make it an option to display the platform via the config.

              Something like:

              {
              showPlatform: true
              }
              

              If you want real time delay calculations have a look at my Bus Stop module here. That does deltas between time tabled and actual times.

              N

              1 Reply Last reply Reply Quote 0
              • nwoottonN Offline
                nwootton Module Developer
                last edited by

                Added platform as an option to the module.

                Defaults to showing the platform, but can be turned off via config if not needed. If no platform specified, it will just display a -

                1 Reply Last reply Reply Quote 0
                • R Offline
                  Reggiejagger
                  last edited by

                  this looks great, i cant wait to update

                  1 Reply Last reply Reply Quote 0
                  • C Offline
                    callum8004
                    last edited by

                    Hi

                    I’m really struggling to add a secondary CRS station, is there any documentation on how to show multiple stations?

                    nwoottonN 1 Reply Last reply Reply Quote 0
                    • nwoottonN Offline
                      nwootton Module Developer @callum8004
                      last edited by

                      @callum8004 You have to add a separate set of configs for each station that you want to track.

                      C 1 Reply Last reply Reply Quote 0
                      • C Offline
                        callum8004 @nwootton
                        last edited by

                        @nwootton sso if i wanted to replicate for ‘BSC’ station too how would do this in the below code?

                        {
                        			module: 		'MMM-UKNationalRail',
                        			position: 		'bottom_left',
                        			header:			'Walsall Live Departures',		/Optional - delete this line to turn OFF the header completely
                        			config: 
                        				{
                        					stationCode: 		'WSL',	// CRS code for station
                        					app_id: 			'fe0f5d14', 		// TransportAPI App ID
                        					app_key: 			'7de7aa1439665fef7ad6eb151190a6a1', 		// TransportAPI App Key
                        					maxResults: 		3,  		//Optional - Maximum results to display.
                        					showOrigin: 		false,   	//Optional - Show the origin of the train in the table
                        					calling_at:			'BHM',
                        					showPlatform:		true,
                        				}
                        		},
                        

                        complete newbie with any type of coding.

                        Thanks
                        Callum

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