Guest Login, Permissions and Kiosk Dashboards
-
@mihairosu
I've tracked down the bug, can you please test the fix. Replace your app.js file with this one -
https://raw.githubusercontent.com/infiniteautomation/ma-dashboards/0906b657b8eded627e3ca77af69daaa223f26a76/Custom Dashboards/web/mdAdmin/app.jsOur schedule does not allow us to release a bug fix to the store right now, sorry.
-
Hey Jared,
The fix you made won't allow me to open the dashboards module. It seems to be stuck at the gear loading icon. I restored the original apps.js and now it loads ok again.
-
What version of the dashboards module do you have installed? The fix is for 3.2.2, ensure you are on this then apply the fix.
-
3.2.2
-
Can you open the developer console and tell me if there are errors in the console? What page are you trying to go to?
I have double checked the fix and can't find a problem with it.
-
I restarted the mango instance after copying over your new file, do you think I need to restart the whole computer? Could that have something to do with it?
Also there were no errors when I checked it last. I can try it again at some point today.
-
Just to be clear, I am editing the file in the following location?
/opt/mango/web/modules/dashboards/web/mdAdmin
-
Yes that's the right file, you should not have to restart your computer or even Mango. As long as you clear or disable your cache (on the network tab of Chrome's developer console for example) the new file will be loaded when you refresh the page.
Joel mentioned that we might have access to your server so we might be able to log in and take a look at what is happening. Perhaps give us a call.
-
Ah, you know what, I don't think I cleared my cache. That might have done it. Give me a little bit and I'll get to it again.
-
Jared, sorry for giving misleading information last time. Your fix worked.
Thank you.
-
Great, good to hear
-
@mihairosu did you ever find a solution to displaying a dashboard page on a raspberry pi via launching it in kiosk mode? I've noticed that the pi requires chrome to launch in incognito mode to clear the cache (so the session restore functionality is disabled), but as @JoelHaggar said, auto login requires the browser to store login info.
-
@henryblu Yep, we are using FullPageOS and a link to the screen. You will have to manually login once with the pi, and it appears to remember it anyway.
I was never able to get any sort of automatic login to work, or no-login required kiosk screens to work. If that's not already existing, I really hope they have it on their radar still. I know there were instructions for how to do some of this, but it didn't work for me.
Software like PRTG, or Grafana make it really easy to do it. I wish Mango's was just as easy or easier.
-
Automatic login is a function that has been available for quite some time. What specifically are you having issues with.
You simply go to Administration > Auto Login and enter the user credentials and yes it will be stored in the browser cache. Does this not work with the version of Chrome you are running on the Pi?
-
Ah I think there is a misunderstanding. What we are really looking for is a public view with no credentials, or credentials passed by the url perhaps.
We don't want to have to hook up keyboard/mouse or VNC into each kiosk screen to enable an auto login, which we first need to login as admin anyway to set up.
-
That's it @mihairosu . The reason I am after this solution is because enabling the cache for auto-login causes this pop-up every time the pi boots when the dashboard turns on in the morning, quite similar to this post - https://community.risevision.com/rise_vision_inc/topics/chrome-restore-pop-up-after-crash
Most solutions suggest to launch chrome/chromium in incognito mode to clear the cache. There are a few other old techniques out there which I have tried to remove the pop-up but none seem to work besides going incognito.
That's my motivation for wanting a webpage with either no login required or auto login stored in the URL.
-
I never tried to use Risevision for this purpose.
FullpageOS seems to work though, so give that a try if you'd like.
-
I think what you are after is the auto login code that you can put into your dashboard. There is an example under: /ui/examples/templates/auto-login
You basically program a username and password into your page so any time it loads the page does the login automatically. This is different than the auto login feature in the web app. Let me know if that helps.
[edit - Jared] This will only work for a full custom dashboard, you cant use this if you are using Custom Pages / Dashboard Designer.
-
I wonder how you're launching the browser. I would expect that if launching it from a shell with a specific URL it would not question your intentions, but I don't know.
Edit: I tried it. No luck, still offered to restore.
-
Sorry I'm a little unsure about pasting the Auto login code into a dashboard page. Say for instance my username is test and the password is testtest. I would edit the auto-login code to look like this?
<!DOCTYPE html> <!-- You need to include ma-app here so ma-username and ma-password are picked up --> <html lang="en" ma-app ma-username="test" ma-password="testtest"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <title>Angular Material Template</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="/modules/mangoUI/web/vendor/angular/angular-csp.css"></link> <link rel="stylesheet" href="/modules/mangoUI/web/vendor/angular-material/angular-material.css"> <link rel="stylesheet" href="/modules/mangoUI/web/vendor/material-design-icons/iconfont/material-icons.css"> <link rel="stylesheet" href="/modules/mangoUI/web/vendor/mdPickers/mdPickers.css"> </head> <body layout="column"> <div ng-if="appLoading"> <span>App is loading..</span> </div> <div ng-cloak layout="column" flex> <!-- Your content here --> </div> <script src="/modules/mangoUI/web/vendor/requirejs/require.js"></script> <script src="/modules/mangoUI/web/loaderConfig.js"></script> <script>require(['ngMango/bootstrap']);</script> </body> </html>
Which part of the code do I then paste into a dashboard page? Thanks.