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.

    Volvo on Call

    Scheduled Pinned Locked Moved Solved Troubleshooting
    34 Posts 4 Posters 12.2k Views 4 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.
    • MZ-BERM Offline
      MZ-BER @sdetweil
      last edited by

      @sdetweil Yes, I also checked that with regex101. Can I just parse in the details I have?

      listResult: function(output) {
          var re = B-PY 186 (V90) XVASS123345
      
      S 2 Replies Last reply Reply Quote 0
      • S Do not disturb
        sdetweil @MZ-BER
        last edited by

        @mz-ber the regex returns an array of matched things

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • S Do not disturb
          sdetweil @MZ-BER
          last edited by sdetweil

          @mz-ber i think the regex is not expecting the 186

          try ths one

          /^([^ ]+)\s.*\(([^\/]+)\/([^\)]+)\)$/gm
          

          start of string ^
          capture up to the 1st space ([^ ]+)
          skip everything to (and including) the open paren \s.*(
          get the two things in the parens, separated by /, not including the parens
          capture up to the slash ([^/]+)
          skip the slash /
          capture up to the close pareen ([^)]+)
          skip the close paren )
          end of string $

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          MZ-BERM 1 Reply Last reply Reply Quote 0
          • MZ-BERM Offline
            MZ-BER @sdetweil
            last edited by

            @sdetweil Your one is not working. Here are the details I try to get:

            B-PY 186 (V90/2019) YV1PWAKUDK1XXXXXX

            I also played a bit with the expression and removed the white space:

            before:

            listResult: function(output) {
                var re = /^([^ ]+)\s\(([^\)]+)\)\s([^ ]+)$/gm
            

            after:

            listResult: function(output) {
                var re = /^([^]+)\s\(([^\)]+)\)\s([^]+)$/gm
            

            That is working based on regex101 and I dont get the error anymore. But nothing is loaded into the MM

            S 1 Reply Last reply Reply Quote 0
            • S Do not disturb
              sdetweil @MZ-BER
              last edited by

              @mz-ber the regex has to return 3 items

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              MZ-BERM 1 Reply Last reply Reply Quote 0
              • MZ-BERM Offline
                MZ-BER @sdetweil
                last edited by

                @sdetweil Right! And I guess it is doing so? Or am I wrong? b5cae454-af0f-4887-abbb-bd6117d3fe82-image.png

                S 1 Reply Last reply Reply Quote 0
                • S Do not disturb
                  sdetweil @MZ-BER
                  last edited by

                  @mz-ber i do not know what the module is expecting or its process

                  it also does a voc dashboard…
                  and parses that…

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  MZ-BERM 1 Reply Last reply Reply Quote 0
                  • MZ-BERM Offline
                    MZ-BER @sdetweil
                    last edited by

                    @sdetweil Yes, I guess voc list should work. But really quick to voc dashboard

                    That is the list I’m getting

                    B-PY 186 Position             : (52.55352783203125, 13.4XXXXXXXXXX6, '2022-03-06 20:20:32+01:00', None, None)
                    B-PY 186 Door lock            : Locked
                    B-PY 186 Heater               : Off
                    B-PY 186 Odometer             : 34484 km
                    B-PY 186 Trip meter 1         : 131 km
                    B-PY 186 Trip meter 2         : 1 km
                    B-PY 186 Fuel amount          : 40 L
                    B-PY 186 Fuel level           : 72 %
                    B-PY 186 Fuel consumption     : 9.9 L/100 km
                    B-PY 186 Range                : 440 km
                    B-PY 186 Average speed        : 31 km/h
                    B-PY 186 Last trip            : 2022-03-06 20:20:32+01:00
                    B-PY 186 Engine               : On
                    B-PY 186 Door lock            : On
                    B-PY 186 Hood                 : Closed
                    B-PY 186 Tailgate             : Closed
                    B-PY 186 Front left door      : Closed
                    B-PY 186 Front right door     : Closed
                    B-PY 186 Rear left door       : Closed
                    B-PY 186 Rear right door      : Closed
                    B-PY 186 Front left window    : Closed
                    B-PY 186 Front right window   : Closed
                    B-PY 186 Rear left window     : Closed
                    B-PY 186 Rear right window    : Closed
                    B-PY 186 Front right tyre     : OK
                    B-PY 186 Front left tyre      : OK
                    B-PY 186 Rear right tyre      : OK
                    B-PY 186 Rear left tyre       : OK
                    B-PY 186 Washer fluid         : OK
                    B-PY 186 Brake Fluid          : OK
                    B-PY 186 Service              : OK
                    B-PY 186 Bulbs                : OK
                    B-PY 186 Doors                : Closed
                    B-PY 186 Windows              : Closed
                    

                    With the regular expression /^([^\s]+)\s([\w\s]+)\:\s(.+)$/gm it is not perfectly matching the groups:

                    32a5261a-5834-40ce-acec-4775b24fca0a-image.png

                    B-PY 186 should be always in group 1. Do you have an idea to adjust the expression?

                    MZ-BERM 1 Reply Last reply Reply Quote 0
                    • MZ-BERM Offline
                      MZ-BER @MZ-BER
                      last edited by

                      I got it to work! Finally.

                      The whole problem was my licence plate. The regular expression wasn’t able to grab the right groups. Thank you @sdetweil for helping me to investigate.

                      S 1 Reply Last reply Reply Quote 0
                      • S Do not disturb
                        sdetweil @MZ-BER
                        last edited by

                        @mz-ber how did u fix the regex?

                        i would change the 1st capture to
                        in the list

                        ^([^\(]+)\s  =capture up to but not including (
                        

                        in the scan = capture 1st 8 chars
                        how long is a license number? always 8?

                        ^(.{8})\s
                        

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        MZ-BERM 1 Reply Last reply Reply Quote 0
                        • MZ-BERM Offline
                          MZ-BER @sdetweil
                          last edited by

                          @sdetweil said in Volvo on Call:

                          German Number Plates can have the following format:

                          ABC-D 123
                          
                          ABC-DE 12 
                          
                          AB-C 123 
                          
                          A-BC 1234
                          

                          I’m using this regex to get the variations: ^([A-Z]{1,3}-[A-Z]{1,2}\s[0-9]{1,4})\s([\w\s]+)\:\s(.+)$

                          strawberry 3.141S 1 Reply Last reply Reply Quote 0
                          • strawberry 3.141S Offline
                            strawberry 3.141 Project Sponsor Module Developer @MZ-BER
                            last edited by

                            @mz-ber you are missing some german number plates:

                            AB-CD 123E electric vehicles

                            AB-CD 123H oldtimer, but probably not relevant because they do not have the digital information :D

                            The other exceptions are not relevant for private vehicles.

                            Please create a github issue if you need help, so I can keep track

                            MZ-BERM 1 Reply Last reply Reply Quote 0
                            • MZ-BERM Offline
                              MZ-BER @strawberry 3.141
                              last edited by

                              @strawberry-3-141 True! Good catch! So I guess every variation can also have an E at the end. Do you know if there is a whitespace between the last digit and the E? If it is without a space, this will work:

                              ^([A-Z]{1,3}-[A-Z]{1,2}\s[0-9,E]{1,5})\s([\w\s]+)\:\s(.+)$

                              strawberry 3.141S 1 Reply Last reply Reply Quote 0
                              • strawberry 3.141S Offline
                                strawberry 3.141 Project Sponsor Module Developer @MZ-BER
                                last edited by

                                @mz-ber officially there is no space in between the numbers and the suffix, but I work for a provider of a mobility platform and I can tell you that users frequently come up with their own formats like AB-CD123 (no space) or AB-CD 123 E (extra space).

                                Your regex works, but it would also cover some invalid plates like the following in case you want a challenge to improve your regex:

                                • AB-CD 0E5E8

                                • The number can’t start with a 0

                                • The E can only be in the end not mixed with the numbers

                                Please create a github issue if you need help, so I can keep track

                                1 Reply 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
                                • 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