Hide AWS toolbar button(s) with Elastic/VHD Mounted AppBlock (not Embedded)?

0

Is there a way to selectively show/hide any of the AWS AppStream 2.0 buttons? I want to remove the App Launch (Classic Toolbar)/Catalog (New Toolbar) from the AppStream 2.0 toolbar:

Classic Toolbar/Portal

New Toolbar/Portal

I am delivering a streaming instance to an application via the AWS API Gateway (CreateStreamingURL) and sending the ApplicationId as a parameter. This has the effect of loading the specific application, which is what I want; however, based on my use case, there is no need to view any other applications.

Why are other applications shown? Let me explain. We have 1 App Block and 3 applications associated with this app block. Each application loads the same singular *.exe application in my mounted virtual hard disk, but with three different command line switches - which is how I enable features in my software application.

My application has been coded not to allow more than one instance at a time, so it's not that users can skirt my license/feature level, it's that they can see the other Applications and I don't want them to.

I am not deliverying DaaS, only a singular SaaS, and therefore, do not need any other apps besides my own custom app.

The easiest solution, if possible, is to hide the buttons that give streaming users access to the App Drawer/Catalog.

You can programmatically (JS) show/hide buttons on the toolbar if you embed in an iFrame, but I don't want to do that for many reasons (namely, AWS sends horizontal and vertical scroll bars in the iFrame and it makes for a terrible experience that's only overcome by going full screen...too much to tell users to do upon launch). With an embedded Appstream 2.0 Streaming Session, you can pass a "userInterfaceConfig" string when initializing AppStream.Embed interface object, like this: userInterfaceConfig:{[AppStream.Embed.Options.HIDDEN_ELEMENTS]:[AppStream.Embed.Elements.CATALOG_BUTTON]}

and it works exactly as expected, when my application loads, the Catalog/App Launch button is not shown.

Can I do this with an Elastic Fleet? I see several possible places where I might be able to provide a script to do this:

App Block -Post setup script ARN -Post setup script executable -Post setup script executable arguments Fleet -Session script location

I have read this page: https://docs.aws.amazon.com/appstream2/latest/developerguide/use-session-scripts.html, but being only a novice coder, I do not understand whether or not AWS provides us any access to customize the experience of their toolbar. I see I can add scripts in a few location, but it's unclear to me whether I can make a Javascript file with something like userInterfaceConfig:{[AppStream.Embed.Options.HIDDEN_ELEMENTS]:[AppStream.Embed.Elements.CATALOG_BUTTON]} (but not for embedded cases). Then there's mention of requiring a JSON file and using WIndows PowerShell. I guess I don't know if what I want to do is possible, and if so, how to do it.

Thank you so much for any help or insight!

asked 9 months ago58 views
No Answers

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions