Worldmap issues (ttl and click for details)

Revisiting the worldmap node again for my aircraft tracking website and having some issues that have been around for a while but are now really a bit of a show-stopper.

  1. ttl. I have tried passing in a string "1800", a number 1800 and not passing anything in and setting the main node to be 1800 and also tried changing it on the three bar menu.
    None of the methods will keep the aircraft on the map for longer than some random time between about 5 seconds and 1-2 minutes tops.
    I have removed the worldmap_in node as I found it could change things a bit, so removing it has helped with a lot of other stability of plotted aircraft.
    Here is the code I am using to plot the aircraft:
msg.payload = {
    layer:"Mil ACARS",
    name:msg.payload.ICAO,
    lat:msg.lat, 
    lon:msg.lon,
//  ttl: 3600,
//  ttl: "1800",
    icon:"plane",
    iconColor:"blue",
    label:msg.payload.ICAO+" : "+msg.call+" : "+msg.payload.Type+ " : M1BPOS",
    Callsign: msg.call,
    ADSBEx:'<a href="'+msg.payload.ADSBEx+'" target="_blank">ADSBEx</a>'
}

Do note that I have three layers, Mil ADSB, Mil ADSC and Mil ACARS, I have a suspicion that the layers are interacting with each other. The ADSB and ADSC get updated every 2 minutes the ACARS aircraft are only plotted when a message comes in. (minutes to hours).

  1. Detail on click. I have a nice popup when the aircraft is clicked on:

But these two (randomly each time an aircraft shows up) are the only two that show the detail in all the aircraft on the map. None of the others will show their details, but have the exact same msg.payload code.

In this example, again, only the top one shows up.

The green and blue are on different layers, so my point is that it does not seem to be layer specific as to what aircraft I can click on and see the detail or not.

The thing of note is that I only need the 'on click' to work because I cant not get the URL to work on the label to the right of the aircraft. I can put the URL in the label, it shows as a blue link, but nothing happens when you click it. So if that could work, I would not need to fix the random non-popup details box (but it sure is nice).

I'm running Node version 18.15.0, Node-RED version 3.0.2 and worldmap version 2.37.2

Thanks for taking a looking and offering any suggestions.

Will be travelling tomorrow (Mon) but can you raise an issue against the node together with full example msg you use to create the problem(s). Thanks

1 Like

I tried testing my example flow that I was going to send to @dceejay on another system and it works perfect.
It uses the same version of node, Node-RED and Worldmap.
The install I am having trouble with also only allows the map to be panned once. As soon as you click the mouse and go to pan/drag the map again, it is locked.
Also the ruler on the problem install is messed up.

I tried to measure the distance between the two aircraft and it started at some random offset.
(Ruler works as expected on the other test system).

The problem install is actually a new Windows 10 clean install, but running the flows from another build.

Point is, there seems to be some other issue at play here it would seem that has been hanging around for the past ~5 years over all my different installs of this flow. (Yes, I have had these Worldmap quirks for at least this long).

Did you view the world maps on the same browser?

Are both problems "fixed" on the test flow ?

Yes.
Both issues are gone on the test system.

I just now removed the worldmap node, deployed. Removed worldmap via manage pallet. Stop/start node-RED. Installed worldmap via mamange pallet, added it to the flow and deployed. The exact same issues showed up straight away again.
Seems there is some sort of problem that has been around for the past 5 years and moved between 2 computers.... I am going to stop chasing it for now and move to testing it on Flow Forge on another computer.

Thanks for your time, sorry for the noise.

1 Like

I tested both with the same browser and different browsers.
(Node-RED was running on two different Windows PCs).
I was trying to confirm it was not a browser issue.
I tested Firefox, Chrome and Edge on both PCs.
The issue is related to the Node-RED install on one Windows PC only.

@dceejay Confirming that I am seeing the same issue with Flow Forge 1.7 and worldmap 2.37.2
Aircraft not showing popup data, not respecting ttl, zoom and pan locked after a few moves.

I will try and reduce my flow and put a ticket in on GitHub.
There is some 'trigger' that I am trying to track down that causes the issue which is why I thought it was working yesterday, the trigger point had not been crossed.
Now that I test each of the three Node-RED and one Flow Forge install all are showing the bug.

Found it!
For those following along and like me are questioning my sanity, here is what was happening over the past 5 years....

I am using the worldmap node to plot the position of aircraft live.
I get the aircraft lat/lon data from a few sources, but this problem came from using any two sources. Satcom (geostationary satellite) and HFDL (High Frequency datallink radio).
I have had a worldmap layer for each aircraft data source.
Just now I have discovered, if a single aircraft (same msg.name) changes layer, the map will stop panning, stop honoring the ttl and stop popping up the details when clicked some aircraft.

So yesterday when the issue was not showing, there was not any aircraft flying that were using more than one data type to report its position.
Today, when testing Flow Forge, I happen to have a China Airlines that was using both sources and thus caused the issue.

The issue has been hard to track down since I have around 400 to 600 aircraft on the map depending on what layers are selected.
Also the map updated and plotted positions Ok while in the fault condition, it was just if you tried to pan the map with the mouse or click on a few aircraft layers did you notice the unwanted behavour.

tldr. If an object with the same name changes layers, the map 'locks up'.

The solution is to append the data source name to the aircraft name.
If the object (aircraft) changes layer, its a different name and the map does not lock up.

Thanks for following.... So glad to finally have this issue behind me.

so can you show me an example message for each ?
yes the name is unique across the map... so if you change layers it "should" disappear from one layer and appear on the other - or indeed you would need to do something like you have - or pick a "master" layer and plot them both on there (so the latest update "wins").
Or I'm open to other suggestions !

Here is a simple flow that will trigger the issue....

image

Click the top inject and note the black aircraft north of Japan.
Note you can pan around as much as you like. You can also click the aircraft and see the pop up.
Click the bottom inject. I offset the cords a little so you can see it move a little and change color to green.
Note you can pan the map once. And never again. You can not click and see its pop up.

[
    {
        "id": "1991f16f2df81953",
        "type": "inject",
        "z": "69c82457bebf1ba8",
        "name": "899160 black layer",
        "props": [
            {
                "p": "payload"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "{\"layer\":\"Mil HFDL(black)\",\"name\":\"899160\",\"lat\":56.320724,\"lon\":177.02837,\"speed\":484,\"bearing\":246,\"icon\":\"fa-plane\",\"iconColor\":\"black\",\"label\":\"899160 : A359\",\"Type\":\"Airbus A350 941\",\"Op\":\"China Airlines\",\"ADSBEx\":\"<a href=\\\"https://globe.adsbexchange.com/?icao=899160\\\" target=\\\"_blank\\\">ADSBEx</a>\"}",
        "payloadType": "json",
        "x": 390,
        "y": 820,
        "wires": [
            [
                "81706e9c58e6fb54"
            ]
        ]
    },
    {
        "id": "39544c7ee806e2db",
        "type": "inject",
        "z": "69c82457bebf1ba8",
        "name": "899160 green layer",
        "props": [
            {
                "p": "payload"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "{\"layer\":\"Mil ADSC (green)\",\"name\":\"899160\",\"lat\":57.32072,\"lon\":177.02837,\"speed\":484,\"bearing\":246,\"icon\":\"fa-plane\",\"iconColor\":\"green\",\"label\":\"899160 : A359\",\"Type\":\"Airbus A350 941\",\"Op\":\"China Airlines\",\"ADSBEx\":\"<a href=\\\"https://globe.adsbexchange.com/?icao=899160\\\" target=\\\"_blank\\\">ADSBEx</a>\"}",
        "payloadType": "json",
        "x": 390,
        "y": 900,
        "wires": [
            [
                "81706e9c58e6fb54"
            ]
        ]
    },
    {
        "id": "81706e9c58e6fb54",
        "type": "worldmap",
        "z": "69c82457bebf1ba8",
        "name": "",
        "lat": "20",
        "lon": "20",
        "zoom": "3",
        "layer": "EsriDG",
        "cluster": "0",
        "maxage": "1800",
        "usermenu": "show",
        "layers": "show",
        "panit": "false",
        "panlock": "false",
        "zoomlock": "false",
        "hiderightclick": "true",
        "coords": "deg",
        "showgrid": "false",
        "showruler": "true",
        "allowFileDrop": "false",
        "path": "/worldmap",
        "overlist": "DR,CO,RA,DN,HM",
        "maplist": "OSMG,OSMC,EsriC,EsriS,EsriT,EsriDG,UKOS,OpTop",
        "mapname": "",
        "mapurl": "",
        "mapopt": "",
        "mapwms": false,
        "x": 580,
        "y": 860,
        "wires": []
    }
]
1 Like

Ah yes - ok - small fix in 2.37.3 to stop the hang.

2 Likes

Awesome stuff!
Thanks a heap. Will test it out in a few minutes! (Coffee first).

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.