Read the statement by Michael Teeuw here.
Volvo on Call
-
@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
-
@mz-ber the regex has to return 3 items
-
@sdetweil Right! And I guess it is doing so? Or am I wrong?
-
@mz-ber i do not know what the module is expecting or its process
it also does a voc dashboard…
and parses that… -
@sdetweil Yes, I guess
voc list
should work. But really quick tovoc 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:B-PY 186
should be always in group 1. Do you have an idea to adjust the expression? -
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.
-
@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
-
@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(.+)$
-
@mz-ber you are missing some german number plates:
AB-CD 123E
electric vehiclesAB-CD 123H
oldtimer, but probably not relevant because they do not have the digital information :DThe other exceptions are not relevant for private vehicles.
-
@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(.+)$