~qeef/damn-project#9: 
Openstreetmap Notes

Hi, it´s possible to support OSM Notes? Maybe lock fixed squares to solve notes ( one or multiple ).

Thanks!

Status
RESOLVED CLOSED
Submitter
risturiz@gusl.org
Assigned to
No-one
Submitted
3 months ago
Updated
a month ago
Labels
No labels applied.

~qeef 3 months ago

Hi. I am sorry but I do not think I understand your question. Could you, please, describe your workflow?

~risturiz 3 months ago

Hi, you are right... Let me try to explain a little better :-)

We actually organize an event like Mapathon but with Notes ( Notathon ). The idea is to solve/close/clean Notes from determined zone ( in this case we use any Country and organize virtual meet ). With small number of contributors solving Notes, the process can be manually organized, BUT when we have a little more of people is hard to know "who is solving what". I think maybe with DAMN we can lock Notes? ( actually don't know if this can be supported ); not an square but a point? or maybe an square locked with some Notes so other people can take another square/task without solving the same Note?

Thanks!

~qeef 3 months ago*

With DAMN you can create area with squares around notes, but you need the list of notes' coordinates, preferably in GeoJSON format. Then, the problem is the same as described in https://www.openstreetmap.org/user/qeef/diary/397633 because POINT is understand as well as LINESTRING. (I have found I had old version of the psql function, but it is fixed now.)

So, you need to use Map Notes API that returns GeoJSON and save that file, e.g.:

wget https://api.openstreetmap.org/api/0.6/notes.json?bbox=-0.65094,51.312159,0.374908,51.669148

You MUST add "name":"something" to the FeatureCollection in the GeoJSON file, i.e., edit the downloaded file in such a way it starts with:

{"name":"foo","type":"FeatureCollection","features":[ ...

Then, just create new area in https://manager.damn-project.org/ with the edited file as "GeoJSON boundary file". You can see "notes testing" area at https://client.damn-project.org/?mappy=2379

I can imagine there will be problems for notes that are too close. That can be solved by a script that removes "too close note's coordinate" when the note is too close to the other. (Note for the script creator: too close is 0.002 because of https://git.sr.ht/~qeef/damn-deploy/tree/master/item/damndb/76_square_from_already_divided.sql )

Let me know if it works for you.

~angoca 3 months ago

Hi, As Rafael said, we are looking for a way to automate working in areas to resolve notes. The current problem is that we cannot divide easily the notes across the team members, and then there are collisions when 2 members work/resolve the same note. The only solution we have found is by date or number, which is not very useful for a contributor. One person prefers to work on a few notes of the same area and then move to the adjacent one.

We have been trying to arrive at a solution, but currently is too manual: we need to extract the notes from the planet, then take the position of each one, then process the file in QGIS, divide the notes into areas, then export to geojson, and voilà, we have the areas with several notes. We would like something like we give the points and then damn divides them into areas with a similar quantity of notes (points) in each area. Something like the k nearest neighbors.

In this way, during notathons, people can choose an area to work where there are open notes, solves them, close the area and continue to the next one. In this way, we ensure there is at least one note in that area (in grill mode, there are a lot of squares without notes). Also, similar notes are closet by the same person (same block, city, region). And contributors do not collide because everyone should only work in the selected area.

~qeef 3 months ago

So the last problem was the automation of the steps you know works, right? Please, follow these steps to test new script:

git clone https://git.sr.ht/~qeef/damn-client.py
cd damn-client.py
pip install -r requirements.txt
./get_notes_from_osm.py -0.65094,51.312159,0.374908,51.669148 > tnotes.json

Then, create new area in https://manager.damn-project.org/ with tnotes.json as GeoJSON boundary file.

The resulting area is https://mappy.damn-project.org/?mappy=2386 and the script to generate tnotes.json tooks 30 seconds on my computer. Can you, please, test it works for you?

~risturiz 3 months ago

Hi, initial test work :-) ... Any reason the background map image don't work on this? ... Now i have to do the resolve workflow with Josm... Thanks a lot!

~qeef 3 months ago

Good. The background image should be available within 30 minutes. It failed due to "too many requests", so I re-run it manually. If this happens let me know, I will fix it.

I have updated script to avoid overlapping squares (like 10 and 11 of the area 2391). Hope it will work better now.

For JOSM-based workflow, I would recommend damn plugin for JOSM. Would it help if I extend the damn plugin for JOSM by automatically downloading notes? It should be possible, in my opinion.

~risturiz 3 months ago

Hey the plugin IS the game changer for me, so i don't need to interact with browser at all... Auto downloading notes for working square definitely help... I now see the map thanks!... Btw any planned option to change the colors of square? like some css before upload json file? ( solid red = blocked / solid geen = free to map ), people that use mappy client i think would have some problems to find the spot with semi-transparent in this case because small dot and others forms ( only an idea )... Thanks again for your great work! We are going to use this on next Notathon for sure :-)

~qeef 3 months ago

That is exactly the purpose of the plugin. However, please note that the user interface of the damn plugin for JOSM is far from being optimal.

To download notes automatically, upgrade to version 0.6.0. Then, in "Advanced Preferences" find "damn", and set the value of the "damn.download_notes_automatically" to true.

Btw any planned option to change the colors of square?

No. I have enough problems writing JavaScript and thinking about placement of components. Introducing colors is too much for me. For the purpose of clarity, it is possible to switch between "no background" and "osm backrgound". Also, "how to mappy" explains how to zoom the map. I am still hoping for someone to step in and write nicer client, though.

We are going to use this on next Notathon for sure :-)

Great! Please, let me know how it worked. I am happy to help optimize your workflow if you find something I can improve. The best way is to write (plaintext) email to the general discussion mailing list. Happy mapping!

~qeef REPORTED CLOSED a month ago

Register here or Log in to comment, or comment via email.