Making maps only public

Hello everyone,

I want to make just the maps public so that anyone who visits publicly can see the map and choose from a list of available realms?

Scenario : Residents that live in florida will be able to go to florida.mappoint.com and see different assets on the map when they choose the realm. They will not be able to click to see the asset detail page. They will only be able to click to see the default tooltip of each asset that is available on the map.

For the public view, there will not be links to “Insights”, “Assets”, etc. ----- only Map.
They will be able to see the default “Realms” dropdown in the main navigation.

Don’t think this is possible within the manager, since users automatically have access to the asset page if they have the read:assets permission. So I think you need to modify / override the code for your project to make this work.

You can look into the manager_config.json configuration file,
which allows you to configure how pages look, what functionality is shown in the UI, etc.
Check it here;

.
Double checking with @Pierre and @Don here, if they have any advice.

As Martin mentioned you can visually hide the navigation (within appearance), but you would need read:assets to see assets on the map, and also the modal will add the link to the asset page. So will not work out of the box.

can we simply use the OR API to get all of the assets/map from openremote master manager and display in single page public map?

With this solution, would they still need to login first?

can we simply use the OR API to get all of the assets/map from openremote master manager and display in single page public map?

Yes you can. For example, our HTTP API has endpoints to query asset data. (including location)
Documentation can be found on /swagger/ as mentioned on the wiki here.

The map tiles file we use is already public access, so no need to worry about that.
.

With this solution, would they still need to login first?

Uhm actually… I forgot about something.

You can make an asset “Public read” and add the “Access public read” configuration item to the attributes you want to expose. At that point those attributes are publically available, and don’t need any authentication to access. This would be useful for a public map for instance.

okay thanks , but if that was the case then still not clear why you suggested custom code?

The navigation panel will still lead you to the assets page. You could make a dashboard on insights with only a map and public assets/attributes (note the config item @martin.peeters referred to). You can make that dashboard public and share that. Does that fit your goal?

This sort of task is best solved with a custom app that can be put together using the existing components so effort is minimal but knowledge of npm, html, typescript etc. is needed.

You can see the custom-project repo that has an example custom app that reuses components including the map page.

Note: the manager is an admin tool for managing your instance.

Here’s an app that has a custom public map:

https://beatrix.openremote.app/beatrixkanaal/