meshmap issueshttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues2023-01-09T00:10:01Zhttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/25Feature request: KML or GeoJSON support2023-01-09T00:10:01ZJen HertingFeature request: KML or GeoJSON support2 reasons/use cases:
1. We have multiple meshmap servers on our mesh and keeping the non-mesh markers synced between the servers has become somewhat of a bear. Currently, I've broken out the import CSV script so that it can be called vi...2 reasons/use cases:
1. We have multiple meshmap servers on our mesh and keeping the non-mesh markers synced between the servers has become somewhat of a bear. Currently, I've broken out the import CSV script so that it can be called via command line, pushing out a CSV via ansible, and importing the CSV using that script. I'd much prefer to have a bunch of static files (KML or GeoJSON), hosted on a server (obviously could be the same as the meshmap server), and let the client's web browser pull the marker locations in from there.
2. This also allows for some amount of dynamic non-mesh markers: unit tracking via APRS, dynamic descriptions for markers that have weather stations, etc.
Stretch goal: supporting polygons for things like NWS Alerts.https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/24Feature request - Hide connection lines between nodes that are filtered out2021-08-20T02:09:46ZBill KreutingerFeature request - Hide connection lines between nodes that are filtered outHiding connection lines between nodes that are filtered out can help show which frequency bands are most depended on in different regions. I thought of this while drafting an email to my congressman's office asking for them to intervene ...Hiding connection lines between nodes that are filtered out can help show which frequency bands are most depended on in different regions. I thought of this while drafting an email to my congressman's office asking for them to intervene for us on the FCC's recent rules change on the 5GHz bandEric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/23Spiderify - Link lines not "adapting" to zoom2021-06-05T04:25:16ZVA2XJM Jean-MichelSpiderify - Link lines not "adapting" to zoomJust updated to last version ("git pull") to add spiderify feature.
Map is initialy loading properly at zoom level 8, seeing nodes and link lines properly connecting them. When zooming in or out, the link lines going offset until the sp...Just updated to last version ("git pull") to add spiderify feature.
Map is initialy loading properly at zoom level 8, seeing nodes and link lines properly connecting them. When zooming in or out, the link lines going offset until the spiderify activate. Tested with Firefox (main browser) & Chrome (Secondary browser).
Initial loading:
![image](/uploads/4bd190fd2733182f20a84f82e7dc9546/image.png)
Zoom +1:
![image](/uploads/3fca9507778a6149289522e9d2fa79c9/image.png)
Spiderify Activated:
![image](/uploads/48e41af0e15fbeb8dce04769f326143d/image.png)
Errors found in Firefox Console (only showing up until spiderify is activated):
![image](/uploads/03500d01d577cb637d3762e15d018c4b/image.png)
![image](/uploads/015320a38849230b6d8d890a1ac44e9d/image.png)
Map is accessible at https://rta.ve2atu.org/meshmaphttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/22php error then exits2020-09-13T01:03:23Zandrewphp error then exitswhen running get-map-info.php from the command line i get the following error:
PHP Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /opt/meshmap/scripts/checkDB.inc on line 8
after that it immediate...when running get-map-info.php from the command line i get the following error:
PHP Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /opt/meshmap/scripts/checkDB.inc on line 8
after that it immediately exits and gives no further output and no updates to the db.
i have the correct credentials in the user-settings.ini and the user has the correct permissions for the db.
this is on a ubuntu 18.04 server with php7.2 all necessary dependencies are also installed. I couldn't find a log with anything meaningful. What are the next steps in figuring this out?https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/21Discussion: Proposing some changes to the 'node_info' table2020-08-01T20:54:58ZScott - KI7ONKDiscussion: Proposing some changes to the 'node_info' tableI started working on an implementation of the network mapper/crawler in Python because I thought `asyncio` would be an easy way to speed up the polling of the network (and I'm much more familiar with Python): [pyMeshMap](https://gitlab.c...I started working on an implementation of the network mapper/crawler in Python because I thought `asyncio` would be an easy way to speed up the polling of the network (and I'm much more familiar with Python): [pyMeshMap](https://gitlab.com/smsearcy/pymeshmap)
Coming it at from the mapping side there are a few changes to the database that I think would make this more efficient (and easier to write). Granted, I've only dug into the mapping side so I don't know the repercussions to the rest of the application. It basically comes down to a few changes:
1. Use the *wlan_ip* as the primary key.
2. Replace the *removed_nodes* table with a *node_status* column in *node_info* that is used to track a node's status (for example: "active", "inactive", and "gone").
3. Move manually set locations to another table.
## Mapping Process
For context, here's how I intend the node mapping process:
1. Expire the *hosts_ignore* table based on age of entries.
2. Get a collection of IPs to ignore (preferably a hashed collection for fast lookups, I'm using Python's `set` collection).
3. Run the poller, providing it a "starting" node for OLSR and the IPs to ignore and getting back data for all the nodes it could poll and any errors.
4. Loop through the nodes, adding/updating the database.
5. Add ignore entries for any errors
6. Run a query to update node statuses based on time since last seen.
## Rationale
I suggest the primary key change because the IP address needs to be unique on the network so it would be a natural primary key. Furthermore, it's how the nodes are referenced when looking up the location information to build the topology information, so having it as a key value should be a performance increase in larger networks (although that depends on specific database implementations). Another benefit is that would eliminate the need for additional/separate queries to handle the majority of node renames (the exception being if someone changed the IP address as well, so the question is how important that edge case is).
Consolidating the node tables would mean that there was no longer a need to check if a node had been deleted and then deleting the row from the one table and adding it to the other one. A single update with the current timestamp and an "active" status would return a node to active status. It would require updating queries that select the nodes to display so that non-active nodes are excluded. I haven't looked into how many places that would be.
Similarly, moving manually set locations to a separate table would eliminate another "check" in the import process, although it would complicate the location lookup, both for updating topology and placing on the map. Thus the more I think about this one I'm less sold on it. It would have the advantage of always having the node's location in *node_info* so that if someone did enter the location we'd be able to see that value.
While the goal of several of these is to reduce database calls, I'm not sure the actual performance impact of all of them, so I was also considering the simplicity of the code. And some of that is impacted by the tools I'm using in Python. For instance, the SQLAlchemy ORM has a convenient method to handle the INSERT/UPDATE by just calling `dbsession.merge(new_model)`.https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/20Capture errors2020-07-03T05:00:19ZEric - kg6wxcCapture errorsNeed to capture errors from the polling scripts (and maybe other php files) and display them on the admin interface at the least.
Yet another reason for some kind of notifications or alerts.
Someone needs to do a re-write! :confounded:Need to capture errors from the polling scripts (and maybe other php files) and display them on the admin interface at the least.
Yet another reason for some kind of notifications or alerts.
Someone needs to do a re-write! :confounded:https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/19Feature Request: Node Clustering2020-11-02T06:17:32ZVA2XJM Jean-MichelFeature Request: Node ClusteringHi KG6WXC,
Meshmap is awesome! The only little problem I found is that multiple node at same site or nearby are PITA.
I suggest something like aprsdirect.com do when multiple APRS station are nearby.
Thanks you for the work you do, it...Hi KG6WXC,
Meshmap is awesome! The only little problem I found is that multiple node at same site or nearby are PITA.
I suggest something like aprsdirect.com do when multiple APRS station are nearby.
Thanks you for the work you do, it is really impressive.Eric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/18drop nodes not heard from in X amount of time2020-06-23T06:45:17ZEric - kg6wxcdrop nodes not heard from in X amount of timeadd ability to drop old nodes that have not been heard from.add ability to drop old nodes that have not been heard from.Eric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/17fix typo in readme2020-06-18T19:54:47ZEric - kg6wxcfix typo in readme/home/pi/cronscript.sh
should be /home/pi/meshmap/cronscript.sh/home/pi/cronscript.sh
should be /home/pi/meshmap/cronscript.shEric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/16Make a button on the map to get to node_report page2020-06-23T00:50:07Zke6bxtMake a button on the map to get to node_report pageEric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/15Some kind of notification when a new node shows up2021-08-18T05:49:54ZEric - kg6wxcSome kind of notification when a new node shows uphttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/14PHP Warning2020-05-01T02:07:07Zmathison KJ6DZBPHP WarningWeb page works the script only runs once and then this php warning...?
w6bb@W6BB-IO1:~/meshmap/scripts$ ./get-map-info.php
PHP Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/w6bb/meshmap/scri...Web page works the script only runs once and then this php warning...?
w6bb@W6BB-IO1:~/meshmap/scripts$ ./get-map-info.php
PHP Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/w6bb/meshmap/scripts/checkDB.inc on line 8https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/13Terrain background?2020-06-27T19:27:43ZOrv BeachTerrain background?Would be handy to be able to switch the background from current map to terrain and back again.Would be handy to be able to switch the background from current map to terrain and back again.https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/12Map Layers2020-05-02T05:29:25ZEric - kg6wxcMap Layers> Originally from Dale @n7qjk
> (I moved it here Dale)
Interested in having the option to trigger the map layer for "check (firmware) versions" so mesh users can see who is not up to date on there firmware. Is this possible?> Originally from Dale @n7qjk
> (I moved it here Dale)
Interested in having the option to trigger the map layer for "check (firmware) versions" so mesh users can see who is not up to date on there firmware. Is this possible?https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/11Search for and zoom to a station2020-06-19T01:37:59ZEric - kg6wxcSearch for and zoom to a stationA way to search for a node or callsign and at zoom down to that node.A way to search for a node or callsign and at zoom down to that node.Eric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/10bugfix: Remove requirement for mysqlnd module2021-08-18T05:40:59ZEric - kg6wxcbugfix: Remove requirement for mysqlnd moduleGit rid of the last few calls that use mysqlnd and do it properly...Git rid of the last few calls that use mysqlnd and do it properly...Eric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/9Bugfix: Map Page Scaling2019-07-26T01:31:50ZEric - kg6wxcBugfix: Map Page ScalingThe map webpage needs work to make it scale to browser windows better...The map webpage needs work to make it scale to browser windows better...Eric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/8Discussion: LAN IP Addresses2021-08-18T15:32:10ZEric - kg6wxcDiscussion: LAN IP AddressesDo we really need to find and capture the nodes LAN IP address?
Why?Do we really need to find and capture the nodes LAN IP address?
Why?https://gitlab.kg6wxc.net/mesh/meshmap/-/issues/7"Import from" or "Export to" CSV file Non-Mesh Markers2020-06-21T03:09:15ZEric - kg6wxc"Import from" or "Export to" CSV file Non-Mesh Markers> (Original Issue #18 open by Luc Belisle @va2rlm)
The ability to “import from” or “export to” CSV file, the Non-Mesh Markers, could facilitate the management of the markers when bulk adding or updating is desired.> (Original Issue #18 open by Luc Belisle @va2rlm)
The ability to “import from” or “export to” CSV file, the Non-Mesh Markers, could facilitate the management of the markers when bulk adding or updating is desired.Eric - kg6wxcEric - kg6wxchttps://gitlab.kg6wxc.net/mesh/meshmap/-/issues/6Change in Icon title2019-07-24T23:33:53ZEric - kg6wxcChange in Icon title> (Originally Issue #17 opened by Orv Beach @w6bi)
Recommend changing the title of grey icons on the mesh map from "Unknown" to "Other".
The json file has plenty of information on what they are and it shows in the pop-up; they're j...> (Originally Issue #17 opened by Orv Beach @w6bi)
Recommend changing the title of grey icons on the mesh map from "Unknown" to "Other".
The json file has plenty of information on what they are and it shows in the pop-up; they're just not nodes with RF. Hence "Other" is more appropriate.Eric - kg6wxcEric - kg6wxc